From 820fdb2db321c699568a54e8e3d7bb8f5c657b7f Mon Sep 17 00:00:00 2001 From: odc.xiaohui <xiaohui@Q1> Date: 星期三, 05 七月 2023 10:22:20 +0800 Subject: [PATCH] 修改青羊后台部门添加刷新 --- src/views/exam/paper/edit.vue | 151 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 109 insertions(+), 42 deletions(-) diff --git a/src/views/exam/paper/edit.vue b/src/views/exam/paper/edit.vue index 29e8a43..55bc547 100644 --- a/src/views/exam/paper/edit.vue +++ b/src/views/exam/paper/edit.vue @@ -9,13 +9,13 @@ </el-form-item> <el-form-item label="璇剧洰锛�" prop="subjectId" required> <el-select ref="subjectIdRef" v-model="form.subjectId" placeholder="璇剧洰" multiple - collapse-tags @visible-change="subjectIdEvent" > + collapse-tags > <el-option v-for="item in subjectFilter" :key="item.id" :value="item.id" - :label="item.name+' ( '+item.levelName+' )'"></el-option> + :label="item.name+' '"></el-option> </el-select> </el-form-item> <el-form-item label="璇曞嵎绫诲瀷锛�" prop="paperType" required> - <el-select v-model="form.paperType" placeholder="璇曞嵎绫诲瀷" > + <el-select v-model="form.paperType" placeholder="璇曞嵎绫诲瀷" @visible-change="subjectIdEvent"> <el-option v-for="item in paperTypeEnum" :key="item.key" :value="item.key" :label="item.value" ></el-option> </el-select> </el-form-item> @@ -24,29 +24,45 @@ range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡"> </el-date-picker> </el-form-item> - <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="form.paperType ==7"> - <el-row> - <el-col :span="3"> - <span>棰樼洰鏁伴噺锛�</span> - </el-col> + <el-form-item label="璇曞嵎鍚嶇О锛�" prop="name" required > + <el-row :gutter="20"> <el-col :span="9"> - <el-input v-model="titleItem.name" style="width: 80%"/> + <el-input v-model="form.name"/> </el-col> - <el-col :span="3"> - <span>棰樼洰鍒嗘暟锛�</span> + <el-col :span="2" v-if="form.paperType==7"> + <span>鎬绘暟鍒嗭細</span> </el-col> - <el-col :span="9"> - <el-input v-model="titleItem.name" style="width: 80%"/> + <el-col :span="9" v-if="form.paperType==7"> + <el-input disabled v-model="form.aggregateSource"/> </el-col> </el-row> + </el-form-item> + <el-form-item :key="item.subjectId" :label="item.label" required v-for="(item,key,index) in form.questionTypeVMS" v-if="form.paperType ==7"> + <el-row > + <el-col :span="3" > + <span>澶氶�夐锛�</span> + </el-col> + <el-col :span="3"> + <el-input v-model="form.questionTypeVMS[key].multipleChoice" style="width: 80%"/> + </el-col> + <el-col :span="3" > + <span>鍗曢�夐锛�</span> + </el-col> + <el-col :span="3"> + <el-input v-model="form.questionTypeVMS[key].singleChoice" style="width: 80%"/> + </el-col> + <el-col :span="3" > + <span>鍒ゆ柇棰橈細</span> + </el-col> + <el-col :span="3"> + <el-input v-model="form.questionTypeVMS[key].trueFalse" style="width: 80%"/> + </el-col> + </el-row> </el-form-item> - <el-form-item label="鎬绘暟鍒嗭細" v-if="form.paperType==7" prop="name" required> - <el-input v-model="form.name"/> - </el-form-item> +<!-- <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="form.paperType!=7" type="text" class="link-left" style="margin-left: 20px" size="mini" @click="addQuestion(titleItem)"> @@ -123,6 +139,7 @@ return { subjectIdList:[], form: { + aggregateSource:100, id: null, departmentIds: [], subjectId: [], @@ -130,7 +147,9 @@ limitDateTime: [], name: '', suggestTime: null, - titleItems: [] + titleItems: [], + subjectSource:{}, + questionTypeVMS:[] }, subjectFilter: null, formLoading: false, @@ -183,6 +202,16 @@ } }, methods: { + titlejs(val){ + console.log(val) + let str = '' + this.subjectFilter.forEach(item=>{ + if (item.id == val){ + str = item.name + } + }) + return str + }, subjectIdEvent(e){ console.log(e,this.$refs.subjectIdRef.selected) let arr=[] @@ -192,30 +221,64 @@ this.$refs.subjectIdRef.selected.forEach(item=>{ arr.push({ label:item.label, - id:item.value + subjectId:item.value, + singleChoice:'', + multipleChoice:'', + trueFalse:'' }) }) console.log(arr) + this.form.questionTypeVMS = arr } - if (arr.length>1){ + if (this.form.paperType ==7){ //瑾槑鏄毃姗� this.subjectIdList = arr + let obj1={} + let arr1 = [] + arr.forEach((item,index)=>{ + // obj1[item.id]='' + arr1.push({ + subjectId:item.id, + singleChoice:'', + multipleChoice:'', + trueFalse:'' + }) + // let obj={ + // item + // } + + // for (let i in obj) { + // i=item.id + // obj[i]= '' + // obj1[i] = '' + // console.log('閿悕锛�', i); + // console.log('閿�硷細', obj[i]); + // } + }) + this.form.subjectSource = obj1 + + console.log(this.form.subjectSource) + console.log(this.form.questionTypeVMS) // this.form.paperType = 7 this.form.titleItems = [] }else { + this.form.subjectSource={} this.subjectIdList = [] - this.form.paperType = 1 + // this.form.paperType = 1 } }, submitForm () { let _this = this + console.log(this.subjectIdList) + console.log(this.form.subjectSource) this.$refs.form.validate((valid) => { if (valid) { this.formLoading = true - if (this.subjectIdList.length=1){ + if (this.subjectIdList.length == 1){ this.form.subjectId= this.form.subjectId } + examPaperApi.edit(this.form).then(re => { if (re.code === 1) { _this.$message.success(re.message) @@ -265,18 +328,19 @@ this.questionPage.showDialog = false }, levelChange () { - this.form.subjectId = null + // this.form.subjectId = null // 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) - } - }) - }) + // + // 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 }, @@ -306,15 +370,18 @@ resetForm () { let lastId = this.form.id this.$refs['form'].resetFields() - this.form = { - id: null, - departmentIds: [], - subjectId: null, - paperType: 1, - limitDateTime: [], - name: '', - suggestTime: null, - titleItems: [] + this.form= { + aggregateSource:100, + id: null, + departmentIds: [], + subjectId: [], + paperType: 1, + limitDateTime: [], + name: '', + suggestTime: null, + titleItems: [], + subjectSource:null, + questionTypeVMS:[] } this.form.id = lastId }, -- Gitblit v1.8.0