From cc3e08bda13360c88b7189e8f8d043b60783c7fb Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期四, 21 十一月 2024 16:46:32 +0800 Subject: [PATCH] 新增 --- src/views/safetyReview/expertManage/fillForm/index.vue | 68 ++++++++++++++++++--------------- 1 files changed, 37 insertions(+), 31 deletions(-) diff --git a/src/views/safetyReview/expertManage/fillForm/index.vue b/src/views/safetyReview/expertManage/fillForm/index.vue index 543b20b..996a55d 100644 --- a/src/views/safetyReview/expertManage/fillForm/index.vue +++ b/src/views/safetyReview/expertManage/fillForm/index.vue @@ -5,28 +5,29 @@ <el-form :model="state.form" :rules="state.rules" ref="ruleFormRef" label-width="200px"> <el-row> <el-col :span="20"> - <el-form-item label="专业类别" prop="profession"> + <el-form-item label="专业类别" prop="domain"> <el-cascader style="width: 100%" - v-model="state.form.profession" + clearable + v-model="state.form.domain" :options="state.expertsType" - :props="{ expandTrigger: 'hover',value: 'id',label: 'classifyName' }" + :props="{ expandTrigger: 'hover',value: 'classifyName',label: 'classifyName',emitPath: false }" @change="professionChange"></el-cascader> </el-form-item> </el-col> </el-row> - <!-- <el-row>--> - <!-- <el-col :span="20">--> - <!-- <el-form-item label="填报日期" prop="date">--> - <!-- <el-date-picker--> - <!-- style="width: 100%"--> - <!-- v-model="form.date"--> - <!-- type="date"--> - <!-- placeholder="选择日期">--> - <!-- </el-date-picker>--> - <!-- </el-form-item>--> - <!-- </el-col>--> - <!-- </el-row>--> + <el-row> + <el-col :span="20"> + <el-form-item label="业务处室:" prop="deptId"> + <el-cascader + style="width: 100%" + clearable + v-model="state.form.deptId" + :options="state.deptList" + :props="{ expandTrigger: 'hover', value: 'deptId',label: 'deptName',emitPath: false}"></el-cascader> + </el-form-item> + </el-col> + </el-row> <el-row> <el-col :span="20"> <el-form-item label="姓名" prop="name"> @@ -50,7 +51,7 @@ <el-date-picker style="width: 100%" v-model="state.form.birthday" - value-format="YYYY-MM-DD 00:00:00" + value-format="YYYY-MM-DD" type="date" placeholder="选择日期"> </el-date-picker> @@ -318,7 +319,9 @@ import {delPic} from "@/api/login" import { getToken } from "@/utils/auth" import {Base64} from "js-base64" +import {listDept, listOutDept} from "@/api/system/dept"; +const { proxy } = getCurrentInstance(); const imgDialog = ref(false) const ruleFormRef = ref() var validatePass = (rule, value, callback) => { @@ -355,9 +358,8 @@ form:{ name:'', sex:'', - profession: [], - bigClassify:null, - smallClassify: null, + domain: '', + deptId: null, birthday: '', phone:'', title: '', @@ -388,6 +390,7 @@ source: 1 }, expertsType: [], + deptList: [], directionList: [ { value: 1, @@ -410,7 +413,7 @@ label: '其他' } ], - uploadUrl: import.meta.env.VITE_APP_BASE_API + '/system/common/uploadFile', + uploadUrl: import.meta.env.VITE_APP_BASE_API + '/common/upload', header: { Authorization: 'Bearer ' + getToken() }, @@ -425,7 +428,8 @@ rules:{ name:[{ required: true, message: '请填写姓名', trigger: 'blur' }], sex:[{ required: true, message: '请选择性别', trigger: 'blur' }], - profession: [{ required: true, message: '请选择专业类别', trigger: 'blur' }], + domain: [{ required: true, message: '请选择专业类别', trigger: 'blur' }], + deptId: [{ required: true, message: '请选择业务处室', trigger: 'blur' }], birthday: [{ required: true, message: '请选择出生日期', trigger: 'blur' }], phone:[{ required: true, validator: validatePhone, trigger: 'blur' }], title: [{ required: true, message: '请填写职称', trigger: 'blur' }], @@ -439,6 +443,7 @@ onMounted(()=>{ getExpertsType() + getDepList() }) const getExpertsType = async ()=>{ @@ -451,6 +456,12 @@ message: res.message }); } + } + + function getDepList() { + listOutDept({}).then(response => { + state.deptList = proxy.handleTree(response.data, "deptId",'parentId','children'); + }); } const professionChange=(value)=> { @@ -485,9 +496,9 @@ const handleAvatarSuccess = (res, uploadFile,type) => { if(res.code == 200){ if(type == '证件照'){ - state.form.electronicPhoto = res.data.path + state.form.electronicPhoto = res.url }else{ - uploadFile.name = res.data.path + uploadFile.name = res.url } }else{ ElMessage({ @@ -542,25 +553,20 @@ data.supportDirectionSafety = data.supportDirectionSafety.join(',') data.supportDirectionPrevention = data.supportDirectionPrevention.join(',') data.supportDirectionEmergency = data.supportDirectionEmergency.join(',') - data.bigClassify = data.profession[0] - data.smallClassify = data.profession[1] data.resumeKey = state.resumeList.map(i=>i.name).join(',') data.paperSituationKey = state.inventionList.map(i=>i.name).join(',') data.rewardKey = state.rewardList.map(i=>i.name).join(',') data.achievementKey = state.achievementList.map(i=>i.name).join(',') data.personalOpinionKey = state.proAdviceList.map(i=>i.name).join(',') data.recommendUnitOpinionKey = state.adviceList.map(i=>i.name).join(',') - delete data.profession delete data.id const res= await addExpertInfo(data) if(res.code == 200){ - ElMessage.success(res.message) + ElMessage.success(res.msg) state.form = { name:'', sex:'', - profession: [], - bigClassify:null, - smallClassify: null, + domain: '', birthday: '', phone:'', title: '', @@ -598,7 +604,7 @@ state.proAdviceList = [] state.adviceList = [] }else{ - ElMessage.warning(res.message) + ElMessage.warning(res.msg) } } else { ElMessage.warning('请完善必填信息') -- Gitblit v1.9.2