Commit ca6303207880530bcec16cb35f026bf3012c45e8
1 parent
0074e60a
中天挑的问题
Showing
1 changed file
with
44 additions
and
32 deletions
src/views/standard/test/contrast.vue
| ... | ... | @@ -17,11 +17,7 @@ |
| 17 | 17 | >{{ item }}</span |
| 18 | 18 | > |
| 19 | 19 | </div> |
| 20 | - <el-button | |
| 21 | - class="setMinScore" | |
| 22 | - @click="diaLogBox = true" | |
| 23 | - round | |
| 24 | - size="small" | |
| 20 | + <el-button class="setMinScore" @click="openDia" round size="small" | |
| 25 | 21 | >对比成绩等级设置</el-button |
| 26 | 22 | > |
| 27 | 23 | </div> |
| ... | ... | @@ -149,7 +145,7 @@ |
| 149 | 145 | :close-on-click-modal="false" |
| 150 | 146 | title="等级设置" |
| 151 | 147 | :visible.sync="diaLogBox" |
| 152 | - width="720px" | |
| 148 | + width="800px" | |
| 153 | 149 | @closed="closeDia" |
| 154 | 150 | > |
| 155 | 151 | <el-form class="use-form"> |
| ... | ... | @@ -160,9 +156,9 @@ |
| 160 | 156 | v-model="fromData.type" |
| 161 | 157 | @change="changeType" |
| 162 | 158 | > |
| 163 | - <el-option label="优良合格不合格" :value="1"></el-option> | |
| 164 | - <el-option label="ABCD" :value="2"></el-option> | |
| 165 | - <el-option label="自定义" :value="3"></el-option> | |
| 159 | + <el-option label="优良合格不合格" :value="0"></el-option> | |
| 160 | + <el-option label="ABCD" :value="1"></el-option> | |
| 161 | + <el-option label="自定义" :value="2"></el-option> | |
| 166 | 162 | </el-select> |
| 167 | 163 | </el-form-item> |
| 168 | 164 | <el-form-item label="等级设置模式:" class="use-form-item"> |
| ... | ... | @@ -200,17 +196,17 @@ |
| 200 | 196 | type="number" |
| 201 | 197 | v-model="item[1]" |
| 202 | 198 | :min="item[2]" |
| 203 | - :max=" | |
| 204 | - index == 0 ? 100 : fromData.levels[index - 1][2] - 0.1 | |
| 205 | - " | |
| 199 | + :max="index == 0 ? 100 : fromData.levels[index - 1][2]" | |
| 206 | 200 | @keydown.native="keydownRange($event)" |
| 207 | 201 | ></el-input> |
| 208 | 202 | % |
| 209 | 203 | <template v-if="fromData.levelType == 0"> |
| 210 | - ({{ | |
| 204 | + ({{ index != 0 ? "含" : "" | |
| 205 | + }}{{ | |
| 211 | 206 | Number(((item[1] / 100) * examPaperScore).toFixed(1)) |
| 212 | 207 | }}分) |
| 213 | 208 | </template> |
| 209 | + <template v-else>{{ index != 0 ? "含" : "" }}</template> | |
| 214 | 210 | </p> |
| 215 | 211 | <p>~</p> |
| 216 | 212 | <p class="item3"> |
| ... | ... | @@ -219,15 +215,19 @@ |
| 219 | 215 | type="number" |
| 220 | 216 | v-model="item[2]" |
| 221 | 217 | :min="0" |
| 222 | - :max="item[1] - 1" | |
| 218 | + :max="item[1]" | |
| 223 | 219 | @keydown.native="keydownRange($event)" |
| 224 | 220 | ></el-input> |
| 225 | 221 | % |
| 226 | 222 | <template v-if="fromData.levelType == 0"> |
| 227 | - ({{ | |
| 223 | + ({{ index < fromData.levels.length - 1 ? "不含" : "" | |
| 224 | + }}{{ | |
| 228 | 225 | Number(((item[2] / 100) * examPaperScore).toFixed(1)) |
| 229 | 226 | }}分) |
| 230 | 227 | </template> |
| 228 | + <template v-else>{{ | |
| 229 | + index < fromData.levels.length - 1 ? "不含" : "" | |
| 230 | + }}</template> | |
| 231 | 231 | </p> |
| 232 | 232 | <p class="item"> |
| 233 | 233 | <el-link |
| ... | ... | @@ -276,7 +276,7 @@ export default { |
| 276 | 276 | exportLoading: false, |
| 277 | 277 | diaLogBox: false, |
| 278 | 278 | fromData: { |
| 279 | - type: 1, | |
| 279 | + type: 0, | |
| 280 | 280 | levelType: 0, |
| 281 | 281 | levels: [ |
| 282 | 282 | ["优秀", 100, 90], |
| ... | ... | @@ -321,6 +321,9 @@ export default { |
| 321 | 321 | this.tableMaxHeight = this.$refs.main.offsetHeight; |
| 322 | 322 | this.type = type; |
| 323 | 323 | }, |
| 324 | + openDia() { | |
| 325 | + this.diaLogBox = true; | |
| 326 | + }, | |
| 324 | 327 | closeDia() { |
| 325 | 328 | let levelFromData = sessionStorage.getItem("levelFromData"); |
| 326 | 329 | if (levelFromData) { |
| ... | ... | @@ -329,28 +332,31 @@ export default { |
| 329 | 332 | this.fromData.levelType = levelFromData.levelType; |
| 330 | 333 | this.fromData.levels = [...levelFromData.levels]; |
| 331 | 334 | } else { |
| 332 | - this.fromData.type = 1; | |
| 335 | + this.fromData.type = 0; | |
| 333 | 336 | this.fromData.levelType = this.defaultLevels.levelType; |
| 334 | 337 | this.fromData.levels = [...this.defaultLevels.levels]; |
| 335 | 338 | } |
| 336 | 339 | }, |
| 337 | 340 | changeType(val) { |
| 338 | - if (val == 1) { | |
| 341 | + if (val == this.defaultLevels.type) { | |
| 339 | 342 | this.fromData.levels = [...this.defaultLevels.levels]; |
| 340 | - } else if (val == 2) { | |
| 341 | - this.fromData.levels = [ | |
| 342 | - ["A", 100, 90], | |
| 343 | - ["B", 89.9, 70], | |
| 344 | - ["C", 69.9, 60], | |
| 345 | - ["D", 59.9, 0], | |
| 346 | - ]; | |
| 347 | 343 | } else { |
| 348 | - this.fromData.levels = [ | |
| 349 | - ["", 100, 90], | |
| 350 | - ["", 89.9, 70], | |
| 351 | - ["", 69.9, 60], | |
| 352 | - ["", 59.9, 0], | |
| 353 | - ]; | |
| 344 | + this.fromData.levels = this.fromData.levels.splice(0, 4); | |
| 345 | + if (val == 0) { | |
| 346 | + this.fromData.levels = this.fromData.levels.map((item, index) => { | |
| 347 | + let arrTxt = ["优秀", "良好", "合格", "不合格"]; | |
| 348 | + return [arrTxt[index], item[1], item[2]]; | |
| 349 | + }); | |
| 350 | + } else if (val == 1) { | |
| 351 | + this.fromData.levels = this.fromData.levels.map((item, index) => { | |
| 352 | + let arrTxt = ["A", "B", "C", "D"]; | |
| 353 | + return [arrTxt[index], item[1], item[2]]; | |
| 354 | + }); | |
| 355 | + } else { | |
| 356 | + this.fromData.levels = this.fromData.levels.map((item, index) => { | |
| 357 | + return ["", item[1], item[2]]; | |
| 358 | + }); | |
| 359 | + } | |
| 354 | 360 | } |
| 355 | 361 | }, |
| 356 | 362 | savefrom() { |
| ... | ... | @@ -373,7 +379,7 @@ export default { |
| 373 | 379 | }); |
| 374 | 380 | for (let i = 0; i < nums.length; i++) { |
| 375 | 381 | console.log(nums[i + 1] && nums[i + 1] >= nums[i]); |
| 376 | - if (nums[i + 1] && nums[i + 1] >= nums[i]) { | |
| 382 | + if (nums[i + 1] && nums[i + 1] > nums[i]) { | |
| 377 | 383 | ERR_OK = true; |
| 378 | 384 | this.$message.warning("高等级比例不能低于低等级比例!请检查"); |
| 379 | 385 | break; |
| ... | ... | @@ -382,6 +388,7 @@ export default { |
| 382 | 388 | if (ERR_OK) return; |
| 383 | 389 | this.tableData = []; |
| 384 | 390 | this.tableData2 = []; |
| 391 | + this.defaultLevels.type = this.fromData.type; | |
| 385 | 392 | this.defaultLevels.levelType = this.fromData.levelType; |
| 386 | 393 | this.defaultLevels.levels = [...this.fromData.levels]; |
| 387 | 394 | sessionStorage.setItem("levelFromData", JSON.stringify(this.fromData)); |
| ... | ... | @@ -396,6 +403,7 @@ export default { |
| 396 | 403 | const { data, info, status } = await this.$request.defaultLevels(); |
| 397 | 404 | if (status === 0) { |
| 398 | 405 | this.defaultLevels = { ...data } || { |
| 406 | + type: 0, | |
| 399 | 407 | levelType: 0, |
| 400 | 408 | levels: [ |
| 401 | 409 | ["优秀", 100, 90], |
| ... | ... | @@ -406,6 +414,10 @@ export default { |
| 406 | 414 | }; |
| 407 | 415 | this.fromData.levelType = this.defaultLevels.levelType; |
| 408 | 416 | this.fromData.levels = [...this.defaultLevels.levels]; |
| 417 | + sessionStorage.setItem( | |
| 418 | + "levelFromData", | |
| 419 | + JSON.stringify(this.defaultLevels) | |
| 420 | + ); | |
| 409 | 421 | } else { |
| 410 | 422 | this.$message.error(info); |
| 411 | 423 | } | ... | ... |