Commit da9346ee2016249d24cc25c97eaeb51ee894bfce
1 parent
ee00775c
全选和排序问题
Showing
2 changed files
with
42 additions
and
16 deletions
src/views/standard/test/contrast.vue
... | ... | @@ -94,6 +94,7 @@ |
94 | 94 | <el-table-column |
95 | 95 | prop="rank" |
96 | 96 | label="排名" |
97 | + sortable | |
97 | 98 | align="center" |
98 | 99 | ></el-table-column> |
99 | 100 | <el-table-column |
... | ... | @@ -104,7 +105,6 @@ |
104 | 105 | <el-table-column |
105 | 106 | prop="className" |
106 | 107 | label="班级" |
107 | - sortable | |
108 | 108 | align="center" |
109 | 109 | ></el-table-column> |
110 | 110 | <el-table-column |
... | ... | @@ -116,7 +116,6 @@ |
116 | 116 | <el-table-column |
117 | 117 | prop="levelName" |
118 | 118 | label="成绩等级" |
119 | - sortable | |
120 | 119 | align="center" |
121 | 120 | ></el-table-column> |
122 | 121 | </el-table> |
... | ... | @@ -389,7 +388,11 @@ export default { |
389 | 388 | this.title = data.title; |
390 | 389 | this.subjectNames = data.subjectName; |
391 | 390 | this.tableData = data.classes || []; |
392 | - this.tableData2 = data.students || []; | |
391 | + this.tableData2 = | |
392 | + data.students.map((item) => { | |
393 | + item.score = Number(item.score); | |
394 | + return item; | |
395 | + }) || []; | |
393 | 396 | } else { |
394 | 397 | this.$message.error(info); |
395 | 398 | } |
... | ... | @@ -521,7 +524,7 @@ export default { |
521 | 524 | } |
522 | 525 | } |
523 | 526 | } |
524 | -.p1{ | |
525 | - line-height:18px; | |
527 | +.p1 { | |
528 | + line-height: 18px; | |
526 | 529 | } |
527 | 530 | </style> |
528 | 531 | \ No newline at end of file | ... | ... |
src/views/standard/test/index.vue
... | ... | @@ -32,6 +32,9 @@ |
32 | 32 | multiple |
33 | 33 | collapse-tags |
34 | 34 | > |
35 | + <el-checkbox v-model="classAll" @change="selectAll" class="select-all" | |
36 | + >全选</el-checkbox | |
37 | + > | |
35 | 38 | <el-option |
36 | 39 | :disabled=" |
37 | 40 | query.classIds.length == 1 && query.classIds[0] == item.value |
... | ... | @@ -525,12 +528,7 @@ |
525 | 528 | </p> |
526 | 529 | </div> |
527 | 530 | <div v-show="query.classIds.length > 1" class="table-box"> |
528 | - <el-empty | |
529 | - :imag-size="48" | |
530 | - v-if="!classTableLen && !loading" | |
531 | - description="暂无数据" | |
532 | - ></el-empty> | |
533 | - <div class="head-box" v-if="classTableLen"> | |
531 | + <div class="head-box"> | |
534 | 532 | <div class="tit"> |
535 | 533 | <p class="txt">已考试卷信息</p> |
536 | 534 | <p> |
... | ... | @@ -552,7 +550,12 @@ |
552 | 550 | ></el-button> |
553 | 551 | </el-input> |
554 | 552 | </div> |
555 | - <ul class="tab-ul"> | |
553 | + <el-empty | |
554 | + :imag-size="48" | |
555 | + v-if="!classTableLen && !loading" | |
556 | + description="暂无数据" | |
557 | + ></el-empty> | |
558 | + <ul class="tab-ul" v-if="classTableLen"> | |
556 | 559 | <template v-for="(item, index) in classTable"> |
557 | 560 | <li class="tab-li"> |
558 | 561 | <p class="tab-tit"> |
... | ... | @@ -681,6 +684,7 @@ export default { |
681 | 684 | total: 0, |
682 | 685 | multipleSelection: [], //选中的试卷ID |
683 | 686 | classTable: [], //多班级数据 |
687 | + classAll: false, //搜索条件多班全选 | |
684 | 688 | }; |
685 | 689 | }, |
686 | 690 | computed: { |
... | ... | @@ -731,6 +735,17 @@ export default { |
731 | 735 | }); |
732 | 736 | }, |
733 | 737 | methods: { |
738 | + //搜索条件多班全选 | |
739 | + selectAll(val) { | |
740 | + this.query.classIds = []; | |
741 | + if (val) { | |
742 | + this.classList.forEach((item) => { | |
743 | + this.query.classIds.push(item.value); | |
744 | + }); | |
745 | + } else { | |
746 | + this.query.classIds.push(this.classList[0].value); | |
747 | + } | |
748 | + }, | |
734 | 749 | // 多班级选择同一试卷 |
735 | 750 | checkboxDisabled(obj) { |
736 | 751 | let id = this.multipleSelection[0] || ""; |
... | ... | @@ -943,7 +958,12 @@ export default { |
943 | 958 | this._QueryData(); |
944 | 959 | }, |
945 | 960 | //切换班级 |
946 | - async changeclass() { | |
961 | + async changeclass(list) { | |
962 | + if (list.length == this.classList.length) { | |
963 | + this.classAll = true; | |
964 | + } else { | |
965 | + this.classAll = false; | |
966 | + } | |
947 | 967 | if (this.query.classIds.length == 0) { |
948 | 968 | this.$message.warning("请至少选择一个班级!"); |
949 | 969 | } |
... | ... | @@ -1078,11 +1098,11 @@ export default { |
1078 | 1098 | if (!query.classId) { |
1079 | 1099 | //多班级 |
1080 | 1100 | this.classTable = []; |
1081 | - let classIds = [] | |
1101 | + let classIds = []; | |
1082 | 1102 | let tableData = []; |
1083 | 1103 | data?.list?.map((item) => { |
1084 | - if(!classIds.includes(item.classId)){ | |
1085 | - classIds.push(item.classId) | |
1104 | + if (!classIds.includes(item.classId)) { | |
1105 | + classIds.push(item.classId); | |
1086 | 1106 | } |
1087 | 1107 | let idx = classIds.indexOf(item.classId); |
1088 | 1108 | if (tableData[idx]) { |
... | ... | @@ -1377,4 +1397,7 @@ div::-webkit-scrollbar-thumb { |
1377 | 1397 | background: transparent; |
1378 | 1398 | } |
1379 | 1399 | } |
1400 | +.select-all { | |
1401 | + padding-left: 16px; | |
1402 | +} | |
1380 | 1403 | </style> |
1381 | 1404 | \ No newline at end of file | ... | ... |