Commit e5f407d66dd92a8a3ad8a8ad38a8f5769b241948

Authored by 梁保满
1 parent f04179ad

测试问题

src/views/standard/test/analysis.vue
... ... @@ -1003,7 +1003,7 @@ div::-webkit-scrollbar-thumb {
1003 1003 .setMinScore {
1004 1004 position: absolute;
1005 1005 bottom: 0;
1006   - right: 50px;
  1006 + right: 0px;
1007 1007 }
1008 1008 }
1009 1009 .score-ipt {
... ...
src/views/standard/test/contrast.vue
... ... @@ -46,11 +46,13 @@
46 46 align="center"
47 47 fixed
48 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 56 <el-table-column
55 57 prop="percent"
56 58 label="参与度"
... ... @@ -175,9 +177,9 @@
175 177 <p class="dia-tab-tit">
176 178 <span class="item1">编号</span>
177 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 183 </p>
182 184 <div
183 185 class="dia-tab-item"
... ... @@ -192,29 +194,42 @@
192 194 @keydown.native="keydownRange($event)"
193 195 ></el-input>
194 196 </p>
195   - <p class="item2">
  197 + <p class="item3">
196 198 <el-input
197 199 class="score-ipt"
198 200 type="number"
199 201 v-model="item[1]"
200 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 206 @keydown.native="keydownRange($event)"
203 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 214 </p>
206   - <p class="item2">
  215 + <p>~</p>
  216 + <p class="item3">
207 217 <el-input
208 218 class="score-ipt"
209 219 type="number"
210 220 v-model="item[2]"
211 221 :min="0"
212   - :max="item[1]"
  222 + :max="item[1] - 1"
213 223 @keydown.native="keydownRange($event)"
214 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 231 </p>
217   - <p class="item1">
  232 + <p class="item">
218 233 <el-link
219 234 type="danger"
220 235 :underline="false"
... ... @@ -277,12 +292,13 @@ export default {
277 292 tableMaxHeight: 600,
278 293 tableData: [],
279 294 tableData2: [],
  295 + examPaperScore: 100, //卷面最高分
280 296 };
281 297 },
282   - created() {
  298 + async created() {
283 299 this.ids = this.$route.query.ids;
284   - this._QueryDefaultLevels();
285   - this._QueryData();
  300 + await this._QueryData();
  301 + await this._QueryDefaultLevels();
286 302 },
287 303 destroyed() {
288 304 sessionStorage.setItem("levelFromData", "");
... ... @@ -338,6 +354,7 @@ export default {
338 354 }
339 355 },
340 356 savefrom() {
  357 + console.log(this.fromData);
341 358 for (let i = 0; i < this.fromData.levels.length; i++) {
342 359 if (this.fromData.levels[i].includes("")) {
343 360 this.$message.warning("请补全编号" + (i + 1) + "设置信息!");
... ... @@ -346,8 +363,23 @@ export default {
346 363 }
347 364 if (this.fromData.levels.length == 0) {
348 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 383 this.tableData = [];
352 384 this.tableData2 = [];
353 385 this.defaultLevels.levelType = this.fromData.levelType;
... ... @@ -381,6 +413,15 @@ export default {
381 413 async _QueryData(params) {
382 414 let query = {};
383 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 425 query = { ...params };
385 426 }
386 427 const { data, info, status } = await this.$request.examMultiClassReport({
... ... @@ -389,6 +430,7 @@ export default {
389 430 });
390 431 if (status === 0) {
391 432 this.title = data.title;
  433 + this.examPaperScore = data.examPaperScore || 100;
392 434 this.subjectNames = data.subjectName;
393 435 this.tableData = data.classes || [];
394 436 this.tableData2 =
... ... @@ -501,11 +543,18 @@ export default {
501 543 padding-right: 5px;
502 544 }
503 545 display: flex;
  546 + .item {
  547 + width: 40px;
  548 + }
504 549 .item1 {
505 550 padding-left: 10px;
506   - width: 15%;
  551 + width: 10%;
507 552 }
508 553 .item2 {
  554 + width: 18%;
  555 + }
  556 + .item3 {
  557 + padding-left: 12px;
509 558 flex: 1;
510 559 }
511 560 .score-ipt {
... ...
src/views/standard/test/index.vue
... ... @@ -539,7 +539,12 @@
539 539 >
540 540 <div class="head-box">
541 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 548 <p>
544 549 共筛选出{{ classTable.length }}个班级的已考试卷,<em class="red"
545 550 >不同班级请选择同一份试卷进行对比</em
... ... @@ -1104,7 +1109,7 @@ export default {
1104 1109 this.loading = false;
1105 1110 if (status === 0) {
1106 1111 this.tableData =
1107   - data?.list.map((item) => {
  1112 + data?.list?.map((item) => {
1108 1113 item.loading = false;
1109 1114 return item;
1110 1115 }) || [];
... ... @@ -1354,6 +1359,7 @@ div::-webkit-scrollbar-thumb {
1354 1359 }
1355 1360 .red {
1356 1361 font-style: normal;
  1362 + font-size: 12px;
1357 1363 color: #f30;
1358 1364 }
1359 1365 .sel {
... ...