From 2bddfa78e65f351d6cb81f670775e79620f684a6 Mon Sep 17 00:00:00 2001 From: ZhangXianQiang <1135831638@qq.com> Date: 星期五, 24 五月 2024 10:43:51 +0800 Subject: [PATCH] feat:分数统计 --- src/views/user/student/edit.vue | 62 ++++++++++++++++++++++++++----- 1 files changed, 52 insertions(+), 10 deletions(-) diff --git a/src/views/user/student/edit.vue b/src/views/user/student/edit.vue index 9cd7831..63bd6e3 100644 --- a/src/views/user/student/edit.vue +++ b/src/views/user/student/edit.vue @@ -19,15 +19,20 @@ <el-option v-for="item in sexEnum" :key="item.key" :value="item.key" :label="item.value"></el-option> </el-select> </el-form-item> - <el-form-item label="鍑虹敓鏃ユ湡锛�"> - <el-date-picker v-model="form.birthDay" type="date" value-format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" /> + <el-form-item label="鍑虹敓鏃ユ湡锛�" prop="birthDay"> + <el-date-picker v-model="form.birthDay" required type="date" value-format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" /> </el-form-item> <el-form-item label="鎵嬫満锛�"> <el-input v-model="form.phone"></el-input> </el-form-item> - <el-form-item label="閮ㄩ棬锛�" prop="userLevel" required> - <el-select v-model="form.userLevel" placeholder="閮ㄩ棬"> - <el-option v-for="item in levelEnum" :key="item.key" :value="item.key" :label="item.value"></el-option> + <el-form-item label="閮ㄩ棬锛�" prop="deptIds" required> + <el-select v-model="form.deptIds" 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="tagIds"> + <el-select v-model="form.tagIds" multiple collapse-tags placeholder="鏍囩"> + <el-option v-for="item in tags" :key="item.id" :value="item.id" :label="item.name"></el-option> </el-select> </el-form-item> <el-form-item label="鐘舵�侊細" required> @@ -46,10 +51,14 @@ <script> import { mapGetters, mapState, mapActions } from 'vuex' import userApi from '@/api/user' +import departmentApi from '@/api/department' export default { data () { return { + depts: [], + tags: [], + value2:[], form: { id: null, userName: '', @@ -61,7 +70,8 @@ sex: '', birthDay: null, phone: null, - userLevel: null + deptIds: '', + tagIds: [] }, formLoading: false, rules: { @@ -71,25 +81,54 @@ realName: [ { required: true, message: '璇疯緭鍏ョ湡瀹炲鍚�', trigger: 'blur' } ], - userLevel: [ + deptIds: [ { required: true, message: '璇烽�夋嫨閮ㄩ棬', trigger: 'change' } + ], + birthDay: [ + { required: true, message: '璇烽�夋嫨鍑虹敓鏃ユ湡', trigger: 'blur' } ] } } }, created () { + this.getTags(); + this.getDepts(); + + console.log(this.levelEnum) let id = this.$route.query.id let _this = this + + if (id && parseInt(id) !== 0) { _this.formLoading = true userApi.selectUser(id).then(re => { _this.form = re.response _this.formLoading = false + console.log(re.response.deptIds) + const isEmpty = re.response.deptIds.trim().length === 0; + if (isEmpty){ + _this.form.deptIds = [] + }else { + _this.form.deptIds = re.response.deptIds.split(',').map(Number) + } + console.log(isEmpty); // 杈撳嚭锛歵rue + console.log(_this.form.deptIds) }) } }, methods: { + getTags () { + userApi.tagList(null).then(data => { + this.tags = data.response + }) + }, + getDepts () { + departmentApi.getDeptAdmins().then(res => { + this.depts = res.response + }) + }, submitForm () { + console.log("this.form", this.form) let _this = this this.$refs.form.validate((valid) => { if (valid) { @@ -126,7 +165,8 @@ sex: '', birthDay: null, phone: null, - userLevel: null + deptIds: [], + tagIds: [] } this.form.id = lastId }, @@ -140,8 +180,10 @@ sexEnum: state => state.user.sexEnum, roleEnum: state => state.user.roleEnum, statusEnum: state => state.user.statusEnum, - levelEnum: state => state.user.levelEnum - }) + levelEnum: state => state.user.levelEnum, + + }), + } } </script> -- Gitblit v1.8.0