lsc 2 年之前
父节点
当前提交
bd39a0b810

+ 1 - 1
dist/index.html

@@ -25,7 +25,7 @@
       height: 100%;
       width: 100%;
       background: #e6eaf0;
-    }</style><link href=./static/css/app.a99661476c6d8a2c87d1f1e32a9eec05.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.3512a67a6213c2df4180.js></script><script type=text/javascript src=./static/js/vendor.f1661c5ebfd33221b88f.js></script><script type=text/javascript src=./static/js/app.3152988421af71c36e1a.js></script></body></html><script>function stopSafari() {
+    }</style><link href=./static/css/app.710ca6f28c9219a94bf7e01bbfcc32ac.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.3512a67a6213c2df4180.js></script><script type=text/javascript src=./static/js/vendor.f1661c5ebfd33221b88f.js></script><script type=text/javascript src=./static/js/app.e99f201a95f8ac9e4d8f.js></script></body></html><script>function stopSafari() {
     //阻止safari浏览器双击放大功能
     let lastTouchEnd = 0  //更新手指弹起的时间
     document.documentElement.addEventListener("touchstart", function (event) {

文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/app.710ca6f28c9219a94bf7e01bbfcc32ac.css


文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/app.710ca6f28c9219a94bf7e01bbfcc32ac.css.map


文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/app.a99661476c6d8a2c87d1f1e32a9eec05.css


文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/app.a99661476c6d8a2c87d1f1e32a9eec05.css.map


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/app.3152988421af71c36e1a.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/app.e99f201a95f8ac9e4d8f.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/app.e99f201a95f8ac9e4d8f.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/manifest.3512a67a6213c2df4180.js.map


+ 180 - 191
src/components/pages/course.vue

@@ -3,54 +3,63 @@
     <div class="pb_head top">
       <div>
         <span class="sub_head">课程管理</span>
-        <span
-          class="subClick"
-          @click="
-            goTo('/works?userid=' + userid + '&oid=' + oid + '&org=' + org+ '&role=' + role)
-          "
-          >评价管理</span
-        >
+        <span class="subClick" @click="
+          goTo('/works?userid=' + userid + '&oid=' + oid + '&org=' + org + '&role=' + role)
+          ">评价管理</span>
       </div>
       <div class="student_button">
         <!-- <el-button type="primary" class="bgColor" @click="openCourse">协同编辑</el-button> -->
-        <el-button type="primary" class="bgColor" @click="goToCourse()"
-          >添加课程</el-button
-        >
+        <el-button type="primary" class="bgColor" @click="goToCourse()">添加课程</el-button>
       </div>
     </div>
     <div class="reBox">
-        <div class="reTop">
-          <div>分类筛选</div>
-          <div>
-            <!-- @click="getCourse" -->
-            <div class="search" >
-              <img src="../../assets/icon/search.png" alt="" />
-            </div>
-            <input class="sInput" type="text" placeholder="请输入关键字" v-model="courseName" @input="getCourse()" />
+      <div class="reTop">
+        <div>分类筛选</div>
+        <div>
+          <!-- @click="getCourse" -->
+          <div class="search">
+            <img src="../../assets/icon/search.png" alt="" />
           </div>
+          <input class="sInput" type="text" placeholder="请输入关键字" v-model="courseName" @input="getCourse()" />
         </div>
-        <div class="choose">
-          <div class="all_choose" v-for="(item, index) in CourseType[0]" :key="index"
-            :style="{ margin: !CourseTypeJson[item.id].length && 0 }">
-            <span v-if="CourseTypeJson[item.id].length">{{ item.name }}:</span>
-            <div class="typeCss" v-if="CourseTypeJson[item.id].length">
-              <div class="cName" @click="getCourse2(item.name, '', item.id, 1)"
-                :class="typeE.indexOf(item.id) != -1 ? 'isCType' : ''">
-                全部
-              </div>
-              <div v-for="(item1, index1) in CourseTypeJson[item.id]" :key="index + '-' + index1" :label="item1.id"
-                @click="getCourse2(item.name, item.id, item1.id, 2)">
-                <div class="cName" :class="
-                  typea == item1.id || typeb == item1.id || typed == item1.id
-                    ? 'isCType'
-                    : ''
+      </div>
+      <div class="pType_box all_choose"  v-if="oid == '69893dca-1d47-11ed-8c78-005056b86db5'">
+        <span>类型</span>
+        <el-radio-group @change="CourseType2Change" v-model="pTypeCheckName" style="display: flex; align-items: center">
+          <div class="all_choose" style="width: 100px" v-for="(item, index) in CourseType2" :key="index">
+            <el-radio :label="item.name">{{
+              item.name
+            }}</el-radio>
+          </div>
+        </el-radio-group>
+      </div>
+      <div class="choose">
+        <div class="all_choose" v-for="(item, index) in CourseType[0]" :key="index"
+          :style="{ margin: !CourseTypeJson[item.id].length && 0 }">
+          <span v-if="CourseTypeJson[item.id].length  &&
+                                (oid == '69893dca-1d47-11ed-8c78-005056b86db5'
+                                  ? pTypeCheck.indexOf(item.id) != -1
+                                  : true)">{{ item.name }}:</span>
+          <div class="typeCss" v-if="CourseTypeJson[item.id].length &&
+                                (oid == '69893dca-1d47-11ed-8c78-005056b86db5'
+                                  ? pTypeCheck.indexOf(item.id) != -1
+                                  : true)">
+            <div class="cName" @click="getCourse2(item.name, '', item.id, 1)"
+              :class="typeE.indexOf(item.id) != -1 ? 'isCType' : ''">
+              全部
+            </div>
+            <div v-for="(item1, index1) in CourseTypeJson[item.id]" :key="index + '-' + index1" :label="item1.id"
+              @click="getCourse2(item.name, item.id, item1.id, 2)">
+              <div class="cName" :class="typea == item1.id || typeb == item1.id || typed == item1.id
+                  ? 'isCType'
+                  : ''
                 ">
-                  {{ item1.name }}
-                </div>
+                {{ item1.name }}
               </div>
             </div>
           </div>
         </div>
+      </div>
     </div>
     <div class="line"></div>
     <div class="pb_content_body" style="height: 100%">
@@ -63,25 +72,12 @@
               <el-option value="1" label="他人课程"></el-option>
             </el-select>
           </div>
-          <div
-            class="all_choose"
-            v-for="(item, index) in CourseType[0]"
-            :key="index"
-          >
+          <div class="all_choose" v-for="(item, index) in CourseType[0]" :key="index">
             <span v-if="CourseTypeJson[item.id].length">{{ item.name }}</span>
-            <el-select
-              v-if="CourseTypeJson[item.id].length"
-              v-model="courseTypeId[item.id]"
-              placeholder="请选择"
-              @change="getTypeName"
-            >
+            <el-select v-if="CourseTypeJson[item.id].length" v-model="courseTypeId[item.id]" placeholder="请选择"
+              @change="getTypeName">
               <el-option label="全部" value="1">全部</el-option>
-              <el-option
-                v-for="item1 in CourseTypeJson[item.id]"
-                :key="item1.id"
-                :label="item1.name"
-                :value="item1.id"
-              >
+              <el-option v-for="item1 in CourseTypeJson[item.id]" :key="item1.id" :label="item1.name" :value="item1.id">
               </el-option>
             </el-select>
           </div>
@@ -90,14 +86,8 @@
 
         <div class="student_right">
           <div class="head_left">
-            <el-input
-              v-model="courseName"
-              class="student_input"
-              placeholder="请输入课程名称"
-            ></el-input>
-            <el-button class="course_button" @click="searchCourse"
-              >查询</el-button
-            >
+            <el-input v-model="courseName" class="student_input" placeholder="请输入课程名称"></el-input>
+            <el-button class="course_button" @click="searchCourse">查询</el-button>
           </div>
         </div>
       </div>
@@ -114,21 +104,18 @@
             <div class="myCourse" v-if="item.userid == userid">
               我的课程
             </div>
-            <div class="myCourse" style="background:#4187f0" v-else-if="!item.course_teacher || (item.course_teacher && item.course_teacher.indexOf(userid) == -1)">
+            <div class="myCourse" style="background:#4187f0"
+              v-else-if="!item.course_teacher || (item.course_teacher && item.course_teacher.indexOf(userid) == -1)">
               他人课程
             </div>
             <div class="xtCourse" v-else>协同课程</div>
             <div class="tup">
-              <img
-                :src="
-                  item.cover != null && item.cover != ''
-                    ? JSON.parse(item.cover).length > 0
-                      ? JSON.parse(item.cover)[0].url
-                      : mr
+              <img :src="item.cover != null && item.cover != ''
+                  ? JSON.parse(item.cover).length > 0
+                    ? JSON.parse(item.cover)[0].url
                     : mr
-                "
-                alt
-              />
+                  : mr
+                " alt />
             </div>
             <!-- <div class="bottom_box">
               <div>{{ item.title }}</div>
@@ -152,32 +139,27 @@
             <div class="three_bottom">
               <div @click="get(item.courseId)" v-if="role == '1'">预览</div>
               <div @click="jump(item.courseId)" v-else>评课</div>
-              <div v-if="(item.userid == userid || item.course_teacher.indexOf(userid) != -1)" @click="goToCourse(item.courseId)">
+              <div v-if="(item.userid == userid || item.course_teacher.indexOf(userid) != -1)"
+                @click="goToCourse(item.courseId)">
                 修改
               </div>
-              <div
-                v-if="groupA == '0'"
-                @click="
-                  goTo(
-                    '/works?cid=' +
-                      item.courseId +
-                      '&userid=' +
-                      userid +
-                      '&oid=' +
-                      oid +
-                      '&org=' +
-                      org +
-                      '&role=' +
-                      role 
-                  )
-                "
-              >
+              <div v-if="groupA == '0'" @click="
+                goTo(
+                  '/works?cid=' +
+                  item.courseId +
+                  '&userid=' +
+                  userid +
+                  '&oid=' +
+                  oid +
+                  '&org=' +
+                  org +
+                  '&role=' +
+                  role
+                )
+                ">
                 报告
               </div>
-              <div
-                v-if="item.isCourseType == 1 || role == '1'"
-                @click="deleteCourse(item.courseId)"
-              >
+              <div v-if="item.isCourseType == 1 || role == '1'" @click="deleteCourse(item.courseId)">
                 删除
               </div>
               <div class="more">
@@ -196,27 +178,14 @@
       </div>
     </div>
     <div class="student_page">
-      <el-pagination
-        background
-        layout="prev, pager, next"
-        :page-size="pageSize"
-        :total="total"
-        v-if="page && course.length"
-        style="padding-bottom: 20px"
-        @current-change="handleCurrentChange"
-      ></el-pagination>
+      <el-pagination background layout="prev, pager, next" :page-size="pageSize" :total="total"
+        v-if="page && course.length" style="padding-bottom: 20px" @current-change="handleCurrentChange"></el-pagination>
     </div>
     <el-dialog :visible.sync="dialogVisible1" size="tiny">
       <img width="100%" :src="dialogImageUrl" alt />
     </el-dialog>
-    <el-dialog
-      title="查看提问"
-      :visible.sync="dialogVisible"
-      :append-to-body="true"
-      width="750px"
-      :before-close="handleClose"
-      class="dialog_diy"
-    >
+    <el-dialog title="查看提问" :visible.sync="dialogVisible" :append-to-body="true" width="750px" :before-close="handleClose"
+      class="dialog_diy">
       <div>
         <div class="a_addBox">
           <CourseProblem :problemCourse="problemCourse"></CourseProblem>
@@ -226,32 +195,17 @@
         <el-button @click="dialogVisible = false">关 闭</el-button>
       </span>
     </el-dialog>
-    <el-dialog
-      title="查看协同课程"
-      :visible.sync="dialogVisibleCourse"
-      :append-to-body="true"
-      width="850px"
-      :before-close="handleClose"
-      class="dialog_diy"
-    >
+    <el-dialog title="查看协同课程" :visible.sync="dialogVisibleCourse" :append-to-body="true" width="850px"
+      :before-close="handleClose" class="dialog_diy">
       <div class="ct_box">
-        <div
-          class="out_box"
-          v-for="(item, index) in courseTeam"
-          :key="index"
-          style="margin-left: 15px"
-        >
+        <div class="out_box" v-for="(item, index) in courseTeam" :key="index" style="margin-left: 15px">
           <div class="tup">
-            <img
-              :src="
-                item.cover != null && item.cover != ''
-                  ? JSON.parse(item.cover).length > 0
-                    ? JSON.parse(item.cover)[0].url
-                    : mr
+            <img :src="item.cover != null && item.cover != ''
+                ? JSON.parse(item.cover).length > 0
+                  ? JSON.parse(item.cover)[0].url
                   : mr
-              "
-              alt
-            />
+                : mr
+              " alt />
           </div>
           <div class="bottom_box">
             <div>{{ item.title }}</div>
@@ -260,20 +214,18 @@
           </div>
           <div class="three_bottom">
             <div @click="jump(item.courseId)">查看内容</div>
-            <div
-              @click="
-                goTo(
-                  '/course/addCourse?cid=' +
-                    item.courseId +
-                    '&userid=' +
-                    userid +
-                    '&oid=' +
-                    oid +
-                    '&org=' +
-                    org
-                )
-              "
-            >
+            <div @click="
+              goTo(
+                '/course/addCourse?cid=' +
+                item.courseId +
+                '&userid=' +
+                userid +
+                '&oid=' +
+                oid +
+                '&org=' +
+                org
+              )
+              ">
               编辑
             </div>
           </div>
@@ -329,16 +281,19 @@ export default {
       courseName: "",
       mr: require("../../assets/icon/kc1.png"),
       CourseType: [],
+      CourseType2: [],
       CourseTypeJson: {},
       courseTypeId: {},
       courseTypeSon: [],
       isChoose: 0,
       problemCourse: null, //查看提问的课程
       courseTeam: [],
-      typeE:[],
-      typea:"",
-      typeb:"",
-      typed:"",
+      typeE: [],
+      typea: "",
+      typeb: "",
+      typed: "",
+      pTypeCheck:[],
+      pTypeCheckName: [],
     };
   },
   methods: {
@@ -371,30 +326,39 @@ export default {
     goTo(path) {
       this.$router.push(path);
     },
+    CourseType2Change(val) {
+      this.pTypeCheck = [];
+      for (var i = 0; i < this.CourseType2.length; i++) {
+        let typeA = this.CourseType2[i];
+        if (val.indexOf(typeA.name) != -1) {
+          this.pTypeCheck.push(...typeA.id);
+        }
+      }
+    },
     goToCourse(courseId) {
       if (courseId) {
         this.$router.push(
           "/course/addCourse?cid=" +
-            courseId +
-            "&userid=" +
-            this.userid +
-            "&oid=" +
-            this.oid +
-            "&org=" +
-            this.org + 
-            "&role=" +
-            this.role
+          courseId +
+          "&userid=" +
+          this.userid +
+          "&oid=" +
+          this.oid +
+          "&org=" +
+          this.org +
+          "&role=" +
+          this.role
         );
       } else {
         this.$router.push(
           "/course/addCourse?userid=" +
-            this.userid +
-            "&oid=" +
-            this.oid +
-            "&org=" +
-            this.org + 
-            "&role=" +
-            this.role
+          this.userid +
+          "&oid=" +
+          this.oid +
+          "&org=" +
+          this.org +
+          "&role=" +
+          this.role
         );
       }
       // this.$router.push(path);
@@ -446,7 +410,7 @@ export default {
       this.page = val;
       this.getCourse();
     },
-    init() {},
+    init() { },
     handleClose(done) {
       done();
     },
@@ -462,7 +426,7 @@ export default {
     },
     //uuid生成
     guid() {
-      return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(
+      return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (
         c
       ) {
         var r = (Math.random() * 16) | 0,
@@ -654,7 +618,7 @@ export default {
       //     }
       //   }
       // }
-      console.log("typea",this.typea);
+      console.log("typea", this.typea);
       this.isLoading = true;
       let params = {
         type: this.groupA,
@@ -752,6 +716,23 @@ export default {
         .get(this.$store.state.api + "selectAllType", params)
         .then((res) => {
           this.CourseType = res.data;
+          this.CourseType2 = [
+            { name: "智见课程", id: [] },
+            { name: "智行课程", id: [] },
+            { name: "智创课程", id: [] },
+          ];
+
+          for (var cti = 0; cti < res.data[0].length; cti++) {
+            if (
+              res.data[0][cti].name == "年级" ||
+              res.data[0][cti].name == "学科"
+            ) {
+              this.CourseType2[1].id.push(res.data[0][cti].id);
+              this.CourseType2[0].id.push(res.data[0][cti].id);
+            } else if (res.data[0][cti].name == "主题") {
+              this.CourseType2[2].id.push(res.data[0][cti].id);
+            }
+          }
           for (var i = 0; i < res.data[0].length; i++) {
             if (!this.cid) {
               this.courseTypeId[res.data[0][i].id] = [];
@@ -905,9 +886,9 @@ export default {
         .post(this.$store.state.api + "copyCourse", params)
         .then(res => {
           this.page = 1;
-          if(this.role == '1'){
+          if (this.role == '1') {
             this.groupA = '4'
-          }else{
+          } else {
             this.groupA = "0";
           }
           this.clear();
@@ -918,7 +899,7 @@ export default {
     }
   },
   created() {
-    if(this.role == '1'){
+    if (this.role == '1') {
       this.groupA = '4'
     }
     this.page = 1;
@@ -930,28 +911,28 @@ export default {
 </script>
 
 <style scoped>
-.dialog_diy >>> .el-dialog__header {
+.dialog_diy>>>.el-dialog__header {
   background: #3d67bc !important;
   padding: 15px 20px;
 }
 
-.dialog_diy >>> .el-dialog__title {
+.dialog_diy>>>.el-dialog__title {
   color: #fff;
 }
 
-.dialog_diy >>> .el-dialog__headerbtn {
+.dialog_diy>>>.el-dialog__headerbtn {
   top: 19px;
 }
 
-.dialog_diy >>> .el-dialog__headerbtn .el-dialog__close {
+.dialog_diy>>>.el-dialog__headerbtn .el-dialog__close {
   color: #fff;
 }
 
-.dialog_diy >>> .el-dialog__headerbtn .el-dialog__close:hover {
+.dialog_diy>>>.el-dialog__headerbtn .el-dialog__close:hover {
   color: #fff;
 }
 
-.student_head >>> .el-button--primary {
+.student_head>>>.el-button--primary {
   background-color: #2268bc;
 }
 
@@ -1018,7 +999,7 @@ export default {
   align-items: center;
 }
 
-.el-table >>> .even_row {
+.el-table>>>.even_row {
   background-color: #f1f1f1;
 }
 
@@ -1130,7 +1111,7 @@ export default {
   justify-content: center;
 }
 
-.el_cards >>> .el-card__body {
+.el_cards>>>.el-card__body {
   height: 100%;
 }
 
@@ -1146,7 +1127,7 @@ export default {
   display: flex;
 }
 
-.wordUpload > .buttonUp {
+.wordUpload>.buttonUp {
   margin-right: 5px;
 }
 
@@ -1176,7 +1157,7 @@ export default {
   justify-content: space-evenly;
 }
 
-.bottom_box > div:nth-child(1) {
+.bottom_box>div:nth-child(1) {
   width: 230px;
   overflow: hidden;
   text-overflow: ellipsis;
@@ -1192,7 +1173,7 @@ export default {
   align-items: center;
 }
 
-.tup > img {
+.tup>img {
   width: 100%;
   height: 100%;
   object-fit: contain;
@@ -1222,11 +1203,11 @@ export default {
   font-size: 14px;
 }
 
-.three_bottom > div {
+.three_bottom>div {
   cursor: pointer;
 }
 
-.three_bottom > div:hover {
+.three_bottom>div:hover {
   color: #79a2ff;
 }
 
@@ -1234,7 +1215,7 @@ export default {
   display: flex;
 }
 
-.student_input >>> .el-input__inner {
+.student_input>>>.el-input__inner {
   height: 40px;
   width: 190px;
   font-size: 13px;
@@ -1351,6 +1332,7 @@ export default {
 .sub_head {
   position: relative;
 }
+
 .sub_head::after {
   content: "";
   width: 100%;
@@ -1370,9 +1352,11 @@ export default {
   /* color: #409eff; */
   color: #999;
 }
-.subClick:hover{
+
+.subClick:hover {
   color: #000;
 }
+
 .more {
   position: relative;
 }
@@ -1395,21 +1379,21 @@ export default {
   display: none;
 }
 
-.more div > span + span {
+.more div>span+span {
   margin-top: 10px;
 }
 
-.more div > span {
+.more div>span {
   display: block;
   width: 100%;
   text-align: center;
 }
 
-.more div > span:hover {
+.more div>span:hover {
   color: #79a2ff;
 }
 
-.line{
+.line {
   width: 100%;
   height: 15px;
   background: #e6eaf0;
@@ -1556,4 +1540,9 @@ export default {
 .isCType {
   color: #6282c2;
 }
+
+.pType_box {
+  margin-top: 0;
+}
+
 </style>

部分文件因为文件数量过多而无法显示