From 8c3eaeddeff2c9c5a92352e6bf830e5000ff5882 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 03 十二月 2024 12:16:11 +0800 Subject: [PATCH] 附件最多上传10个 --- src/views/exam/question/edit/multiple-choice.vue | 57 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 43 insertions(+), 14 deletions(-) diff --git a/src/views/exam/question/edit/multiple-choice.vue b/src/views/exam/question/edit/multiple-choice.vue index 38301e0..65e996c 100644 --- a/src/views/exam/question/edit/multiple-choice.vue +++ b/src/views/exam/question/edit/multiple-choice.vue @@ -1,14 +1,22 @@ <template> <div class="app-container"> <el-form :model="form" ref="form" label-width="100px" v-loading="formLoading" :rules="rules"> - <el-form-item label="閮ㄩ棬锛�" prop="gradeLevel" required> - <el-select v-model="form.gradeLevel" placeholder="閮ㄩ棬" @change="levelChange"> - <el-option v-for="item in levelEnum" :key="item.key" :value="item.key" :label="item.value"></el-option> - </el-select> + <el-form-item label="鎵�灞為儴闂細" prop="deptIds"> + <!-- <el-select v-model="form.deptIds" placeholder="鎵�灞為儴闂�" multiple filterable> + <el-option v-for="item in depart" :key="item.id" :value="item.id" :label="item.name"></el-option> + </el-select> --> + <el-cascader + clearable + multiple + v-model="form.deptIds" + :options="depart" + :props="{ multiple : true, emitPath: false, value: 'id', label: 'name', checkStrictly: true }" + ></el-cascader> </el-form-item> - <el-form-item label="璇剧洰锛�" prop="subjectId" required> - <el-select v-model="form.subjectId" placeholder="璇剧洰" > - <el-option v-for="item in subjectFilter" :key="item.id" :value="item.id" :label="item.name+' ( '+item.levelName+' )'"></el-option> + <el-form-item label="璇剧洰锛�" prop="subjectIds" required> + <el-select v-model="form.subjectIds" placeholder="璇剧洰" multiple + 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="title" required> @@ -60,6 +68,7 @@ import Ueditor from '@/components/Ueditor' import { mapGetters, mapState, mapActions } from 'vuex' import questionApi from '@/api/question' +import departmentApi from '@/api/department' export default { components: { @@ -67,11 +76,17 @@ }, data () { return { + queryParam: { + level: null, + pageIndex: 1, + pageSize: 100 + }, + depart:[], form: { id: null, questionType: 2, gradeLevel: null, - subjectId: null, + deptIds: [], title: '', items: [ { id: null, prefix: 'A', content: '' }, @@ -88,10 +103,10 @@ subjectFilter: null, formLoading: false, rules: { - gradeLevel: [ - { required: true, message: '璇烽�夋嫨閮ㄩ棬', trigger: 'change' } - ], - subjectId: [ + // gradeLevel: [ + // { required: true, message: '璇烽�夋嫨閮ㄩ棬', trigger: 'change' } + // ], + subjectIds: [ { required: true, message: '璇烽�夋嫨璇剧洰', trigger: 'change' } ], title: [ @@ -131,11 +146,25 @@ _this.formLoading = true questionApi.select(id).then(re => { _this.form = re.response + _this.form.subjectIds = [] + _this.form.questionSubjects.forEach(item=>{ + _this.form.subjectIds.push(item.subjectId) + }) _this.formLoading = false }) } + _this.seachPageDepartMentList() }, methods: { + seachPageDepartMentList(){ + let that = this + departmentApi.pageList(this.queryParam).then(res=>{ + console.log(res) + if (res.code == 1){ + that.depart = res.response + } + }) + }, editorReady (instance) { this.richEditor.instance = instance let currentContent = this.richEditor.object[this.richEditor.parameterName] @@ -191,7 +220,7 @@ }) }, levelChange () { - this.form.subjectId = null + this.subjectFilter = this.subjects.filter(data => data.level === this.form.gradeLevel) }, showQuestion () { @@ -206,7 +235,7 @@ id: null, questionType: 2, gradeLevel: null, - subjectId: null, + deptIds: [], title: '', items: [ { id: null, prefix: 'A', content: '' }, -- Gitblit v1.8.0