瀏覽代碼

按人员查看列表添加标题筛选

SanHQin 1 年之前
父節點
當前提交
e0187436ae
共有 1 個文件被更改,包括 15 次插入4 次删除
  1. 15 4
      src/components/pages/test/check/index.vue

+ 15 - 4
src/components/pages/test/check/index.vue

@@ -235,9 +235,9 @@
 								</template>
               </el-table-column>
               <el-table-column v-for="(item, index) in chapters" :key="index" :label="item.json.title"
-                :min-width="item.type == 5 ? 200 : 150" align="left" :filters="item.type == 1 ? item.nameFilters : null"
-                :filter-method="item.type == 1 ? (value, row) => { return filterName(value, row, index) } : null"
-                :filter-placement="item.type == 1 ? filterPlacement : null">
+                :min-width="item.type == 5 ? 200 : 150" align="left" :filters="item.type == 1 ? item.nameFilters : item.type ==  6? item.nameFilters : null"
+                :filter-method="item.type == 1 ? (value, row) => { return filterName(value, row, index) } : item.type == 6?(value, row) => { return filterCourse(value, row, index)}:null"
+                :filter-placement="item.type == 1 || item.type ==6 ? filterPlacement : null">
 
                 <template slot-scope="scope">
                   <div v-if="scope.row.array[index].type == 1" style="display: flex; flex-wrap: wrap;">
@@ -266,7 +266,7 @@
                     </div>
                   </div>
                   <div v-if="scope.row.array[index].type == 6" style="display: flex; flex-wrap: wrap;">
-                    {{ scope.row.array[index].json.answer2 }}
+                    {{ scope.row.array[index].json.answer2}}
                   </div>
                   <div v-if="scope.row.array[index].type == 7" style="display: flex; flex-wrap: wrap;">
                     {{ getScore(scope.row.array[index].json) }}
@@ -492,6 +492,10 @@ export default {
       }
       console.log(name.indexOf(value) != -1);
       return name.indexOf(value) != -1;
+    },
+		// 筛选课程
+		filterCourse(value, row, index) {
+			return row.array[index].json.answer2 == value;
     },
     wordClickHandler(name, value) {
       //  this.$notify({
@@ -664,6 +668,13 @@ export default {
 
 							let data = await this.ajax.get(this.$store.state.api + 'getCourseInfoTestAll',params);
 							let result = data.data[0]
+							// this.chapters.find(i=>i.type==6).nameFilters = result.map(r=>{return{text:r.title,value:r.courseId}})
+							result.forEach(i=>{
+								if(this.chapters.find(f=>f.type==6).nameFilters.find(c=>c.value==i.title)==undefined){
+									this.chapters.find(i=>i.type==6).nameFilters.push({text:i.title,value:i.title})
+								}
+							})
+							// this.chapters.find(i=>i.type==6).nameFilters = result.map(r=>{return{text:r.title,value:r.title}})
 							result.forEach(i=>i.update_at=new Date(i.update_at).toLocaleString('zh-CN', {year: 'numeric',month: '2-digit',day: '2-digit',hour: '2-digit',minute: '2-digit',second: '2-digit',hour12: false}).replace(/\//g,'-'))
 							topic.courseArray = result;
               // topic.array.forEach(async i => {