From caf356587e08608be27dc25e7cc63c9b191d9aa5 Mon Sep 17 00:00:00 2001
From: ZhangXianQiang <1135831638@qq.com>
Date: 星期五, 17 五月 2024 10:27:57 +0800
Subject: [PATCH] fix:上传文件类型

---
 src/views/exam/paper/edit.vue |   36 +++++++++++++++++++++++++++---------
 1 files changed, 27 insertions(+), 9 deletions(-)

diff --git a/src/views/exam/paper/edit.vue b/src/views/exam/paper/edit.vue
index 7012242..b6542b6 100644
--- a/src/views/exam/paper/edit.vue
+++ b/src/views/exam/paper/edit.vue
@@ -1,8 +1,8 @@
 <template>
   <div class="app-container">
     <el-form :model="form" ref="form" label-width="200px" v-loading="formLoading" :rules="rules">
-      <el-form-item label="鑰冪敓锛�" prop="userIds" required>
-        <el-cascader v-model="form.userIds" :options="options" :props="props" clearable collapse-tags>
+      <el-form-item label="鑰冪敓锛�" prop="menuIds" required>
+        <el-cascader v-model="form.menuIds" :options="options" :props="props" @change="handleChange" clearable collapse-tags>
         </el-cascader>
       </el-form-item>
       <el-form-item label="璇剧洰锛�" prop="subjectId" required>
@@ -10,6 +10,11 @@
                    collapse-tags   >
           <el-option v-for="item in subjectFilter" :key="item.id" :value="item.id"
                      :label="item.name+' '"></el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="閮ㄩ棬锛�" prop="deptId" required>
+        <el-select v-model="form.deptId" collapse-tags placeholder="閮ㄩ棬">
+          <el-option v-for="item in depts" :key="item.id" :value="item.id" :label="item.name"></el-option>
         </el-select>
       </el-form-item>
       <el-form-item label="璇曞嵎绫诲瀷锛�" prop="paperType" required>
@@ -135,7 +140,8 @@
   components: { Pagination, QuestionShow },
   data () {
     return {
-      props: { 
+      depts: [],
+      props: {
         multiple: true
         // lazy: true,
         // lazyLoad (node, resolve) {
@@ -172,11 +178,14 @@
       subjectFilter: null,
       formLoading: false,
       rules: {
-        userIds: [
+        menuIds: [
           { required: true, message: '璇烽�夋嫨', trigger: 'change' }
         ],
         subjectId: [
           { required: true, message: '璇烽�夋嫨璇剧洰', trigger: 'change' }
+          ],
+        deptId: [
+          { required: true, message: '璇烽�夋嫨閮ㄩ棬', trigger: 'change' }
         ],
         paperType: [
           { required: true, message: '璇烽�夋嫨璇曞嵎绫诲瀷', trigger: 'change' }
@@ -215,7 +224,7 @@
       _this.formLoading = true
       examPaperApi.select(id).then(re => {
         _this.form = re.response
-        _this.form.userIds = re.response.userId
+        _this.form.menuIds = JSON.parse(re.response.menuIds)
         console.log(_this.form)
         _this.formLoading = false
       })
@@ -225,8 +234,14 @@
 
       _this.options = res.response.map(x=>{return{value:x.department.id,label:x.department.name,children:x.userList.map(xx=>{return{value: xx.id,label: xx.realName}})}})
     })
+    departmentApi.getDeptAdmins().then(res => {
+      this.depts = res.response
+    })
   },
   methods: {
+    handleChange(val){
+      console.log(val)
+    },
     titlejs(val){
       console.log(val)
       let str = ''
@@ -290,13 +305,12 @@
       }else {
         this.form.subjectSource={}
         this.subjectIdList = []
+        this.form.questionTypeVMS=[]
         // 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;
@@ -304,9 +318,10 @@
             this.form.subjectId= this.form.subjectId
           };
           let op = [];
-          for(var ele of this.form.userIds){
+          for(var ele of this.form.menuIds){
             op.push(ele[1])
           };
+          this.form.menuIds = JSON.stringify(this.form.menuIds);
           this.form.userIds = op;
           console.log("laks",this.form)
           if(this.form.questionTypeVMS == null){
@@ -337,6 +352,7 @@
       })
     },
     addQuestion (titleItem) {
+      console.log('titleItem', titleItem)
       this.currentTitleItem = titleItem
       this.questionPage.showDialog = true
       this.search()
@@ -355,7 +371,9 @@
       let _this = this
       this.questionPage.multipleSelection.forEach(q => {
         questionApi.select(q.id).then(re => {
-          _this.currentTitleItem.questionItems.push(re.response)
+          if (!_this.currentTitleItem.questionItems.some(obj => obj.id === re.response.id)) {
+            _this.currentTitleItem.questionItems.push(re.response)
+          }
         })
       })
       this.questionPage.showDialog = false

--
Gitblit v1.8.0