From 4e43f5b3a19db9af5015e0200c9590c8aba3b9ed Mon Sep 17 00:00:00 2001
From: odc.xiaohui <xiaohui@Q1>
Date: 星期四, 15 六月 2023 13:37:45 +0800
Subject: [PATCH] 修改试卷列表
---
src/views/exam/paper/list.vue | 1 +
src/store/modules/exam.js | 17 ++++++++++++++---
src/views/exam/paper/edit.vue | 41 +++++++++++++++++++++++++++--------------
3 files changed, 42 insertions(+), 17 deletions(-)
diff --git a/src/store/modules/exam.js b/src/store/modules/exam.js
index 816c71d..a8f8c3d 100644
--- a/src/store/modules/exam.js
+++ b/src/store/modules/exam.js
@@ -6,11 +6,22 @@
const getters = {
subjectEnumFormat: (state) => (key) => {
- for (let item of state.subjects) {
- if (item.id === key) {
- return item.name + ' ( ' + item.levelName + ' )'
+ // console.log(state.subjects,key)
+ let str = ''
+ for (const j of state.subjects) {
+ for (let k of key) {
+ // console.log(j,k)
+ if (j.id ==k){
+ str+= j.name + ' ( ' + j.levelName + ' )'+' /'
+ }
}
}
+ return str.slice(0,str.length-1)
+ // for (let item of state.subjects) {
+ // if (item.id === key) {
+ // return item.name + ' ( ' + item.levelName + ' )'
+ // }
+ // }
return null
}
}
diff --git a/src/views/exam/paper/edit.vue b/src/views/exam/paper/edit.vue
index d3329e9..29e8a43 100644
--- a/src/views/exam/paper/edit.vue
+++ b/src/views/exam/paper/edit.vue
@@ -1,8 +1,9 @@
<template>
<div class="app-container">
<el-form :model="form" ref="form" label-width="200px" v-loading="formLoading" :rules="rules">
- <el-form-item label="閮ㄩ棬锛�" prop="level" required>
- <el-select v-model="form.level" placeholder="閮ㄩ棬" @change="levelChange">
+ <el-form-item label="閮ㄩ棬锛�" prop="departmentIds" required>
+ <el-select v-model="form.departmentIds" placeholder="閮ㄩ棬" @change="levelChange" multiple
+ collapse-tags>
<el-option v-for="item in levelEnum" :key="item.key" :value="item.key" :label="item.value"></el-option>
</el-select>
</el-form-item>
@@ -14,8 +15,8 @@
</el-select>
</el-form-item>
<el-form-item label="璇曞嵎绫诲瀷锛�" prop="paperType" required>
- <el-select v-model="form.paperType" placeholder="璇曞嵎绫诲瀷" :disabled="subjectIdList.length>1">
- <el-option v-for="item in paperTypeEnum" :key="item.key" :value="item.key" :label="item.value" :disabled="item.disabled"></el-option>
+ <el-select v-model="form.paperType" placeholder="璇曞嵎绫诲瀷" >
+ <el-option v-for="item in paperTypeEnum" :key="item.key" :value="item.key" :label="item.value" ></el-option>
</el-select>
</el-form-item>
<el-form-item label="鏃堕棿闄愬埗锛�" required v-show="form.paperType===4">
@@ -26,7 +27,7 @@
<el-form-item label="璇曞嵎鍚嶇О锛�" prop="name" required>
<el-input v-model="form.name"/>
</el-form-item>
- <el-form-item :key="index" :label="titleItem.label+':'" required v-for="(titleItem,index) in subjectIdList" v-if="subjectIdList.length>1">
+ <el-form-item :key="index" :label="titleItem.label+':'" required v-for="(titleItem,index) in subjectIdList" v-if="form.paperType ==7">
<el-row>
<el-col :span="3">
<span>棰樼洰鏁伴噺锛�</span>
@@ -43,12 +44,12 @@
</el-row>
</el-form-item>
- <el-form-item label="鎬绘暟鍒嗭細" v-if="subjectIdList.length>1" prop="name" required>
+ <el-form-item label="鎬绘暟鍒嗭細" v-if="form.paperType==7" prop="name" required>
<el-input v-model="form.name"/>
</el-form-item>
<el-form-item :key="index" :label="'鏍囬'+(index+1)+'锛�'" required v-for="(titleItem,index) in form.titleItems">
<el-input v-model="titleItem.name" style="width: 80%"/>
- <el-button v-if="subjectIdList.length<2" type="text" class="link-left" style="margin-left: 20px" size="mini" @click="addQuestion(titleItem)">
+ <el-button v-if="form.paperType!=7" type="text" class="link-left" style="margin-left: 20px" size="mini" @click="addQuestion(titleItem)">
娣诲姞棰樼洰
</el-button>
<el-button type="text" class="link-left" size="mini" @click="form.titleItems.splice(index,1)">鍒犻櫎</el-button>
@@ -123,7 +124,7 @@
subjectIdList:[],
form: {
id: null,
- level: null,
+ departmentIds: [],
subjectId: [],
paperType: 1,
limitDateTime: [],
@@ -134,7 +135,7 @@
subjectFilter: null,
formLoading: false,
rules: {
- level: [
+ departmentIds: [
{ required: true, message: '璇烽�夋嫨閮ㄩ棬', trigger: 'change' }
],
subjectId: [
@@ -200,7 +201,7 @@
if (arr.length>1){
//瑾槑鏄毃姗�
this.subjectIdList = arr
- this.form.paperType = 7
+ // this.form.paperType = 7
this.form.titleItems = []
}else {
this.subjectIdList = []
@@ -213,7 +214,7 @@
if (valid) {
this.formLoading = true
if (this.subjectIdList.length=1){
- this.form.subjectId= this.form.subjectId[0]
+ this.form.subjectId= this.form.subjectId
}
examPaperApi.edit(this.form).then(re => {
if (re.code === 1) {
@@ -265,11 +266,23 @@
},
levelChange () {
this.form.subjectId = null
- this.subjectFilter = this.subjects.filter(data => data.level === this.form.level)
+ // this.subjectFilter = this.subjects.filter(data =>{
+ // return this.form.departmentIds.forEach(item=>{data.level == item})
+ // })
+ this.subjectFilter = []
+ this.form.departmentIds.forEach(item=>{
+ this.subjects.forEach(jectitem=>{
+ if (item==jectitem.level){
+ this.subjectFilter.push(jectitem)
+ }
+ })
+ })
+ console.log(this.subjects,this.form.departmentIds)
+ // this.subjectFilter = this.subjects
},
search () {
if (this.subjectIdList.length=1){
- this.questionPage.queryParam.subjectId = this.form.subjectId[0]
+ this.questionPage.queryParam.subjectId = this.form.subjectId
}
this.questionPage.listLoading = true
@@ -295,7 +308,7 @@
this.$refs['form'].resetFields()
this.form = {
id: null,
- level: null,
+ departmentIds: [],
subjectId: null,
paperType: 1,
limitDateTime: [],
diff --git a/src/views/exam/paper/list.vue b/src/views/exam/paper/list.vue
index f1d926b..e737035 100644
--- a/src/views/exam/paper/list.vue
+++ b/src/views/exam/paper/list.vue
@@ -95,6 +95,7 @@
this.subjectFilter = this.subjects.filter(data => data.level === this.queryParam.level)
},
subjectFormatter (row, column, cellValue, index) {
+ console.log(row, column, cellValue, index)
return this.subjectEnumFormat(cellValue)
},
...mapActions('exam', { initSubject: 'initSubject' })
--
Gitblit v1.8.0