Commit e5f407d66dd92a8a3ad8a8ad38a8f5769b241948
1 parent
f04179ad
测试问题
Showing
3 changed files
with
78 additions
and
23 deletions
src/views/standard/test/analysis.vue
@@ -1003,7 +1003,7 @@ div::-webkit-scrollbar-thumb { | @@ -1003,7 +1003,7 @@ div::-webkit-scrollbar-thumb { | ||
1003 | .setMinScore { | 1003 | .setMinScore { |
1004 | position: absolute; | 1004 | position: absolute; |
1005 | bottom: 0; | 1005 | bottom: 0; |
1006 | - right: 50px; | 1006 | + right: 0px; |
1007 | } | 1007 | } |
1008 | } | 1008 | } |
1009 | .score-ipt { | 1009 | .score-ipt { |
src/views/standard/test/contrast.vue
@@ -46,11 +46,13 @@ | @@ -46,11 +46,13 @@ | ||
46 | align="center" | 46 | align="center" |
47 | fixed | 47 | fixed |
48 | ></el-table-column> | 48 | ></el-table-column> |
49 | - <el-table-column | ||
50 | - prop="count" | ||
51 | - label="测验人数/班级人数" | ||
52 | - align="center" | ||
53 | - ></el-table-column> | 49 | + <el-table-column label="测验人数/班级人数" align="center" width="84"> |
50 | + <template slot-scope="scope"> | ||
51 | + <p v-for="(item, index) in scope.row.count.split('/')"> | ||
52 | + {{ item }}{{ index == 0 ? "/" : "" }} | ||
53 | + </p> | ||
54 | + </template> | ||
55 | + </el-table-column> | ||
54 | <el-table-column | 56 | <el-table-column |
55 | prop="percent" | 57 | prop="percent" |
56 | label="参与度" | 58 | label="参与度" |
@@ -175,9 +177,9 @@ | @@ -175,9 +177,9 @@ | ||
175 | <p class="dia-tab-tit"> | 177 | <p class="dia-tab-tit"> |
176 | <span class="item1">编号</span> | 178 | <span class="item1">编号</span> |
177 | <span class="item2"><i>*</i>等级名称</span> | 179 | <span class="item2"><i>*</i>等级名称</span> |
178 | - <span class="item2"><i>*</i>等级最高</span> | ||
179 | - <span class="item2"><i>*</i>等级最低</span> | ||
180 | - <span class="item1"></span> | 180 | + <span class="item3"><i>*</i>等级最高</span> |
181 | + <span class="item3"><i>*</i>等级最低</span> | ||
182 | + <span class="item"></span> | ||
181 | </p> | 183 | </p> |
182 | <div | 184 | <div |
183 | class="dia-tab-item" | 185 | class="dia-tab-item" |
@@ -192,29 +194,42 @@ | @@ -192,29 +194,42 @@ | ||
192 | @keydown.native="keydownRange($event)" | 194 | @keydown.native="keydownRange($event)" |
193 | ></el-input> | 195 | ></el-input> |
194 | </p> | 196 | </p> |
195 | - <p class="item2"> | 197 | + <p class="item3"> |
196 | <el-input | 198 | <el-input |
197 | class="score-ipt" | 199 | class="score-ipt" |
198 | type="number" | 200 | type="number" |
199 | v-model="item[1]" | 201 | v-model="item[1]" |
200 | :min="item[2]" | 202 | :min="item[2]" |
201 | - :max="index == 0 ? 150 : fromData.levels[index - 1][2]" | 203 | + :max=" |
204 | + index == 0 ? 100 : fromData.levels[index - 1][2] - 0.1 | ||
205 | + " | ||
202 | @keydown.native="keydownRange($event)" | 206 | @keydown.native="keydownRange($event)" |
203 | ></el-input> | 207 | ></el-input> |
204 | - {{ fromData.levelType == 1 ? "%" : "分" }} - | 208 | + % |
209 | + <template v-if="fromData.levelType == 0"> | ||
210 | + ({{ | ||
211 | + Number(((item[1] / 100) * examPaperScore).toFixed(1)) | ||
212 | + }}分) | ||
213 | + </template> | ||
205 | </p> | 214 | </p> |
206 | - <p class="item2"> | 215 | + <p>~</p> |
216 | + <p class="item3"> | ||
207 | <el-input | 217 | <el-input |
208 | class="score-ipt" | 218 | class="score-ipt" |
209 | type="number" | 219 | type="number" |
210 | v-model="item[2]" | 220 | v-model="item[2]" |
211 | :min="0" | 221 | :min="0" |
212 | - :max="item[1]" | 222 | + :max="item[1] - 1" |
213 | @keydown.native="keydownRange($event)" | 223 | @keydown.native="keydownRange($event)" |
214 | ></el-input> | 224 | ></el-input> |
215 | - {{ fromData.levelType == 1 ? "%" : "分" }} | 225 | + % |
226 | + <template v-if="fromData.levelType == 0"> | ||
227 | + ({{ | ||
228 | + Number(((item[2] / 100) * examPaperScore).toFixed(1)) | ||
229 | + }}分) | ||
230 | + </template> | ||
216 | </p> | 231 | </p> |
217 | - <p class="item1"> | 232 | + <p class="item"> |
218 | <el-link | 233 | <el-link |
219 | type="danger" | 234 | type="danger" |
220 | :underline="false" | 235 | :underline="false" |
@@ -277,12 +292,13 @@ export default { | @@ -277,12 +292,13 @@ export default { | ||
277 | tableMaxHeight: 600, | 292 | tableMaxHeight: 600, |
278 | tableData: [], | 293 | tableData: [], |
279 | tableData2: [], | 294 | tableData2: [], |
295 | + examPaperScore: 100, //卷面最高分 | ||
280 | }; | 296 | }; |
281 | }, | 297 | }, |
282 | - created() { | 298 | + async created() { |
283 | this.ids = this.$route.query.ids; | 299 | this.ids = this.$route.query.ids; |
284 | - this._QueryDefaultLevels(); | ||
285 | - this._QueryData(); | 300 | + await this._QueryData(); |
301 | + await this._QueryDefaultLevels(); | ||
286 | }, | 302 | }, |
287 | destroyed() { | 303 | destroyed() { |
288 | sessionStorage.setItem("levelFromData", ""); | 304 | sessionStorage.setItem("levelFromData", ""); |
@@ -338,6 +354,7 @@ export default { | @@ -338,6 +354,7 @@ export default { | ||
338 | } | 354 | } |
339 | }, | 355 | }, |
340 | savefrom() { | 356 | savefrom() { |
357 | + console.log(this.fromData); | ||
341 | for (let i = 0; i < this.fromData.levels.length; i++) { | 358 | for (let i = 0; i < this.fromData.levels.length; i++) { |
342 | if (this.fromData.levels[i].includes("")) { | 359 | if (this.fromData.levels[i].includes("")) { |
343 | this.$message.warning("请补全编号" + (i + 1) + "设置信息!"); | 360 | this.$message.warning("请补全编号" + (i + 1) + "设置信息!"); |
@@ -346,8 +363,23 @@ export default { | @@ -346,8 +363,23 @@ export default { | ||
346 | } | 363 | } |
347 | if (this.fromData.levels.length == 0) { | 364 | if (this.fromData.levels.length == 0) { |
348 | this.$message.warning("请添加等级设置!"); | 365 | this.$message.warning("请添加等级设置!"); |
349 | - return | 366 | + return; |
367 | + } | ||
368 | + let nums = []; | ||
369 | + let ERR_OK = false; | ||
370 | + this.fromData.levels.map((item) => { | ||
371 | + nums.push(Number(item[1])); | ||
372 | + nums.push(Number(item[2])); | ||
373 | + }); | ||
374 | + for (let i = 0; i < nums.length; i++) { | ||
375 | + console.log(nums[i + 1] && (nums[i + 1] >= nums[i])) | ||
376 | + if (nums[i + 1] && (nums[i + 1] >= nums[i])) { | ||
377 | + ERR_OK = true; | ||
378 | + this.$message.warning("高等级比例不能低于低等级比例!请检查"); | ||
379 | + break; | ||
380 | + } | ||
350 | } | 381 | } |
382 | + if (ERR_OK) return; | ||
351 | this.tableData = []; | 383 | this.tableData = []; |
352 | this.tableData2 = []; | 384 | this.tableData2 = []; |
353 | this.defaultLevels.levelType = this.fromData.levelType; | 385 | this.defaultLevels.levelType = this.fromData.levelType; |
@@ -381,6 +413,15 @@ export default { | @@ -381,6 +413,15 @@ export default { | ||
381 | async _QueryData(params) { | 413 | async _QueryData(params) { |
382 | let query = {}; | 414 | let query = {}; |
383 | if (params) { | 415 | if (params) { |
416 | + if (params.levelType == 0) { | ||
417 | + params.levels = params.levels.map((item) => { | ||
418 | + console.log(item); | ||
419 | + item[1] = ((item[1] / 100) * this.examPaperScore).toFixed(1); | ||
420 | + item[2] = ((item[2] / 100) * this.examPaperScore).toFixed(1); | ||
421 | + return item; | ||
422 | + }); | ||
423 | + } | ||
424 | + | ||
384 | query = { ...params }; | 425 | query = { ...params }; |
385 | } | 426 | } |
386 | const { data, info, status } = await this.$request.examMultiClassReport({ | 427 | const { data, info, status } = await this.$request.examMultiClassReport({ |
@@ -389,6 +430,7 @@ export default { | @@ -389,6 +430,7 @@ export default { | ||
389 | }); | 430 | }); |
390 | if (status === 0) { | 431 | if (status === 0) { |
391 | this.title = data.title; | 432 | this.title = data.title; |
433 | + this.examPaperScore = data.examPaperScore || 100; | ||
392 | this.subjectNames = data.subjectName; | 434 | this.subjectNames = data.subjectName; |
393 | this.tableData = data.classes || []; | 435 | this.tableData = data.classes || []; |
394 | this.tableData2 = | 436 | this.tableData2 = |
@@ -501,11 +543,18 @@ export default { | @@ -501,11 +543,18 @@ export default { | ||
501 | padding-right: 5px; | 543 | padding-right: 5px; |
502 | } | 544 | } |
503 | display: flex; | 545 | display: flex; |
546 | + .item { | ||
547 | + width: 40px; | ||
548 | + } | ||
504 | .item1 { | 549 | .item1 { |
505 | padding-left: 10px; | 550 | padding-left: 10px; |
506 | - width: 15%; | 551 | + width: 10%; |
507 | } | 552 | } |
508 | .item2 { | 553 | .item2 { |
554 | + width: 18%; | ||
555 | + } | ||
556 | + .item3 { | ||
557 | + padding-left: 12px; | ||
509 | flex: 1; | 558 | flex: 1; |
510 | } | 559 | } |
511 | .score-ipt { | 560 | .score-ipt { |
src/views/standard/test/index.vue
@@ -539,7 +539,12 @@ | @@ -539,7 +539,12 @@ | ||
539 | > | 539 | > |
540 | <div class="head-box"> | 540 | <div class="head-box"> |
541 | <div class="tit"> | 541 | <div class="tit"> |
542 | - <p class="txt">已考试卷信息</p> | 542 | + <p class="txt"> |
543 | + 已考试卷信息 | ||
544 | + <em class="red" | ||
545 | + >(相同报表名称后的数字代表同一份试卷的考试次数,例如:模拟卷_1指模拟卷第1次考试成绩,模拟卷_2指模拟卷第2次考试成绩)</em | ||
546 | + > | ||
547 | + </p> | ||
543 | <p> | 548 | <p> |
544 | 共筛选出{{ classTable.length }}个班级的已考试卷,<em class="red" | 549 | 共筛选出{{ classTable.length }}个班级的已考试卷,<em class="red" |
545 | >不同班级请选择同一份试卷进行对比</em | 550 | >不同班级请选择同一份试卷进行对比</em |
@@ -1104,7 +1109,7 @@ export default { | @@ -1104,7 +1109,7 @@ export default { | ||
1104 | this.loading = false; | 1109 | this.loading = false; |
1105 | if (status === 0) { | 1110 | if (status === 0) { |
1106 | this.tableData = | 1111 | this.tableData = |
1107 | - data?.list.map((item) => { | 1112 | + data?.list?.map((item) => { |
1108 | item.loading = false; | 1113 | item.loading = false; |
1109 | return item; | 1114 | return item; |
1110 | }) || []; | 1115 | }) || []; |
@@ -1354,6 +1359,7 @@ div::-webkit-scrollbar-thumb { | @@ -1354,6 +1359,7 @@ div::-webkit-scrollbar-thumb { | ||
1354 | } | 1359 | } |
1355 | .red { | 1360 | .red { |
1356 | font-style: normal; | 1361 | font-style: normal; |
1362 | + font-size: 12px; | ||
1357 | color: #f30; | 1363 | color: #f30; |
1358 | } | 1364 | } |
1359 | .sel { | 1365 | .sel { |