|
@@ -576,7 +576,7 @@
|
|
|
</div>
|
|
|
<!-- 按人员pc端 isDesktop-->
|
|
|
<div class="table_content" v-if="stype == 2 && isDesktop">
|
|
|
- <el-table class="el-table" ref="table" :data="worksArray" border :fit="true" :key="2" v-loading="isLoading"
|
|
|
+ <el-table class="el-table" ref="table" :data="tableWorksArray" border :fit="true" :key="2" v-loading="isLoading"
|
|
|
style="width: 100%" :header-cell-style="{ background: '#f1f1f1', fontSize: '17px' }"
|
|
|
@filter-change="handleFilterChange" @selection-change="handleSelectionChange">
|
|
|
<el-table-column
|
|
@@ -598,9 +598,26 @@
|
|
|
</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 : (item.type == 6 || item.type == 11)? item.nameFilters : item.type==8?getTimeFilterText(item,index):null"
|
|
|
- :filter-method="item.type == 1 ? (value, row) => { return filterName(value, row, index) } : (item.type == 6 || item.type == 11)?(value, row) => { return filterCourse(value, row, index)}:item.type==8?(value,row)=>{return filterTime(value,row,index)}:null"
|
|
|
- :filter-placement="item.type == 8 ||item.type == 1 || item.type ==6|| item.type ==11 ? filterPlacement : null">
|
|
|
+ :filters="item.type == 1 ? item.nameFilters : (item.type == 6 || item.type == 11)? item.nameFilters :null"
|
|
|
+ :filter-method="item.type == 1 ? (value, row) => { return filterName(value, row, index) } : (item.type == 6 || item.type == 11)?(value, row) => { return filterCourse(value, row, index)}:null"
|
|
|
+ :filter-placement="item.type == 1 || item.type ==6|| item.type ==11 ? filterPlacement : null">
|
|
|
+ <!-- item.type==8?getTimeFilterText(item,index): item.type==8?(value,row)=>{return filterTime(value,row,index)}: item.type == 8 ||-->
|
|
|
+ <template slot="header" slot-scope="scope" >
|
|
|
+ <div v-if="item.type==8" style="display: flex;align-items: center;">
|
|
|
+ <span>{{ item.json.title }}</span>
|
|
|
+ <div class="tableDatePicker">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="tableDatePicker[index]"
|
|
|
+ @change="tableDataPickerChange"
|
|
|
+ type="daterange"
|
|
|
+ range-separator="▼">
|
|
|
+ </el-date-picker>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ {{ item.json.title }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
<template slot-scope="scope">
|
|
|
<div v-if="scope.row.array[index].type == 1" style="display: flex; flex-wrap: wrap;">
|
|
|
<span class="answer_type" v-for="(answer2, index2) in scope.row.array[index].json.answer2"
|
|
@@ -1021,6 +1038,7 @@ export default {
|
|
|
courseName: "",
|
|
|
dialogVisibleShare: false,
|
|
|
worksArray: [],
|
|
|
+ tableWorksArray:[],
|
|
|
testArray: [],
|
|
|
options2: {
|
|
|
1: "选择题",
|
|
@@ -1042,7 +1060,8 @@ export default {
|
|
|
btnDisplay: false,
|
|
|
|
|
|
fileLoading: [],
|
|
|
- selectWorkList:[]
|
|
|
+ selectWorkList:[],
|
|
|
+ tableDatePicker:[],
|
|
|
// fileLoadCount: [],
|
|
|
// fileLoadNum: [],
|
|
|
// infoprogress: [],
|
|
@@ -1590,6 +1609,7 @@ export default {
|
|
|
}
|
|
|
this.testArray = testArray
|
|
|
this.worksArray = array
|
|
|
+ this.tableWorksArray = array;
|
|
|
this.isLoading = false;
|
|
|
|
|
|
})
|
|
@@ -2435,6 +2455,22 @@ export default {
|
|
|
},
|
|
|
handleSelectionChange(value){
|
|
|
this.selectWorkList = value
|
|
|
+ },
|
|
|
+ tableDataPickerChange(){
|
|
|
+ let _copyData = JSON.parse(JSON.stringify(this.worksArray));
|
|
|
+ this.tableDatePicker.forEach((i,index)=>{
|
|
|
+ /*[null,["2024-12-05T00:00:00.000","2025-01-12T00:00:00.000"],["2024-12-04T00:00:00.000","2025-01-24T00:00:00.000"]] */
|
|
|
+ if(i && i.length>0){
|
|
|
+ let _startDate = new Date(i[0]);
|
|
|
+ let _endDate = new Date(i[1])
|
|
|
+ _copyData = _copyData.filter(f=>{
|
|
|
+ let _answer = f.array[index].json.answer2.replace(/日/g, '').replace(/年|月/g, '-');
|
|
|
+ let _answerDate = new Date(_answer);
|
|
|
+ return _answerDate>=_startDate && _answerDate<=_endDate;
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.tableWorksArray = _copyData;
|
|
|
}
|
|
|
},
|
|
|
beforeDestroy() {
|
|
@@ -3376,4 +3412,43 @@ export default {
|
|
|
border-radius: 5px;
|
|
|
overflow: hidden;
|
|
|
}
|
|
|
+
|
|
|
+.tableDatePicker{
|
|
|
+ width: 20px;
|
|
|
+ height: 20px;
|
|
|
+ margin-left: 5px;
|
|
|
+}
|
|
|
+
|
|
|
+.tableDatePicker>>>.el-date-editor{
|
|
|
+ width: 100% !important;
|
|
|
+ height: 100% !important;
|
|
|
+ padding: 0 !important;
|
|
|
+ cursor: pointer;
|
|
|
+ background: none;
|
|
|
+ border: none;
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+.tableDatePicker>>>.el-date-editor>i{
|
|
|
+ display: none;
|
|
|
+}
|
|
|
+
|
|
|
+.tableDatePicker>>>.el-date-editor>input{
|
|
|
+ display: none;
|
|
|
+}
|
|
|
+
|
|
|
+.tableDatePicker>>>.el-date-editor>span{
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ align-items: center;
|
|
|
+ color: #9095A7;
|
|
|
+}
|
|
|
+
|
|
|
+/* .tableDatePicker>>>.el-date-editor>.el-range__close-icon{
|
|
|
+ display: block;
|
|
|
+ position: relative;
|
|
|
+ top: -5px;
|
|
|
+} */
|
|
|
</style>
|