Commit dbbfc6c5bac371f34ac43c2edcdddc0cae0afa1e

Authored by 梁保满
1 parent 8ea67428

飞书优化及bug

src/views/analysis/index.vue
... ... @@ -240,7 +240,7 @@ export default {
240 240 let query = {};
241 241 for (let key in this.query) {
242 242 if (this.query[key] != "") {
243   - if (key == gradeName) {
  243 + if (key == "gradeName") {
244 244 query[key] = this.query[key]=="全部"?"":this.query[key];
245 245 } else {
246 246 query[key] = this.query[key];
... ... @@ -335,7 +335,9 @@ export default {
335 335 ...params,
336 336 };
337 337 });
338   - this.dataList = dataList;
  338 + this.dataList = dataList.sort((a,b)=>{
  339 + return a.grade-b.grade
  340 + });
339 341 } else {
340 342 this.$message.error(info);
341 343 }
... ...
src/views/ask/analysis.vue
... ... @@ -112,7 +112,7 @@
112 112 prop="fallible"
113 113 label="干扰答案"
114 114 align="center"
115   - ><template slot-scope="scoped">{{scoped.row.fallible==1?"✓":scoped.row.fallible==2?"✗":scoped.row.correctAnswer}}</template></el-table-column>
  115 + ><template slot-scope="scoped">{{scoped.row.fallible==1?"✓":scoped.row.fallible==2?"✗":scoped.row.fallible}}</template></el-table-column>
116 116 <!-- <el-table-column prop="screenshot" label="题干" align="center">
117 117 <template slot-scope="scoped">
118 118 <el-image
... ... @@ -411,7 +411,16 @@ export default {
411 411 },
412 412 };
413 413 </script>
414   -
  414 +<style>
  415 +div::-webkit-scrollbar {
  416 + width: 3px;
  417 + height: 10px;
  418 +}
  419 +div::-webkit-scrollbar-thumb {
  420 + border-radius: 10px;
  421 + background-color: #ccc;
  422 +}
  423 +</style>
415 424 <style lang="scss" scoped>
416 425 .down {
417 426 padding-top: 20px;
... ...
src/views/ask/index.vue
1 1 <template>
2   - <div>
  2 + <div class="main" ref="main">
3 3 <back-box>
4 4 <template slot="title">
5 5 <span>问答-数据报表</span>
... ... @@ -7,12 +7,7 @@
7 7 </back-box>
8 8 <div class="answer-header">
9 9 <div class="sel-box">
10   - <el-select
11   - class="sel"
12   - v-model="query.classId"
13   - placeholder="选择班级"
14   - @change="changClazz"
15   - >
  10 + <el-select class="sel" v-model="query.classId" placeholder="选择班级">
16 11 <el-option
17 12 v-for="item in classList"
18 13 :key="item.value"
... ... @@ -27,7 +22,7 @@
27 22 multiple
28 23 v-model="query.subjectNames"
29 24 placeholder="选择科目"
30   - @change="_QueryData"
  25 + @change="changeSub"
31 26 >
32 27 <el-option
33 28 v-for="item in subjectList"
... ... @@ -42,7 +37,6 @@
42 37 class="sel"
43 38 v-model="query.subjectNames"
44 39 placeholder="选择科目"
45   - @change="_QueryData"
46 40 >
47 41 <el-option
48 42 v-for="item in subjectList"
... ... @@ -260,16 +254,18 @@
260 254 align="center"
261 255 ></el-table-column>
262 256 </el-table>
263   - <el-table v-else :data="tableData" border style="width: 100%">
  257 + <el-table :max-height="tableMaxHeight" v-else :data="tableData" border style="width: 100%">
264 258 <el-table-column
265 259 prop="studentCode"
266 260 label="学号"
267 261 align="center"
  262 + fixed
268 263 ></el-table-column>
269 264 <el-table-column
270 265 prop="studentName"
271 266 label="姓名"
272 267 align="center"
  268 + fixed
273 269 width="100"
274 270 ></el-table-column>
275 271 <el-table-column
... ... @@ -278,16 +274,36 @@
278 274 :label="item"
279 275 align="center"
280 276 >
281   - <el-table-column align="center" :label="index==0?'总课时数':'课时数'" :prop="'periodCount'+item"> </el-table-column>
282   - <el-table-column align="center" :label="index==0?'总出题数':'出题数'" :prop="'questionNum'+item"> </el-table-column>
283   - <el-table-column align="center" :label="index==0?'总参与度':'参与度'" :prop="'participationRate'+item"> </el-table-column>
284   - <el-table-column align="center" :label="index==0?'总正确率':'正确率'" :prop="'correctRate'+item"> </el-table-column>
  277 + <el-table-column
  278 + align="center"
  279 + :label="index == 0 ? '总课时数' : '课时数'"
  280 + :prop="'periodCount' + item"
  281 + >
  282 + </el-table-column>
  283 + <el-table-column
  284 + align="center"
  285 + :label="index == 0 ? '总出题数' : '出题数'"
  286 + :prop="'questionNum' + item"
  287 + >
  288 + </el-table-column>
  289 + <el-table-column
  290 + align="center"
  291 + :label="index == 0 ? '总参与度' : '参与度'"
  292 + :prop="'participationRate' + item"
  293 + >
  294 + </el-table-column>
  295 + <el-table-column
  296 + align="center"
  297 + :label="index == 0 ? '总正确率' : '正确率'"
  298 + :prop="'correctRate' + item"
  299 + ><template slot-scope="scoped">{{scoped.row['correctRate' + item]}}%</template>
  300 + </el-table-column>
285 301 </el-table-column>
286 302 </el-table>
287 303 </div>
288 304 <div v-show="tabIndex == 3">
289 305 <el-table
290   - v-if="role == 'ROLE_JIAOSHI'"
  306 + v-if="role == 'ROLE_JIAOSHI'"
291 307 :data="tableData"
292 308 border
293 309 style="width: 100%"
... ... @@ -359,8 +375,36 @@
359 375 :label="item"
360 376 align="center"
361 377 >
362   - <el-table-column align="center" :label="index==0?'参与分':'互动数'" :prop="'interactionsNum'+item"> </el-table-column>
363   - <el-table-column align="center" :label="index==0?'对错分':'参与数'" :prop="'interactionsCorrectNum'+item"> </el-table-column>
  378 + <el-table-column
  379 + align="center"
  380 + v-if="index == 0"
  381 + label="参与分"
  382 + sortable
  383 + :prop="'interactionsNum' + item"
  384 + >
  385 + </el-table-column>
  386 + <el-table-column
  387 + v-else
  388 + align="center"
  389 + label="互动数"
  390 + :prop="'interactionsNum' + item"
  391 + >
  392 + </el-table-column>
  393 + <el-table-column
  394 + v-if="index == 0"
  395 + align="center"
  396 + label="对错分"
  397 + sortable
  398 + :prop="'interactionsCorrectNum' + item"
  399 + >
  400 + </el-table-column>
  401 + <el-table-column
  402 + v-else
  403 + align="center"
  404 + label="参与数"
  405 + :prop="'interactionsCorrectNum' + item"
  406 + >
  407 + </el-table-column>
364 408 </el-table-column>
365 409 </el-table>
366 410 </div>
... ... @@ -402,6 +446,7 @@ import { formatDate, deepClone, downloadFile } from &quot;utils&quot;;
402 446 export default {
403 447 data() {
404 448 return {
  449 + tableMaxHeight:300,
405 450 role: "",
406 451 loading: false,
407 452 dialogVisible: false,
... ... @@ -424,8 +469,8 @@ export default {
424 469 subjectList: [], //科目
425 470 tabIndex: 1, //选项卡
426 471 tableData: [],
427   - phaseOption: [],//问答补充数据
428   - phaseInter:[],//互动补充数据
  472 + phaseOption: [], //问答补充数据
  473 + phaseInter: [], //互动补充数据
429 474 page: 1,
430 475 size: 20,
431 476 total: 0,
... ... @@ -446,6 +491,17 @@ export default {
446 491 }
447 492 },
448 493 methods: {
  494 + changeSub(val) {
  495 + let sub;
  496 + if (val && val.length) {
  497 + let leng = val.length - 1;
  498 + sub = val[leng];
  499 + }
  500 + console.log(val);
  501 + this.query.subjectNames = val.filter((item) => {
  502 + return sub != "全部" ? item != "全部" : item == "全部";
  503 + });
  504 + },
449 505 linkTo(obj) {
450 506 //去详情
451 507 this.$router.push({
... ... @@ -547,7 +603,9 @@ export default {
547 603 this._QueryData();
548 604 },
549 605 tabChange() {
  606 + this.tableMaxHeight = this.$refs.main.offsetHeight
550 607 this.page = 1;
  608 + this.tableData = [];
551 609 this._QueryData();
552 610 },
553 611 sortChange(obj) {
... ... @@ -643,6 +701,7 @@ export default {
643 701 query.subjectNames = [query.subjectNames];
644 702 } else {
645 703 if (
  704 + query["subjectNames"] &&
646 705 query["subjectNames"].length == 1 &&
647 706 query["subjectNames"][0] == "全部"
648 707 ) {
... ... @@ -651,6 +710,10 @@ export default {
651 710 });
652 711 query["subjectNames"].shift();
653 712 }
  713 + if (!query["subjectNames"]) {
  714 + this.$message.warning("请选择科目");
  715 + return;
  716 + }
654 717 }
655 718 const { data, status, info } = await this.$request.periodReportList({
656 719 ...query,
... ... @@ -680,6 +743,7 @@ export default {
680 743 }
681 744 if (this.role == "ROLE_BANZHUREN") {
682 745 if (
  746 + query["subjectNames"] &&
683 747 query["subjectNames"].length == 1 &&
684 748 query["subjectNames"][0] == "全部"
685 749 ) {
... ... @@ -688,6 +752,10 @@ export default {
688 752 });
689 753 query["subjectNames"].shift();
690 754 }
  755 + if (!query["subjectNames"]) {
  756 + this.$message.warning("请选择科目");
  757 + return;
  758 + }
691 759 }
692 760 const phaseAnswerReport =
693 761 this.role == "ROLE_BANZHUREN"
... ... @@ -707,9 +775,11 @@ export default {
707 775 if (!subjectName.includes(items.subjectName)) {
708 776 subjectName.push(items.subjectName);
709 777 }
710   - params["answerCorrectRate" + items.subjectName] = items.answerCorrectRate;
  778 + params["answerCorrectRate" + items.subjectName] =
  779 + items.answerCorrectRate;
711 780 params["correctRate" + items.subjectName] = items.correctRate;
712   - params["participationRate" + items.subjectName] = items.participationRate;
  781 + params["participationRate" + items.subjectName] =
  782 + items.participationRate;
713 783 params["periodCount" + items.subjectName] = items.periodCount;
714 784 params["questionNum" + items.subjectName] = items.questionNum;
715 785 });
... ... @@ -742,6 +812,7 @@ export default {
742 812 }
743 813 if (this.role == "ROLE_BANZHUREN") {
744 814 if (
  815 + query["subjectNames"] &&
745 816 query["subjectNames"].length == 1 &&
746 817 query["subjectNames"][0] == "全部"
747 818 ) {
... ... @@ -750,6 +821,10 @@ export default {
750 821 });
751 822 query["subjectNames"].shift();
752 823 }
  824 + if (!query["subjectNames"]) {
  825 + this.$message.warning("请选择科目");
  826 + return;
  827 + }
753 828 }
754 829 const phaseInteractiveReport =
755 830 this.role == "ROLE_BANZHUREN"
... ... @@ -769,8 +844,10 @@ export default {
769 844 if (!subjectName.includes(items.subjectName)) {
770 845 subjectName.push(items.subjectName);
771 846 }
772   - params["interactionsNum" + items.subjectName] = items.interactionsNum;
773   - params["interactionsCorrectNum" + items.subjectName] = items.interactionsCorrectNum;
  847 + params["interactionsNum" + items.subjectName] =
  848 + items.interactionsNum;
  849 + params["interactionsCorrectNum" + items.subjectName] =
  850 + items.interactionsCorrectNum;
774 851 });
775 852 return {
776 853 ...item,
... ... @@ -801,8 +878,20 @@ export default {
801 878 },
802 879 };
803 880 </script>
804   -
  881 +<style>
  882 +div::-webkit-scrollbar {
  883 + width: 3px;
  884 + height: 10px;
  885 +}
  886 +div::-webkit-scrollbar-thumb {
  887 + border-radius: 10px;
  888 + background-color: #ccc;
  889 +}
  890 +</style>
805 891 <style lang="scss" scoped>
  892 +.main{
  893 + height:100%;
  894 +}
806 895 .table-box {
807 896 margin: 0 20px;
808 897 padding: 16px;
... ...
src/views/device/index.vue
... ... @@ -517,6 +517,7 @@ export default {
517 517 type: "",
518 518 },
519 519 statusList: [
  520 + { label: "全部", value: "" },
520 521 { label: "离线", value: 0 },
521 522 { label: "在线", value: 1 },
522 523 { label: "异常", value: 2 },
... ... @@ -916,7 +917,7 @@ export default {
916 917 this.loading = false;
917 918 if (status == 0) {
918 919 this.tableData =
919   - data?.list.map((item) => {
  920 + data?.list&&data?.list.map((item) => {
920 921 item.upgradeFlag = item.upgradeFlag == 1 ? true : false;
921 922 return item;
922 923 }) || [];
... ...
src/views/device/log.vue
... ... @@ -64,6 +64,9 @@
64 64 >本季度</span
65 65 >
66 66 </p>
  67 + <el-button class="serach-box" round @click="_QueryData"
  68 + >筛选</el-button
  69 + >
67 70 </div>
68 71 </div>
69 72 <div class="table-box">
... ... @@ -284,7 +287,7 @@ export default {
284 287 });
285 288 this.loading = false;
286 289 if (status === 0) {
287   - this.tableData = [...data?.list] || [];
  290 + this.tableData = data?.list&&[...data?.list] || [];
288 291 this.total = data.count;
289 292 } else {
290 293 this.$message.error(info);
... ...
src/views/down/client.vue
... ... @@ -54,7 +54,7 @@
54 54 <i class="fa fa-mail-reply-all"></i>
55 55 <p>
56 56 {{
57   - `${type == 1 ? "参数设置" : formData.configName + "-修改入口"}`
  57 + `${type == 1 ? "参数设置" : formData.configName}`
58 58 }}
59 59 </p>
60 60 </div>
... ... @@ -66,7 +66,7 @@
66 66 :rules="ruleForm"
67 67 label-width="180px"
68 68 >
69   - <el-form-item label="主菜单设置:" prop="configName" v-if="type == 1">
  69 + <el-form-item label="配置名称:" prop="configName" v-if="type == 1">
70 70 <el-col :span="12">
71 71 <el-input
72 72 v-model.trim="formData.configName"
... ... @@ -169,7 +169,7 @@
169 169 :step="1"
170 170 :step-strictly="true"
171 171 ></el-input-number>
172   - <span v-show="formData.viesAnswerSet != 2">秒</span>
  172 + <span v-show="formData.viesAnswerSet == 0">秒</span>
173 173 </el-form-item>
174 174 <el-form-item label="抽答设置:" prop="ballotAnswerSet">
175 175 <el-radio-group v-model="formData.ballotAnswerSet">
... ...
src/views/layout/layout.vue
... ... @@ -109,6 +109,7 @@ ul.el-menu {
109 109 #elmain {
110 110 background-color: #fff;
111 111 padding: 0;
  112 + min-height:calc(100% - 78px);
112 113 }
113 114  
114 115 .avatar-uploader .el-upload {
... ...
src/views/login/index.vue
... ... @@ -95,16 +95,10 @@ export default {
95 95 loginForm: {
96 96 // username: "15911715665",
97 97 // password: "Csiy88888",
98   - // username: "13610050254",
99   - // password: "Pw050254#",
100   - // username: "18332123505",
101   - // password: "Pw123505#",
102 98 username: "18687826606",
103 99 password: "Pw826606#",
104   - // username: "18946034886",
105   - // password: "Pw034886#",
106 100 // username: "18893712576",
107   - // password: "Pw712576#",
  101 + // password: "712576",
108 102 // username: "13247726488",
109 103 // password: "726488",
110 104 // username: "13319607658",
... ...
src/views/setUp/account.vue
... ... @@ -132,9 +132,9 @@
132 132 label="管辖范围"
133 133 align="center"
134 134 >
135   - <template slot-scope="scoped" v-if="scoped.row.regionList">
136   - <span v-for="item in scoped.row.regionList" :key="item.id">{{
137   - item.regionName
  135 + <template slot-scope="scoped" v-if="scoped.row.schoolList.length">
  136 + <span v-for="item in scoped.row.schoolList" :key="item.id">{{
  137 + item.schoolName
138 138 }}</span>
139 139 </template>
140 140 </el-table-column>
... ... @@ -461,7 +461,7 @@ export default {
461 461 if (this.role != "ROLE_JITUAN") {
462 462 this.formCount.userId = obj.userId;
463 463 } else {
464   - this.formCount.id = obj.id;
  464 + this.formCount.userId = obj.id;
465 465 }
466 466 this.formCount.loginName = obj.loginName;
467 467 this.formCount.realName = obj.realName;
... ... @@ -503,6 +503,7 @@ export default {
503 503 });
504 504 if (status === 0) {
505 505 this.$message.success(info);
  506 + this.diaCount=false
506 507 this._QueryData(4);
507 508 } else {
508 509 this.$message.error(info);
... ... @@ -548,7 +549,7 @@ export default {
548 549 ...query,
549 550 })
550 551 : await this.$request.tenantUpdateUser({
551   - id: obj.id,
  552 + userId: obj.id,
552 553 type: type,
553 554 ...query,
554 555 });
... ...
src/views/test/analysis.vue
1 1 <template>
2   - <div class="page-container" :class="dialogVisible ? 'active' : ''">
  2 + <div ref="main" class="page-container" :class="dialogVisible ? 'active' : ''">
3 3 <back-box>
4 4 <template slot="title">
5 5 <span>单卷分析</span>
... ... @@ -31,39 +31,41 @@
31 31 <span
32 32 class="tab-item"
33 33 :class="type == 1 ? 'active' : ''"
34   - @click="type = 1"
  34 + @click="setType(1)"
35 35 >试题分析</span
36 36 >
37 37 <span
38 38 class="tab-item"
39 39 :class="type == 2 ? 'active' : ''"
40   - @click="type = 2"
  40 + @click="setType(2)"
41 41 >成绩排名</span
42 42 >
43 43 <span
44 44 class="tab-item"
45 45 :class="type == 3 ? 'active' : ''"
46   - @click="type = 3"
  46 + @click="setType(3)"
47 47 >小题分报表</span
48 48 >
49 49 <span
50 50 class="tab-item"
51 51 :class="type == 4 ? 'active' : ''"
52   - @click="type = 4"
  52 + @click="setType(4)"
53 53 >作答明细表</span
54 54 >
55 55 </div>
56   - <el-table v-show="type == 1" :data="tableData" border style="width: 100%">
  56 + <el-table :max-height="tableMaxHeight" v-show="type == 1" :data="tableData" border style="width: 100%">
57 57 <el-table-column
58 58 prop="questionIndex"
59 59 label="题号"
60 60 align="center"
  61 + fixed
61 62 width="60"
62 63 ></el-table-column>
63 64 <el-table-column
64 65 prop="questionType"
65 66 label="题型"
66 67 align="center"
  68 + fixed
67 69 width="100"
68 70 ><template slot-scope="scope">{{
69 71 setSubPro(scope.row.questionType)
... ... @@ -120,7 +122,7 @@
120 122 v-for="(item, index) in optionsList"
121 123 :key="index"
122 124 :label="'选项' + (index + 1)"
123   - :prop="'option' + index"
  125 + :prop="'count' + index"
124 126 align="center"
125 127 >
126 128 </el-table-column>
... ... @@ -170,6 +172,7 @@
170 172 </div>
171 173 <el-table
172 174 v-show="type == 2"
  175 + :max-height="tableMaxHeight"
173 176 :data="tableData2"
174 177 border
175 178 style="width: 100%"
... ... @@ -241,6 +244,7 @@
241 244 </el-table>
242 245 <el-table
243 246 v-show="type == 3"
  247 + :max-height="tableMaxHeight"
244 248 :data="tableData2"
245 249 border
246 250 style="width: 100%"
... ... @@ -249,11 +253,13 @@
249 253 <el-table-column
250 254 prop="studentCode"
251 255 label="学号"
  256 + fixed
252 257 align="center"
253 258 ></el-table-column>
254 259 <el-table-column
255 260 prop="studentName"
256 261 label="姓名"
  262 + fixed
257 263 align="center"
258 264 ></el-table-column>
259 265 <el-table-column
... ... @@ -284,6 +290,7 @@
284 290 </el-table-column>
285 291 </el-table>
286 292 <el-table
  293 + :max-height="tableMaxHeight"
287 294 v-show="type == 4"
288 295 :data="tableData2"
289 296 border
... ... @@ -293,11 +300,13 @@
293 300 <el-table-column
294 301 prop="studentCode"
295 302 label="学号"
  303 + fixed
296 304 align="center"
297 305 ></el-table-column>
298 306 <el-table-column
299 307 prop="studentName"
300 308 label="姓名"
  309 + fixed
301 310 align="center"
302 311 ></el-table-column>
303 312 <el-table-column
... ... @@ -306,7 +315,7 @@
306 315 align="center"
307 316 ></el-table-column>
308 317 <el-table-column
309   - prop="examPaperScore"
  318 + prop="examScore"
310 319 label="总分"
311 320 sortable
312 321 align="center"
... ... @@ -363,11 +372,12 @@
363 372 v-loading="exportLoading"
364 373 >导入主观题分数</el-button
365 374 >
366   - <el-button @click="edit" type="primary" round>设置答案</el-button>
  375 + <el-button @click="edit" type="primary" round>修改答案</el-button>
367 376 </div>
368 377 </div>
369 378 <div class="edit-dia" v-show="dialogVisible" height="100%">
370 379 <editAnswer
  380 + ref="editAnswer"
371 381 :title="title"
372 382 :score="score"
373 383 @cancel="cancel"
... ... @@ -399,6 +409,7 @@ export default {
399 409 components: { editAnswer },
400 410 data() {
401 411 return {
  412 + tableMaxHeight:300,
402 413 loading: false,
403 414 exportLoading: false,
404 415 diaUp: false,
... ... @@ -443,6 +454,10 @@ export default {
443 454 this._QueryData();
444 455 },
445 456 methods: {
  457 + setType(type){
  458 + this.tableMaxHeight = this.$refs.main.offsetHeight-120
  459 + this.type=type
  460 + },
446 461 setSubPro(type) {
447 462 let tit;
448 463 switch (type) {
... ... @@ -580,6 +595,7 @@ export default {
580 595 }
581 596 console.log(detail);
582 597 detail.map((items, index) => {
  598 + params["count" + index] = items.count;
583 599 params["option" + index] =
584 600 items.option == 1 ? "✓" : items.option == 2 ? "✗" : items.option;
585 601 });
... ... @@ -609,12 +625,21 @@ export default {
609 625 },
610 626 };
611 627 </script>
612   -
  628 +<style>
  629 +div::-webkit-scrollbar {
  630 + width: 3px;
  631 + height: 10px;
  632 +}
  633 +div::-webkit-scrollbar-thumb {
  634 + border-radius: 10px;
  635 + background-color: #ccc;
  636 +}
  637 +</style>
613 638 <style lang="scss" scoped>
614 639 .page-container {
615 640 position: relative;
  641 + min-height: 100%;
616 642 &.active {
617   - height: 100%;
618 643 overflow: hidden;
619 644 }
620 645 .edit-dia {
... ...
src/views/test/index.vue
1 1 <template>
2   - <div class="page-container" :class="dialogVisible ? 'active' : ''">
  2 + <div ref="main" class="page-container" :class="dialogVisible ? 'active' : ''">
3 3 <back-box>
4 4 <template slot="title">
5 5 <span>即时测-数据报表</span>
... ... @@ -26,6 +26,7 @@
26 26 multiple
27 27 v-model="query.subjectNames"
28 28 placeholder="选择科目"
  29 + @change="changeSub"
29 30 >
30 31 <el-option
31 32 v-for="item in subjectList"
... ... @@ -121,7 +122,7 @@
121 122 ><template slot-scope="scoped">{{
122 123 scoped.row.subjectiveScore == scoped.row.examPaperScore ||
123 124 scoped.row.answerNum == 0
124   - ? scoped.row.avgScore || "-"
  125 + ? "-"
125 126 : scoped.row.avgScore
126 127 }}</template></el-table-column
127 128 >
... ... @@ -129,7 +130,7 @@
129 130 ><template slot-scope="scoped">{{
130 131 scoped.row.subjectiveScore == scoped.row.examPaperScore ||
131 132 scoped.row.answerNum == 0
132   - ? scoped.row.highestScore || "-"
  133 + ? "-"
133 134 : scoped.row.highestScore
134 135 }}</template></el-table-column
135 136 >
... ... @@ -137,7 +138,7 @@
137 138 ><template slot-scope="scoped">{{
138 139 scoped.row.subjectiveScore == scoped.row.examPaperScore ||
139 140 scoped.row.answerNum == 0
140   - ? scoped.row.lowestScore || "-"
  141 + ? "-"
141 142 : scoped.row.lowestScore
142 143 }}</template></el-table-column
143 144 >
... ... @@ -149,8 +150,8 @@
149 150 ><template slot-scope="scoped">{{
150 151 scoped.row.subjectiveScore == scoped.row.examPaperScore ||
151 152 scoped.row.answerNum == 0
152   - ? scoped.row.excellenNum || "-"
153   - : `${scoped.row.excellenNum}/${scoped.row.excellenRate}%`
  153 + ? "-"
  154 + : scoped.row.excellenNum?`${scoped.row.excellenNum}/${scoped.row.excellenRate}%`:scoped.row.excellenNum
154 155 }}</template></el-table-column
155 156 >
156 157 <el-table-column
... ... @@ -162,8 +163,8 @@
162 163 >{{
163 164 scoped.row.subjectiveScore == scoped.row.examPaperScore ||
164 165 scoped.row.answerNum == 0
165   - ? scoped.row.goodNum || "-"
166   - : `${scoped.row.goodNum}/${scoped.row.goodRate}%`
  166 + ? "-"
  167 + : scoped.row.goodNum?`${scoped.row.goodNum}/${scoped.row.goodRate}%`:scoped.row.goodNum
167 168 }}
168 169 </template></el-table-column
169 170 >
... ... @@ -176,8 +177,8 @@
176 177 >{{
177 178 scoped.row.subjectiveScore == scoped.row.examPaperScore ||
178 179 scoped.row.answerNum == 0
179   - ? scoped.row.passNum || "-"
180   - : `${scoped.row.passNum}/${scoped.row.passRate}%`
  180 + ? "-"
  181 + : scoped.row.passNum?`${scoped.row.passNum}/${scoped.row.passRate}%`:scoped.row.passNum
181 182 }}
182 183 </template></el-table-column
183 184 >
... ... @@ -189,8 +190,8 @@
189 190 ><template slot-scope="scoped">{{
190 191 scoped.row.subjectiveScore == scoped.row.examPaperScore ||
191 192 scoped.row.answerNum == 0
192   - ? scoped.row.failedNum || "-"
193   - : `${scoped.row.failedNum}/${scoped.row.failedRate}%`
  193 + ? "-"
  194 + : scoped.row.failedNum?`${scoped.row.failedNum}/${scoped.row.failedRate}%`:scoped.row.failedNum
194 195 }}</template></el-table-column
195 196 >
196 197 <el-table-column label="操作" align="center">
... ... @@ -290,7 +291,7 @@
290 291 ></el-table-column>
291 292 </el-table-column>
292 293 </el-table>
293   - <el-table v-else :data="tableData" border style="width: 100%">
  294 + <el-table :max-height="tableMaxHeight" v-else :data="tableData" border style="width: 100%">
294 295 <el-table-column
295 296 prop="studentCode"
296 297 label="学号"
... ... @@ -371,6 +372,7 @@ export default {
371 372 components: { editAnswer },
372 373 data() {
373 374 return {
  375 + tableMaxHeight:300,
374 376 role: "",
375 377 loading: false,
376 378 diaUp: false,
... ... @@ -415,6 +417,17 @@ export default {
415 417 }
416 418 },
417 419 methods: {
  420 + changeSub(val) {
  421 + let sub;
  422 + if (val && val.length) {
  423 + let leng = val.length - 1;
  424 + sub = val[leng];
  425 + }
  426 + console.log(val)
  427 + this.query.subjectNames = val.filter((item) => {
  428 + return sub != "全部" ? item != "全部" : item == "全部";
  429 + });
  430 + },
418 431 linkTo(obj) {
419 432 //去详情
420 433 this.$router.push({
... ... @@ -516,6 +529,7 @@ export default {
516 529 this.dialogVisible = true;
517 530 },
518 531 changeTab() {
  532 + this.tableMaxHeight = this.$refs.main.offsetHeight-100
519 533 this.page = 1;
520 534 this._QueryData();
521 535 },
... ... @@ -614,9 +628,10 @@ export default {
614 628 return item.value;
615 629 });
616 630 query["subjectNames"].shift();
617   - }else{
618   - this.loading = false;
619   - return
  631 + }
  632 + if (!query["subjectNames"]) {
  633 + this.$message.warning("请选择科目");
  634 + return;
620 635 }
621 636 }
622 637 const { data, status, info } = await this.$request.examReportList({
... ... @@ -739,8 +754,8 @@ div::-webkit-scrollbar-thumb {
739 754 <style lang="scss" scoped>
740 755 .page-container {
741 756 position: relative;
  757 + min-height: 100%;
742 758 &.active {
743   - height: 100%;
744 759 overflow: hidden;
745 760 }
746 761 }
... ...