Commit e17ec73967aa4fd63d93ee0f026998345a5e3649
1 parent
079cb4cf
随堂问,即时测导出爆表修改
Showing
16 changed files
with
448 additions
and
172 deletions
src/api/apis/apis.js
@@ -1606,15 +1606,6 @@ export default { | @@ -1606,15 +1606,6 @@ export default { | ||
1606 | }, | 1606 | }, |
1607 | 1607 | ||
1608 | 1608 | ||
1609 | - /** v1.5 */ | ||
1610 | - // 教师/个人版查询答题卡列表的分享数量 | ||
1611 | - paperShareCount(data) { | ||
1612 | - return service({ | ||
1613 | - url: setUpUrls.paperShareCount, | ||
1614 | - method: "POST", | ||
1615 | - data | ||
1616 | - }); | ||
1617 | - }, | ||
1618 | // 教师/个人版导入备题组卷Word文档 | 1609 | // 教师/个人版导入备题组卷Word文档 |
1619 | paperWordUpload(data) { | 1610 | paperWordUpload(data) { |
1620 | return service({ | 1611 | return service({ |
src/api/urls/apis.js
@@ -420,8 +420,6 @@ export default { | @@ -420,8 +420,6 @@ export default { | ||
420 | 420 | ||
421 | 421 | ||
422 | /** v1.5 */ | 422 | /** v1.5 */ |
423 | - // 教师/个人版查询答题卡列表的分享数量 | ||
424 | - paperShareCount: "/api_html/common/paper/paperShareCount", | ||
425 | // 教师/个人版导入备题组卷Word文档 | 423 | // 教师/个人版导入备题组卷Word文档 |
426 | paperWordUpload: "/api_html/common/paper/upload", | 424 | paperWordUpload: "/api_html/common/paper/upload", |
427 | // 删除随堂问报表 | 425 | // 删除随堂问报表 |
src/components/exportDia.vue
0 → 100644
1 | +<template> | ||
2 | + <div> | ||
3 | + <el-dialog :close-on-click-modal="false" :visible.sync="diaShow" width="360px"> | ||
4 | + <div v-show="exportType == 1"> | ||
5 | + <div class="down-item"> | ||
6 | + <p class="tit">是否将学生表现折线图一起导出</p> | ||
7 | + <el-radio-group v-model="downType" @change="changeDownType"> | ||
8 | + <el-radio :label="1">不导出</el-radio> | ||
9 | + <el-radio :label="2">导出</el-radio> | ||
10 | + </el-radio-group> | ||
11 | + </div> | ||
12 | + <div class="down-item" v-show="downType == 2"> | ||
13 | + <p class="tit">选择要导出的学生</p> | ||
14 | + <el-radio-group v-model="exportType"> | ||
15 | + <el-radio :label="1">导出全部</el-radio> | ||
16 | + <el-radio :label="2">导出制定学生</el-radio> | ||
17 | + </el-radio-group> | ||
18 | + </div> | ||
19 | + </div> | ||
20 | + <ul v-show="exportType == 2"> | ||
21 | + <p class="export-tit">选择学生</p> | ||
22 | + <el-table :data="exportStudent" @selection-change="handleSelectionChange" :max-height="300"> | ||
23 | + <el-table-column type="selection"></el-table-column> | ||
24 | + <el-table-column prop="studentName" label="姓名" align="center"></el-table-column> | ||
25 | + <el-table-column prop="classRank" label="班名" align="center"></el-table-column> | ||
26 | + <el-table-column prop="correctRate" label="总正确率" align="center"><template slot-scope="scoped">{{ | ||
27 | + scoped.row.correctRate }}%</template></el-table-column> | ||
28 | + </el-table> | ||
29 | + </ul> | ||
30 | + <div class="dialog-footer" slot="footer"> | ||
31 | + <el-button v-show="downType == 2" size="small" type="primary" round @click="exportData(10)">导出前十</el-button> | ||
32 | + <el-button size="small" type="primary" round @click="exportData(0)">确 定</el-button> | ||
33 | + <el-button size="small" type="danger" round @click="cancel">取 消</el-button> | ||
34 | + </div> | ||
35 | + </el-dialog> | ||
36 | + </div> | ||
37 | +</template> | ||
38 | +<script> | ||
39 | +export default { | ||
40 | + name: "exportDia", | ||
41 | + props: { | ||
42 | + diaShow: Boolean, | ||
43 | + exportStudent: Array | ||
44 | + }, | ||
45 | + data() { | ||
46 | + return { | ||
47 | + downType: 1, | ||
48 | + exportType: 1, | ||
49 | + multipleSelection: [], | ||
50 | + } | ||
51 | + }, | ||
52 | + watch: { | ||
53 | + diaShow: function (nVal) { | ||
54 | + if (nVal) { | ||
55 | + this.downType = 1 | ||
56 | + } | ||
57 | + } | ||
58 | + }, | ||
59 | + methods: { | ||
60 | + changeDownType() { | ||
61 | + this.exportType = 1 | ||
62 | + }, | ||
63 | + handleSelectionChange(val) { | ||
64 | + this.multipleSelection = val | ||
65 | + }, | ||
66 | + exportData(length) { | ||
67 | + let studentIds = [] | ||
68 | + if (length) { | ||
69 | + studentIds = this.exportStudent.slice(0, 10).map(item => { | ||
70 | + return item.studentId | ||
71 | + }) | ||
72 | + } else { | ||
73 | + studentIds = this.multipleSelection.map(item => { | ||
74 | + return item.studentId | ||
75 | + }) | ||
76 | + } | ||
77 | + this.$emit('exportData', { studentIds: studentIds }) | ||
78 | + }, | ||
79 | + cancel() { | ||
80 | + if (this.exportType == 2) { | ||
81 | + this.exportType = 1 | ||
82 | + } else { | ||
83 | + this.$emit('cancel') | ||
84 | + } | ||
85 | + } | ||
86 | + } | ||
87 | +} | ||
88 | +</script> | ||
0 | \ No newline at end of file | 89 | \ No newline at end of file |
src/main.js
@@ -28,7 +28,7 @@ Vue.use(permission) | @@ -28,7 +28,7 @@ Vue.use(permission) | ||
28 | NProgress.inc(0.2) | 28 | NProgress.inc(0.2) |
29 | NProgress.configure({ easing: "ease", speed: 500, showSpinner: false }) | 29 | NProgress.configure({ easing: "ease", speed: 500, showSpinner: false }) |
30 | 30 | ||
31 | -import "@/mock/index.js" | 31 | +// import "@/mock/index.js" |
32 | 32 | ||
33 | Array.prototype.remove = function (val) { | 33 | Array.prototype.remove = function (val) { |
34 | var index = this.indexOf(val); | 34 | var index = this.indexOf(val); |
src/mock/index.js
1 | import Mock from "mockjs" | 1 | import Mock from "mockjs" |
2 | Mock.mock( | 2 | Mock.mock( |
3 | - "/api_html/common/paper/paperShareCount", { | 3 | + "/api_html/teaching/paperList", { |
4 | info: "success", | 4 | info: "success", |
5 | status: 0, | 5 | status: 0, |
6 | data: { | 6 | data: { |
7 | - myCount: 24, | ||
8 | - grade: 30 | 7 | + myCount: 5, |
8 | + gradeCount: 8, | ||
9 | + archivedTotal: 6, | ||
10 | + total: 30, | ||
11 | + list: [ | ||
12 | + { | ||
13 | + "sectionName": "小学", | ||
14 | + "gradeName": "三年级", | ||
15 | + "id": 107, | ||
16 | + "tenantId": 9, | ||
17 | + "regionId": 0, | ||
18 | + "schoolId": 34, | ||
19 | + "classId": 696, | ||
20 | + "thirdId": "", | ||
21 | + "section": 1, | ||
22 | + "grade": 3, | ||
23 | + "subjectName": "语文", | ||
24 | + "title": "X102_语文_课时 4", | ||
25 | + "startTime": "2023-04-18 17:43:50", | ||
26 | + "endTime": "2023-04-18 17:47:06", | ||
27 | + "calculateStatus": 1, | ||
28 | + "duration": 196, | ||
29 | + "status": 0, | ||
30 | + "consumingDuration": 3140, | ||
31 | + "classPersonNum": 11, | ||
32 | + "answeredNum": 1, | ||
33 | + "unansweredNum": 20, | ||
34 | + "questionNum": 1, | ||
35 | + "answerNum": 1, | ||
36 | + "totalAnswersNum": 1, | ||
37 | + "totalCorrectAnswersNum": 1, | ||
38 | + "participationRate": 9.09, | ||
39 | + "classCorrectRate": 9.09, | ||
40 | + "answerCorrectRate": 100, | ||
41 | + "levelConfig": "{\"failed\":0.6,\"pass\":0.8,\"good\":0.9}", | ||
42 | + "passedNum": 1, | ||
43 | + "passedRate": 9.09, | ||
44 | + "excellenNum": 1, | ||
45 | + "excellenRate": 9.09, | ||
46 | + "goodNum": 0, | ||
47 | + "goodRate": 0, | ||
48 | + "passNum": 0, | ||
49 | + "passRate": 0, | ||
50 | + "failedNum": 0, | ||
51 | + "failedRate": 0, | ||
52 | + "latestCalculateTime": "2023-04-19 14:08:35", | ||
53 | + "createdTime": "2023-04-19 14:08:35", | ||
54 | + "modifiedTime": "2023-04-19 14:08:35", | ||
55 | + "deleteFlag": 0 | ||
56 | + }, | ||
57 | + { | ||
58 | + "sectionName": "小学", | ||
59 | + "gradeName": "二年级", | ||
60 | + "id": 106, | ||
61 | + "tenantId": 9, | ||
62 | + "regionId": 0, | ||
63 | + "schoolId": 34, | ||
64 | + "classId": 696, | ||
65 | + "thirdId": "", | ||
66 | + "section": 1, | ||
67 | + "grade": 2, | ||
68 | + "subjectName": "语文", | ||
69 | + "title": "X102_语文_课时 2", | ||
70 | + "startTime": "2023-04-18 15:58:27", | ||
71 | + "endTime": "2023-04-18 16:01:28", | ||
72 | + "calculateStatus": 1, | ||
73 | + "duration": 182, | ||
74 | + "status": 0, | ||
75 | + "consumingDuration": 2640, | ||
76 | + "classPersonNum": 11, | ||
77 | + "answeredNum": 1, | ||
78 | + "unansweredNum": 18, | ||
79 | + "questionNum": 1, | ||
80 | + "answerNum": 1, | ||
81 | + "totalAnswersNum": 1, | ||
82 | + "totalCorrectAnswersNum": 1, | ||
83 | + "participationRate": 9.09, | ||
84 | + "classCorrectRate": 9.09, | ||
85 | + "answerCorrectRate": 100, | ||
86 | + "levelConfig": "{\"failed\":0.6,\"pass\":0.8,\"good\":0.9}", | ||
87 | + "passedNum": 1, | ||
88 | + "passedRate": 9.09, | ||
89 | + "excellenNum": 1, | ||
90 | + "excellenRate": 9.09, | ||
91 | + "goodNum": 0, | ||
92 | + "goodRate": 0, | ||
93 | + "passNum": 0, | ||
94 | + "passRate": 0, | ||
95 | + "failedNum": 0, | ||
96 | + "failedRate": 0, | ||
97 | + "latestCalculateTime": "2023-04-18 16:01:29", | ||
98 | + "createdTime": "2023-04-18 16:01:28", | ||
99 | + "modifiedTime": "2023-04-18 16:01:29", | ||
100 | + "deleteFlag": 0 | ||
101 | + }, | ||
102 | + { | ||
103 | + "sectionName": "小学", | ||
104 | + "gradeName": "二年级", | ||
105 | + "id": 105, | ||
106 | + "tenantId": 9, | ||
107 | + "regionId": 0, | ||
108 | + "schoolId": 34, | ||
109 | + "classId": 696, | ||
110 | + "thirdId": "", | ||
111 | + "section": 1, | ||
112 | + "grade": 2, | ||
113 | + "subjectName": "语文", | ||
114 | + "title": "X102_语文_课时 1", | ||
115 | + "startTime": "2023-04-18 15:16:11", | ||
116 | + "endTime": "2023-04-18 15:21:37", | ||
117 | + "calculateStatus": 1, | ||
118 | + "duration": 326, | ||
119 | + "status": 0, | ||
120 | + "consumingDuration": 76880, | ||
121 | + "classPersonNum": 11, | ||
122 | + "answeredNum": 3, | ||
123 | + "unansweredNum": 16, | ||
124 | + "questionNum": 1, | ||
125 | + "answerNum": 1, | ||
126 | + "totalAnswersNum": 3, | ||
127 | + "totalCorrectAnswersNum": 2, | ||
128 | + "participationRate": 27.27, | ||
129 | + "classCorrectRate": 18.18, | ||
130 | + "answerCorrectRate": 66.67, | ||
131 | + "levelConfig": "{\"failed\":0.6,\"pass\":0.8,\"good\":0.9}", | ||
132 | + "passedNum": 2, | ||
133 | + "passedRate": 18.18, | ||
134 | + "excellenNum": 2, | ||
135 | + "excellenRate": 18.18, | ||
136 | + "goodNum": 0, | ||
137 | + "goodRate": 0, | ||
138 | + "passNum": 0, | ||
139 | + "passRate": 0, | ||
140 | + "failedNum": 1, | ||
141 | + "failedRate": 9.09, | ||
142 | + "latestCalculateTime": "2023-04-18 15:58:23", | ||
143 | + "createdTime": "2023-04-18 15:58:23", | ||
144 | + "modifiedTime": "2023-04-18 15:58:23", | ||
145 | + "deleteFlag": 0 | ||
146 | + }, | ||
147 | + { | ||
148 | + "sectionName": "小学", | ||
149 | + "gradeName": "二年级", | ||
150 | + "id": 103, | ||
151 | + "tenantId": 9, | ||
152 | + "regionId": 0, | ||
153 | + "schoolId": 34, | ||
154 | + "classId": 696, | ||
155 | + "thirdId": "", | ||
156 | + "section": 1, | ||
157 | + "grade": 2, | ||
158 | + "subjectName": "语文", | ||
159 | + "title": "X102_语文_课时 1", | ||
160 | + "startTime": "2023-04-18 14:20:16", | ||
161 | + "endTime": "2023-04-18 14:57:09", | ||
162 | + "calculateStatus": 1, | ||
163 | + "duration": 2213, | ||
164 | + "status": 0, | ||
165 | + "consumingDuration": 229820, | ||
166 | + "classPersonNum": 9, | ||
167 | + "answeredNum": 1, | ||
168 | + "unansweredNum": 16, | ||
169 | + "questionNum": 4, | ||
170 | + "answerNum": 4, | ||
171 | + "totalAnswersNum": 4, | ||
172 | + "totalCorrectAnswersNum": 4, | ||
173 | + "participationRate": 11.11, | ||
174 | + "classCorrectRate": 11.11, | ||
175 | + "answerCorrectRate": 100, | ||
176 | + "levelConfig": "{\"failed\":0.6,\"pass\":0.8,\"good\":0.9}", | ||
177 | + "passedNum": 1, | ||
178 | + "passedRate": 11.11, | ||
179 | + "excellenNum": 1, | ||
180 | + "excellenRate": 11.11, | ||
181 | + "goodNum": 0, | ||
182 | + "goodRate": 0, | ||
183 | + "passNum": 0, | ||
184 | + "passRate": 0, | ||
185 | + "failedNum": 0, | ||
186 | + "failedRate": 0, | ||
187 | + "latestCalculateTime": "2023-04-18 15:02:33", | ||
188 | + "createdTime": "2023-04-18 15:02:32", | ||
189 | + "modifiedTime": "2023-04-18 15:02:33", | ||
190 | + "deleteFlag": 0 | ||
191 | + }, | ||
192 | + { | ||
193 | + "sectionName": "小学", | ||
194 | + "gradeName": "一年级", | ||
195 | + "id": 102, | ||
196 | + "tenantId": 9, | ||
197 | + "regionId": 0, | ||
198 | + "schoolId": 34, | ||
199 | + "classId": 696, | ||
200 | + "thirdId": "", | ||
201 | + "section": 1, | ||
202 | + "grade": 1, | ||
203 | + "subjectName": "语文", | ||
204 | + "title": "X102_语文_课时 1", | ||
205 | + "startTime": "2023-04-18 11:09:20", | ||
206 | + "endTime": "2023-04-18 13:59:30", | ||
207 | + "calculateStatus": 1, | ||
208 | + "duration": 10210, | ||
209 | + "status": 0, | ||
210 | + "consumingDuration": 12380, | ||
211 | + "classPersonNum": 9, | ||
212 | + "answeredNum": 1, | ||
213 | + "unansweredNum": 16, | ||
214 | + "questionNum": 2, | ||
215 | + "answerNum": 2, | ||
216 | + "totalAnswersNum": 2, | ||
217 | + "totalCorrectAnswersNum": 1, | ||
218 | + "participationRate": 11.11, | ||
219 | + "classCorrectRate": 5.56, | ||
220 | + "answerCorrectRate": 50, | ||
221 | + "levelConfig": "{\"failed\":0.6,\"pass\":0.8,\"good\":0.9}", | ||
222 | + "passedNum": 0, | ||
223 | + "passedRate": 0, | ||
224 | + "excellenNum": 0, | ||
225 | + "excellenRate": 0, | ||
226 | + "goodNum": 0, | ||
227 | + "goodRate": 0, | ||
228 | + "passNum": 0, | ||
229 | + "passRate": 0, | ||
230 | + "failedNum": 1, | ||
231 | + "failedRate": 11.11, | ||
232 | + "latestCalculateTime": "2023-04-18 13:59:36", | ||
233 | + "createdTime": "2023-04-18 13:59:35", | ||
234 | + "modifiedTime": "2023-04-18 13:59:36", | ||
235 | + "deleteFlag": 0 | ||
236 | + } | ||
237 | + ] | ||
9 | } | 238 | } |
10 | } | 239 | } |
11 | ) | 240 | ) |
@@ -682,8 +911,8 @@ Mock.mock( | @@ -682,8 +911,8 @@ Mock.mock( | ||
682 | "participationCount": '5', | 911 | "participationCount": '5', |
683 | "classRank": '1', | 912 | "classRank": '1', |
684 | "score": '100', | 913 | "score": '100', |
685 | - "participationRate":'88', | ||
686 | - "correctRate":'90', | 914 | + "participationRate": '88', |
915 | + "correctRate": '90', | ||
687 | }, | 916 | }, |
688 | { | 917 | { |
689 | "subjectName": "英语", | 918 | "subjectName": "英语", |
@@ -691,8 +920,8 @@ Mock.mock( | @@ -691,8 +920,8 @@ Mock.mock( | ||
691 | "participationCount": '5', | 920 | "participationCount": '5', |
692 | "classRank": '2', | 921 | "classRank": '2', |
693 | "score": '100', | 922 | "score": '100', |
694 | - "participationRate":'70', | ||
695 | - "correctRate":'76', | 923 | + "participationRate": '70', |
924 | + "correctRate": '76', | ||
696 | }, | 925 | }, |
697 | { | 926 | { |
698 | "subjectName": "语文", | 927 | "subjectName": "语文", |
@@ -700,8 +929,8 @@ Mock.mock( | @@ -700,8 +929,8 @@ Mock.mock( | ||
700 | "participationCount": '5', | 929 | "participationCount": '5', |
701 | "classRank": '2', | 930 | "classRank": '2', |
702 | "score": '100', | 931 | "score": '100', |
703 | - "participationRate":'99', | ||
704 | - "correctRate":'100', | 932 | + "participationRate": '99', |
933 | + "correctRate": '100', | ||
705 | }, | 934 | }, |
706 | ] | 935 | ] |
707 | }], | 936 | }], |
src/views/basic/ask/analysis.vue
@@ -35,39 +35,7 @@ | @@ -35,39 +35,7 @@ | ||
35 | icon="el-icon-printer">打印</el-button> | 35 | icon="el-icon-printer">打印</el-button> |
36 | </p> | 36 | </p> |
37 | </div> | 37 | </div> |
38 | - <el-dialog :close-on-click-modal="false" :visible.sync="diaDown" width="360px"> | ||
39 | - <div v-show="exportType == 1"> | ||
40 | - <div class="down-item"> | ||
41 | - <p class="tit">是否将学生表现折线图一起导出</p> | ||
42 | - <el-radio-group v-model="downType" @change="changeDownType"> | ||
43 | - <el-radio :label="1">不导出</el-radio> | ||
44 | - <el-radio :label="2">导出</el-radio> | ||
45 | - </el-radio-group> | ||
46 | - </div> | ||
47 | - <div class="down-item" v-show="downType == 2"> | ||
48 | - <p class="tit">选择要导出的学生</p> | ||
49 | - <el-radio-group v-model="exportType"> | ||
50 | - <el-radio :label="1">导出全部</el-radio> | ||
51 | - <el-radio :label="2">导出制定学生</el-radio> | ||
52 | - </el-radio-group> | ||
53 | - </div> | ||
54 | - </div> | ||
55 | - <ul v-show="exportType == 2"> | ||
56 | - <p class="export-tit">选择学生</p> | ||
57 | - <el-table :data="exportStudent" @selection-change="handleSelectionChange" :max-height="300"> | ||
58 | - <el-table-column type="selection"></el-table-column> | ||
59 | - <el-table-column prop="studentName" label="姓名" align="center"></el-table-column> | ||
60 | - <el-table-column prop="classRank" label="班名" align="center"></el-table-column> | ||
61 | - <el-table-column prop="correctRate" label="总正确率" align="center"><template slot-scope="scoped">{{ | ||
62 | - scoped.row.correctRate }}%</template></el-table-column> | ||
63 | - </el-table> | ||
64 | - </ul> | ||
65 | - <div class="dialog-footer" slot="footer"> | ||
66 | - <el-button v-show="downType == 2" size="small" type="primary" round @click="exportData(10)">导出前十</el-button> | ||
67 | - <el-button size="small" type="primary" round @click="exportData(0)">确 定</el-button> | ||
68 | - <el-button size="small" type="danger" round @click="cancel">取 消</el-button> | ||
69 | - </div> | ||
70 | - </el-dialog> | 38 | + <ExportDia :exportStudent="exportStudent" :diaShow="diaShow" @cancel="cancel" @exportData="exportData" /> |
71 | </div> | 39 | </div> |
72 | </div> | 40 | </div> |
73 | </template> | 41 | </template> |
@@ -96,11 +64,9 @@ export default { | @@ -96,11 +64,9 @@ export default { | ||
96 | size: 20, | 64 | size: 20, |
97 | total: 0, | 65 | total: 0, |
98 | status: 0, | 66 | status: 0, |
99 | - diaDown: false, | ||
100 | - downType: 1, | ||
101 | - exportType: 1, | 67 | + //导出相关 |
68 | + diaShow: false, | ||
102 | exportStudent: [], | 69 | exportStudent: [], |
103 | - multipleSelection: [], | ||
104 | }; | 70 | }; |
105 | }, | 71 | }, |
106 | created() { | 72 | created() { |
@@ -216,7 +182,7 @@ export default { | @@ -216,7 +182,7 @@ export default { | ||
216 | } | 182 | } |
217 | } | 183 | } |
218 | if (this.types == 1) { | 184 | if (this.types == 1) { |
219 | - query.type = this.type | 185 | + query.type = this.type - 1 |
220 | } | 186 | } |
221 | this.loading = true; | 187 | this.loading = true; |
222 | let { data, info, status } = await queryData({ | 188 | let { data, info, status } = await queryData({ |
@@ -265,7 +231,7 @@ export default { | @@ -265,7 +231,7 @@ export default { | ||
265 | 231 | ||
266 | let query = {}; | 232 | let query = {}; |
267 | if (this.types == 1) { | 233 | if (this.types == 1) { |
268 | - query.type = this.type | 234 | + query.type = this.type - 1 |
269 | } | 235 | } |
270 | this.loading = true; | 236 | this.loading = true; |
271 | let { data, info, status } = await queryData({ | 237 | let { data, info, status } = await queryData({ |
@@ -282,38 +248,17 @@ export default { | @@ -282,38 +248,17 @@ export default { | ||
282 | } | 248 | } |
283 | }, | 249 | }, |
284 | 250 | ||
285 | - | 251 | + //导出 |
286 | openDown() { | 252 | openDown() { |
287 | - this.diaDown = true; | ||
288 | - this.downType = 1 | 253 | + this.diaShow = true; |
289 | }, | 254 | }, |
290 | cancel() { | 255 | cancel() { |
291 | - if (this.exportType == 2) { | ||
292 | - this.exportType = 1 | ||
293 | - } else { | ||
294 | - this.diaDown = false; | ||
295 | - } | 256 | + this.diaShow = false; |
296 | }, | 257 | }, |
297 | - changeDownType() { | ||
298 | - this.exportType = 1 | ||
299 | - }, | ||
300 | - handleSelectionChange(val) { | ||
301 | - this.multipleSelection = val | ||
302 | - }, | ||
303 | - //导出 | ||
304 | - async exportData(length) { | 258 | + async exportData(arr) { |
305 | if (this.exportLoading == true) return; | 259 | if (this.exportLoading == true) return; |
306 | this.exportLoading = true; | 260 | this.exportLoading = true; |
307 | - let studentIds = [] | ||
308 | - if (length) { | ||
309 | - studentIds = this.exportStudent.slice(0, 10).map(item => { | ||
310 | - return item.studentId | ||
311 | - }) | ||
312 | - } else { | ||
313 | - studentIds = this.multipleSelection.map(item => { | ||
314 | - return item.studentId | ||
315 | - }) | ||
316 | - } | 261 | + let studentIds = arr |
317 | let query = {}; | 262 | let query = {}; |
318 | if (studentIds.length == this.exportStudent.length) { | 263 | if (studentIds.length == this.exportStudent.length) { |
319 | query.studentIds = [] | 264 | query.studentIds = [] |
src/views/basic/ask/components/answerQustion.vue
@@ -147,22 +147,24 @@ export default { | @@ -147,22 +147,24 @@ export default { | ||
147 | }, | 147 | }, |
148 | methods: { | 148 | methods: { |
149 | setDuration(times) { | 149 | setDuration(times) { |
150 | - let m = parseInt(times / 1000 / 60); | ||
151 | - let s = parseInt((times / 1000) % 60); | ||
152 | - let ms = times; | ||
153 | - let aTime; | ||
154 | - if (times == 0) { | ||
155 | - aTime = `0`; | ||
156 | - } else { | ||
157 | - if (m == 0 && s == 0) { | ||
158 | - aTime = `${ms}毫秒`; | ||
159 | - } else if (m == 0 && s != 0) { | ||
160 | - aTime = `${s}秒`; | ||
161 | - } else if (m != 0 && s != 0) { | ||
162 | - aTime = `${m}分${s}秒`; | 150 | + if (times) { |
151 | + let m = parseInt(times / 1000 / 60); | ||
152 | + let s = parseInt((times / 1000) % 60); | ||
153 | + let ms = times; | ||
154 | + let aTime; | ||
155 | + if (times == 0) { | ||
156 | + aTime = `0`; | ||
157 | + } else { | ||
158 | + if (m == 0 && s == 0) { | ||
159 | + aTime = `${ms}毫秒`; | ||
160 | + } else if (m == 0 && s != 0) { | ||
161 | + aTime = `${s}秒`; | ||
162 | + } else if (m != 0 && s != 0) { | ||
163 | + aTime = `${m}分${s}秒`; | ||
164 | + } | ||
163 | } | 165 | } |
166 | + return aTime; | ||
164 | } | 167 | } |
165 | - return aTime; | ||
166 | }, | 168 | }, |
167 | } | 169 | } |
168 | }; | 170 | }; |
src/views/basic/ask/components/interact.vue
@@ -39,26 +39,25 @@ export default { | @@ -39,26 +39,25 @@ export default { | ||
39 | resultData: function () { | 39 | resultData: function () { |
40 | let resultData = [] | 40 | let resultData = [] |
41 | if (this.tableData.length) { | 41 | if (this.tableData.length) { |
42 | - if (this.types == "3") { | ||
43 | - let subjectName = []; | ||
44 | - resultData = data?.list.map((item) => { | ||
45 | - let params = {}; | ||
46 | - item.dataList.map((items, index) => { | ||
47 | - if (!subjectName.includes(items.subjectName)) { | ||
48 | - subjectName.push(items.subjectName); | ||
49 | - } | ||
50 | - params["interactionsNum" + items.subjectName] = | ||
51 | - items.interactionsNum; | ||
52 | - params["interactionsCorrectNum" + items.subjectName] = | ||
53 | - items.interactionsCorrectNum; | ||
54 | - }); | ||
55 | - return { | ||
56 | - ...item, | ||
57 | - ...params, | ||
58 | - }; | 42 | + |
43 | + let subjectName = []; | ||
44 | + resultData = this.tableData?.map((item) => { | ||
45 | + let params = {}; | ||
46 | + item.dataList?.map((items, index) => { | ||
47 | + if (!subjectName.includes(items.subjectName)) { | ||
48 | + subjectName.push(items.subjectName); | ||
49 | + } | ||
50 | + params["interactionsNum" + items.subjectName] = | ||
51 | + items.interactionsNum; | ||
52 | + params["interactionsCorrectNum" + items.subjectName] = | ||
53 | + items.interactionsCorrectNum; | ||
59 | }); | 54 | }); |
60 | - this.phaseInter = [...subjectName]; | ||
61 | - } | 55 | + return { |
56 | + ...item, | ||
57 | + ...params, | ||
58 | + }; | ||
59 | + }); | ||
60 | + this.phaseInter = [...subjectName]; | ||
62 | } else { | 61 | } else { |
63 | resultData = [] | 62 | resultData = [] |
64 | this.optionsList = [] | 63 | this.optionsList = [] |
src/views/basic/ask/list.vue
@@ -13,14 +13,14 @@ | @@ -13,14 +13,14 @@ | ||
13 | </back-box> | 13 | </back-box> |
14 | <div v-show="!isDetail" class="table-box"> | 14 | <div v-show="!isDetail" class="table-box"> |
15 | <div class="table-cont" v-loading="loading"> | 15 | <div class="table-cont" v-loading="loading"> |
16 | - <p class="btn-box"> | 16 | + <p class="btn-box" v-if="tableData.length"> |
17 | <el-button type="primary" round @click="linkToDetail2">查看汇总报表</el-button> | 17 | <el-button type="primary" round @click="linkToDetail2">查看汇总报表</el-button> |
18 | </p> | 18 | </p> |
19 | <div> | 19 | <div> |
20 | <el-table :data="tableData" border :show-header="total > 0" style="width: 100%" | 20 | <el-table :data="tableData" border :show-header="total > 0" style="width: 100%" |
21 | @selection-change="handleSelectionChange"> | 21 | @selection-change="handleSelectionChange"> |
22 | <el-table-column type="selection" width="40"></el-table-column> | 22 | <el-table-column type="selection" width="40"></el-table-column> |
23 | - <el-table-column prop="subject" label="科目" align="center" width="80"></el-table-column> | 23 | + <el-table-column prop="subjectName" label="科目" align="center" width="80"></el-table-column> |
24 | <el-table-column prop="title" label="课时名称" align="center"></el-table-column> | 24 | <el-table-column prop="title" label="课时名称" align="center"></el-table-column> |
25 | <el-table-column prop="participationRate" label="总参与度" align="center"> <template slot-scope="scoped">{{ | 25 | <el-table-column prop="participationRate" label="总参与度" align="center"> <template slot-scope="scoped">{{ |
26 | scoped.row.participationRate }}%</template></el-table-column> | 26 | scoped.row.participationRate }}%</template></el-table-column> |
@@ -142,6 +142,9 @@ export default { | @@ -142,6 +142,9 @@ export default { | ||
142 | }, | 142 | }, |
143 | //去详情 | 143 | //去详情 |
144 | linkToDetail2() { | 144 | linkToDetail2() { |
145 | + if (this.multipleSelection.length == 0) { | ||
146 | + this.$message.warning("未选择课时,请选择~") | ||
147 | + return } | ||
145 | let subjectArr = [] | 148 | let subjectArr = [] |
146 | const ids = this.multipleSelection.map(item => { | 149 | const ids = this.multipleSelection.map(item => { |
147 | subjectArr.push(item.subject) | 150 | subjectArr.push(item.subject) |
src/views/basic/test/analysis.vue
@@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
2 | <div ref="main" class="page-container"> | 2 | <div ref="main" class="page-container"> |
3 | <back-box> | 3 | <back-box> |
4 | <template slot="title"> | 4 | <template slot="title"> |
5 | - <span>{{ type == 1 ? '单卷测练报表' : type == 2 ? subject + "汇总报表" : type == 3 ? "多科汇总报表" : | 5 | + <span>{{ type == 1 ? '单卷测练报表' : type == 2 ? subjectName + "汇总报表" : type == 3 ? "多科汇总报表" : |
6 | `多班_${subjectName}_${title}_测练成绩对比分析` }}</span> | 6 | `多班_${subjectName}_${title}_测练成绩对比分析` }}</span> |
7 | </template> | 7 | </template> |
8 | </back-box> | 8 | </back-box> |
@@ -44,8 +44,8 @@ export default { | @@ -44,8 +44,8 @@ export default { | ||
44 | this.ids = this.$route.query.ids && this.$route.query.ids.split() || ""; | 44 | this.ids = this.$route.query.ids && this.$route.query.ids.split() || ""; |
45 | this.type = this.$route.query.type | 45 | this.type = this.$route.query.type |
46 | this.classId = this.$route.query.classId || ""; | 46 | this.classId = this.$route.query.classId || ""; |
47 | - this.subjectName = this.$route.query.subjectName || "" | ||
48 | this.title = this.$route.query.title || "" | 47 | this.title = this.$route.query.title || "" |
48 | + this.subjectName = this.$route.query.subjectName || "" | ||
49 | }, | 49 | }, |
50 | methods: { | 50 | methods: { |
51 | 51 |
src/views/basic/test/components/multipleSubTest.vue
@@ -29,7 +29,7 @@ | @@ -29,7 +29,7 @@ | ||
29 | </el-table> | 29 | </el-table> |
30 | </div> | 30 | </div> |
31 | <div class="down"> | 31 | <div class="down"> |
32 | - <el-button @click="exportData" type="primary" plain round icon="fa fa-cloud-download">导出报表</el-button> | 32 | + <el-button @click="openDown" type="primary" plain round icon="fa fa-cloud-download">导出报表</el-button> |
33 | <el-button v-if="!this.$store.getters.code" @click="print" type="primary" plain round | 33 | <el-button v-if="!this.$store.getters.code" @click="print" type="primary" plain round |
34 | icon="el-icon-printer">打印</el-button> | 34 | icon="el-icon-printer">打印</el-button> |
35 | </div> | 35 | </div> |
@@ -38,6 +38,7 @@ | @@ -38,6 +38,7 @@ | ||
38 | <RadarChart id="radarChart" :params="chartData" /> | 38 | <RadarChart id="radarChart" :params="chartData" /> |
39 | </div> | 39 | </div> |
40 | </el-dialog> | 40 | </el-dialog> |
41 | + <ExportDia :exportStudent="exportStudent" :diaShow="diaShow" @cancel="cancel" @exportData="exportData" /> | ||
41 | </div> | 42 | </div> |
42 | </template> | 43 | </template> |
43 | <script> | 44 | <script> |
@@ -46,7 +47,7 @@ import RadarChart from "@/components/charts/radarChart" | @@ -46,7 +47,7 @@ import RadarChart from "@/components/charts/radarChart" | ||
46 | import { downloadFile, tablePrint } from "@/utils"; | 47 | import { downloadFile, tablePrint } from "@/utils"; |
47 | export default { | 48 | export default { |
48 | components: { | 49 | components: { |
49 | - RadarChart | 50 | + RadarChart, |
50 | }, | 51 | }, |
51 | props: { | 52 | props: { |
52 | role: "", | 53 | role: "", |
@@ -76,6 +77,10 @@ export default { | @@ -76,6 +77,10 @@ export default { | ||
76 | }, | 77 | }, |
77 | chartDia: false, | 78 | chartDia: false, |
78 | chartTitle: "", | 79 | chartTitle: "", |
80 | + | ||
81 | + //导出相关 | ||
82 | + diaShow: false, | ||
83 | + exportStudent: [] | ||
79 | } | 84 | } |
80 | }, | 85 | }, |
81 | computed: { | 86 | computed: { |
@@ -140,6 +145,7 @@ export default { | @@ -140,6 +145,7 @@ export default { | ||
140 | this.chartData.indicator.push({ name: item, max: 100 }) | 145 | this.chartData.indicator.push({ name: item, max: 100 }) |
141 | } | 146 | } |
142 | }) | 147 | }) |
148 | + // 为了美观 | ||
143 | if (this.chartData.indicator.length < 3) { | 149 | if (this.chartData.indicator.length < 3) { |
144 | let num = this.chartData.indicator.length | 150 | let num = this.chartData.indicator.length |
145 | for (let i = 0; i < 6; i++) { | 151 | for (let i = 0; i < 6; i++) { |
@@ -191,16 +197,31 @@ export default { | @@ -191,16 +197,31 @@ export default { | ||
191 | }; | 197 | }; |
192 | }); | 198 | }); |
193 | this.answerList = [...subjectName]; | 199 | this.answerList = [...subjectName]; |
200 | + this.exportStudent = [...this.tableData] | ||
194 | } else { | 201 | } else { |
195 | this.$message.error(info); | 202 | this.$message.error(info); |
196 | } | 203 | } |
197 | }, | 204 | }, |
198 | //导出 | 205 | //导出 |
199 | - async exportData() { | 206 | + openDown() { |
207 | + this.diaShow = true; | ||
208 | + }, | ||
209 | + cancel() { | ||
210 | + this.diaShow = false; | ||
211 | + }, | ||
212 | + async exportData(arr) { | ||
200 | if (this.exportLoading == true) return; | 213 | if (this.exportLoading == true) return; |
201 | this.exportLoading = true; | 214 | this.exportLoading = true; |
215 | + let studentIds = arr | ||
216 | + let query = {}; | ||
217 | + if (studentIds.length == this.exportStudent.length) { | ||
218 | + query.studentIds = [] | ||
219 | + } else if (studentIds.length > 0) { | ||
220 | + query.studentIds = studentIds | ||
221 | + } | ||
202 | const data = await this.$request.exportExamReport({ | 222 | const data = await this.$request.exportExamReport({ |
203 | examId: this.ids, | 223 | examId: this.ids, |
224 | + ...query | ||
204 | }); | 225 | }); |
205 | this.exportLoading = false; | 226 | this.exportLoading = false; |
206 | if (data) { | 227 | if (data) { |
src/views/basic/test/components/multipleTest.vue
@@ -22,7 +22,7 @@ | @@ -22,7 +22,7 @@ | ||
22 | </el-table> | 22 | </el-table> |
23 | </div> | 23 | </div> |
24 | <div class="down"> | 24 | <div class="down"> |
25 | - <el-button @click="exportData" type="primary" plain round icon="fa fa-cloud-download">导出报表</el-button> | 25 | + <el-button @click="openDown" type="primary" plain round icon="fa fa-cloud-download">导出报表</el-button> |
26 | <el-button v-if="!this.$store.getters.code" @click="print" type="primary" plain round | 26 | <el-button v-if="!this.$store.getters.code" @click="print" type="primary" plain round |
27 | icon="el-icon-printer">打印</el-button> | 27 | icon="el-icon-printer">打印</el-button> |
28 | </div> | 28 | </div> |
@@ -31,6 +31,7 @@ | @@ -31,6 +31,7 @@ | ||
31 | <LineChart id="lineChart" :params="chartData" :xAxis="xAxis" /> | 31 | <LineChart id="lineChart" :params="chartData" :xAxis="xAxis" /> |
32 | </div> | 32 | </div> |
33 | </el-dialog> | 33 | </el-dialog> |
34 | + <ExportDia :exportStudent="exportStudent" :diaShow="diaShow" @cancel="cancel" @exportData="exportData" /> | ||
34 | </div> | 35 | </div> |
35 | <!-- 单科多卷 --> | 36 | <!-- 单科多卷 --> |
36 | </template> | 37 | </template> |
@@ -56,6 +57,10 @@ export default { | @@ -56,6 +57,10 @@ export default { | ||
56 | studentName: "", | 57 | studentName: "", |
57 | xAxis: [], | 58 | xAxis: [], |
58 | chartData: [], | 59 | chartData: [], |
60 | + | ||
61 | + //导出相关 | ||
62 | + diaShow: false, | ||
63 | + exportStudent: [] | ||
59 | } | 64 | } |
60 | }, | 65 | }, |
61 | computed: { | 66 | computed: { |
@@ -180,14 +185,29 @@ export default { | @@ -180,14 +185,29 @@ export default { | ||
180 | }; | 185 | }; |
181 | }); | 186 | }); |
182 | this.answerList = dataList; | 187 | this.answerList = dataList; |
188 | + | ||
189 | + this.exportStudent = [...this.tableData] | ||
183 | } else { | 190 | } else { |
184 | this.$message.error(info); | 191 | this.$message.error(info); |
185 | } | 192 | } |
186 | }, | 193 | }, |
187 | //导出 | 194 | //导出 |
188 | - async exportData() { | 195 | + openDown() { |
196 | + this.diaShow = true; | ||
197 | + }, | ||
198 | + cancel() { | ||
199 | + this.diaShow = false; | ||
200 | + }, | ||
201 | + async exportData(arr) { | ||
189 | if (this.exportLoading == true) return; | 202 | if (this.exportLoading == true) return; |
190 | this.exportLoading = true; | 203 | this.exportLoading = true; |
204 | + let studentIds = arr | ||
205 | + let query = {}; | ||
206 | + if (studentIds.length == this.exportStudent.length) { | ||
207 | + query.studentIds = [] | ||
208 | + } else if (studentIds.length > 0) { | ||
209 | + query.studentIds = studentIds | ||
210 | + } | ||
191 | const exportPhaseExamReport = this.role == "ROLE_PERSONAL" | 211 | const exportPhaseExamReport = this.role == "ROLE_PERSONAL" |
192 | ? this.$request.pExportPhaseExamReport | 212 | ? this.$request.pExportPhaseExamReport |
193 | : this.$request.exportPhaseExamReport; | 213 | : this.$request.exportPhaseExamReport; |
src/views/basic/test/components/test.vue
@@ -200,7 +200,7 @@ | @@ -200,7 +200,7 @@ | ||
200 | </div> | 200 | </div> |
201 | <div class="down"> | 201 | <div class="down"> |
202 | <div> | 202 | <div> |
203 | - <el-button @click="exportData" type="primary" plain round icon="fa fa-cloud-download">导出报表</el-button> | 203 | + <el-button @click="openDown" type="primary" plain round icon="fa fa-cloud-download">导出报表</el-button> |
204 | <el-button v-if="!this.$store.getters.code" @click="print" type="primary" plain round | 204 | <el-button v-if="!this.$store.getters.code" @click="print" type="primary" plain round |
205 | icon="el-icon-printer">打印</el-button> | 205 | icon="el-icon-printer">打印</el-button> |
206 | </div> | 206 | </div> |
@@ -239,6 +239,7 @@ | @@ -239,6 +239,7 @@ | ||
239 | <el-button @click="diaMinScore = false">取 消</el-button> | 239 | <el-button @click="diaMinScore = false">取 消</el-button> |
240 | </div> | 240 | </div> |
241 | </el-dialog> | 241 | </el-dialog> |
242 | + <ExportDia :exportStudent="exportStudent" :diaShow="diaShow" @cancel="cancel" @exportData="exportData" /> | ||
242 | </div> | 243 | </div> |
243 | </div> | 244 | </div> |
244 | </template> | 245 | </template> |
@@ -247,7 +248,7 @@ import ScoreSet from "./scoreSet.vue" | @@ -247,7 +248,7 @@ import ScoreSet from "./scoreSet.vue" | ||
247 | import { downloadFile, tablePrint } from "@/utils"; | 248 | import { downloadFile, tablePrint } from "@/utils"; |
248 | export default { | 249 | export default { |
249 | components: { | 250 | components: { |
250 | - ScoreSet | 251 | + ScoreSet, |
251 | }, | 252 | }, |
252 | props: { | 253 | props: { |
253 | role: "", | 254 | role: "", |
@@ -310,9 +311,9 @@ export default { | @@ -310,9 +311,9 @@ export default { | ||
310 | //答题录分 | 311 | //答题录分 |
311 | diaScoreSet: false, | 312 | diaScoreSet: false, |
312 | 313 | ||
313 | - exportType: 1, | ||
314 | - exportStudent: [], | ||
315 | - multipleSelection: [], | 314 | + //导出相关 |
315 | + diaShow: false, | ||
316 | + exportStudent: [] | ||
316 | }; | 317 | }; |
317 | }, | 318 | }, |
318 | created() { | 319 | created() { |
@@ -492,6 +493,7 @@ export default { | @@ -492,6 +493,7 @@ export default { | ||
492 | this.questionList = optionsList.sort((a, b) => { | 493 | this.questionList = optionsList.sort((a, b) => { |
493 | return a.id - b.id; | 494 | return a.id - b.id; |
494 | }); | 495 | }); |
496 | + this.exportStudent = [...this.tableData2] | ||
495 | } else { | 497 | } else { |
496 | this.$message.error(info); | 498 | this.$message.error(info); |
497 | } | 499 | } |
@@ -512,7 +514,7 @@ export default { | @@ -512,7 +514,7 @@ export default { | ||
512 | this.loading = false; | 514 | this.loading = false; |
513 | if (status === 0) { | 515 | if (status === 0) { |
514 | let optionsList = [{}, {}, {}, {}, {}]; | 516 | let optionsList = [{}, {}, {}, {}, {}]; |
515 | - let tableData = data?.list.map((item) => { | 517 | + let tableData = data?.list?.map((item) => { |
516 | let params = {}; | 518 | let params = {}; |
517 | const detail = JSON.parse(item.detail); | 519 | const detail = JSON.parse(item.detail); |
518 | let lastOPtion = detail?.find((item) => { | 520 | let lastOPtion = detail?.find((item) => { |
@@ -553,7 +555,7 @@ export default { | @@ -553,7 +555,7 @@ export default { | ||
553 | ...params, | 555 | ...params, |
554 | }; | 556 | }; |
555 | }); | 557 | }); |
556 | - this.tableData = tableData.sort((a, b) => { | 558 | + this.tableData = tableData?.sort((a, b) => { |
557 | return a.questionIndex - b.questionIndex; | 559 | return a.questionIndex - b.questionIndex; |
558 | }); | 560 | }); |
559 | this.optionsList = [...optionsList]; | 561 | this.optionsList = [...optionsList]; |
@@ -563,20 +565,18 @@ export default { | @@ -563,20 +565,18 @@ export default { | ||
563 | this.$message.error(info); | 565 | this.$message.error(info); |
564 | } | 566 | } |
565 | }, | 567 | }, |
568 | + | ||
566 | //导出 | 569 | //导出 |
567 | - async exportData() { | 570 | + openDown() { |
571 | + this.diaShow = true; | ||
572 | + }, | ||
573 | + cancel() { | ||
574 | + this.diaShow = false; | ||
575 | + }, | ||
576 | + async exportData(arr) { | ||
568 | if (this.exportLoading == true) return; | 577 | if (this.exportLoading == true) return; |
569 | this.exportLoading = true; | 578 | this.exportLoading = true; |
570 | - let studentIds = [] | ||
571 | - if (length) { | ||
572 | - studentIds = this.exportStudent.slice(0, 10).map(item => { | ||
573 | - return item.studentId | ||
574 | - }) | ||
575 | - } else { | ||
576 | - studentIds = this.multipleSelection.map(item => { | ||
577 | - return item.studentId | ||
578 | - }) | ||
579 | - } | 579 | + let studentIds = arr |
580 | let query = {}; | 580 | let query = {}; |
581 | if (studentIds.length == this.exportStudent.length) { | 581 | if (studentIds.length == this.exportStudent.length) { |
582 | query.studentIds = [] | 582 | query.studentIds = [] |
@@ -592,7 +592,7 @@ export default { | @@ -592,7 +592,7 @@ export default { | ||
592 | ...query | 592 | ...query |
593 | }); | 593 | }); |
594 | this.exportLoading = false; | 594 | this.exportLoading = false; |
595 | - if (data) { | 595 | + if (!data.status) { |
596 | let blob = new Blob([data], { | 596 | let blob = new Blob([data], { |
597 | type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", | 597 | type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", |
598 | }); | 598 | }); |
@@ -603,7 +603,7 @@ export default { | @@ -603,7 +603,7 @@ export default { | ||
603 | blob | 603 | blob |
604 | ); | 604 | ); |
605 | } else { | 605 | } else { |
606 | - this.$message.error("下载失败"); | 606 | + this.$message.error(data.info); |
607 | } | 607 | } |
608 | }, | 608 | }, |
609 | }, | 609 | }, |
src/views/basic/test/list.vue
@@ -175,7 +175,7 @@ export default { | @@ -175,7 +175,7 @@ export default { | ||
175 | title: obj.title, | 175 | title: obj.title, |
176 | score: obj.examPaperScore || 0, | 176 | score: obj.examPaperScore || 0, |
177 | type: 1, | 177 | type: 1, |
178 | - subject: obj.subjectName | 178 | + subjectName: obj.subjectName |
179 | }, | 179 | }, |
180 | }); | 180 | }); |
181 | }, | 181 | }, |
src/views/examinationPaper/edit.vue
@@ -395,7 +395,6 @@ export default { | @@ -395,7 +395,6 @@ export default { | ||
395 | this.type = this.$route.query.type || 1; | 395 | this.type = this.$route.query.type || 1; |
396 | this.form.title = this.$route.query.title || ""; | 396 | this.form.title = this.$route.query.title || ""; |
397 | this._QueryDetail(); | 397 | this._QueryDetail(); |
398 | - this._GradeList() | ||
399 | }, | 398 | }, |
400 | methods: { | 399 | methods: { |
401 | // v1.5 | 400 | // v1.5 |
src/views/examinationPaper/index.vue
@@ -201,7 +201,6 @@ export default { | @@ -201,7 +201,6 @@ export default { | ||
201 | } | 201 | } |
202 | await this._QuerySubjectList(); | 202 | await this._QuerySubjectList(); |
203 | this._QueryData(); | 203 | this._QueryData(); |
204 | - this._QueryTotal(); | ||
205 | }, | 204 | }, |
206 | methods: { | 205 | methods: { |
207 | refreshStic() { | 206 | refreshStic() { |
@@ -267,7 +266,7 @@ export default { | @@ -267,7 +266,7 @@ export default { | ||
267 | }, | 266 | }, |
268 | changPaperType(type) { | 267 | changPaperType(type) { |
269 | this.query.type = type | 268 | this.query.type = type |
270 | - this.changShare(1) | 269 | + this.changShare(0) |
271 | }, | 270 | }, |
272 | changePage(page) { | 271 | changePage(page) { |
273 | this.page = page; | 272 | this.page = page; |
@@ -311,14 +310,12 @@ export default { | @@ -311,14 +310,12 @@ export default { | ||
311 | async getData(bool) { | 310 | async getData(bool) { |
312 | this.page = 1; | 311 | this.page = 1; |
313 | this._QueryData(bool); | 312 | this._QueryData(bool); |
314 | - this._QueryTotal(); | ||
315 | }, | 313 | }, |
316 | //切换班级 | 314 | //切换班级 |
317 | async changClazz() { | 315 | async changClazz() { |
318 | this.page = 1; | 316 | this.page = 1; |
319 | await this._QuerySubjectList(); | 317 | await this._QuerySubjectList(); |
320 | this._QueryData(false); | 318 | this._QueryData(false); |
321 | - this._QueryTotal(); | ||
322 | }, | 319 | }, |
323 | //切换类型 | 320 | //切换类型 |
324 | async changShare(share) { | 321 | async changShare(share) { |
@@ -423,6 +420,8 @@ export default { | @@ -423,6 +420,8 @@ export default { | ||
423 | }); | 420 | }); |
424 | this.loading = false; | 421 | this.loading = false; |
425 | if (status === 0) { | 422 | if (status === 0) { |
423 | + this.totalCount.my = data?.myCount || 0; | ||
424 | + this.totalCount.share = data?.gradeCount || 0; | ||
426 | this.archivedTotal = data.archivedTotal; | 425 | this.archivedTotal = data.archivedTotal; |
427 | this.total = data.total; | 426 | this.total = data.total; |
428 | this.tableData = (data.list && [...data.list]) || []; | 427 | this.tableData = (data.list && [...data.list]) || []; |
@@ -430,24 +429,6 @@ export default { | @@ -430,24 +429,6 @@ export default { | ||
430 | this.$message.error(info); | 429 | this.$message.error(info); |
431 | } | 430 | } |
432 | }, | 431 | }, |
433 | - async _QueryTotal() { | ||
434 | - //获取答题卡列表 | ||
435 | - let query = { ...this.query }; | ||
436 | - for (let key in query) { | ||
437 | - if (!query[key]) { | ||
438 | - delete query[key] | ||
439 | - } | ||
440 | - } | ||
441 | - const { data, status, info } = await this.$request.paperShareCount({ | ||
442 | - ...query, | ||
443 | - }); | ||
444 | - if (status === 0) { | ||
445 | - this.totalCount.my = data?.myCount || 0; | ||
446 | - this.totalCount.share = data?.grade || 0; | ||
447 | - } else { | ||
448 | - this.$message.error(info); | ||
449 | - } | ||
450 | - }, | ||
451 | 432 | ||
452 | 433 | ||
453 | //v1.5 | 434 | //v1.5 |