From d85d9ae08781a5b0d9b7f854460d3f07d043595a Mon Sep 17 00:00:00 2001 From: 祖安之光 <11848914+light-of-zuan@user.noreply.gitee.com> Date: 星期五, 11 七月 2025 13:27:22 +0800 Subject: [PATCH] 修改新增 --- src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue | 141 +++++++++++++++++++++++++++++----------------- 1 files changed, 89 insertions(+), 52 deletions(-) diff --git a/src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue b/src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue index 41e255b..b8fff89 100644 --- a/src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue +++ b/src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue @@ -21,6 +21,18 @@ <el-radio :label="1">女</el-radio> </el-radio-group> </el-form-item> + <el-form-item label="年龄:" prop="age" v-if="state.title !== '修改密码'"> + <el-input v-model.number.trim="state.form.age" type="number" :disabled="disabled" placeholder="请输入年龄"></el-input> + </el-form-item> + <el-form-item label="职称:" prop="positional" v-if="state.title !== '修改密码'"> + <el-input v-model.trim="state.form.positional" :disabled="disabled" placeholder="请输入职称"></el-input> + </el-form-item> + <el-form-item label="人员类别:" prop="personType" v-if="state.title !== '修改密码'"> + <el-radio-group v-model="state.form.personType" :disabled="disabled"> + <el-radio :label="1">技术</el-radio> + <el-radio :label="2">管理</el-radio> + </el-radio-group> + </el-form-item> <el-form-item label="身份证号:" prop="idCard" v-if="state.title !== '修改密码'"> <el-input v-model.trim="state.form.idCard" :maxlength="18" :disabled="disabled" placeholder="请输入身份证号"></el-input> </el-form-item> @@ -30,6 +42,14 @@ type="date" value-format="YYYY-MM-DD" placeholder="请选择入职时间" + /> + </el-form-item> + <el-form-item label="离职时间:" prop="resignTime" v-if="state.title !== '修改密码'" > + <el-date-picker + v-model="state.form.resignTime" + type="date" + value-format="YYYY-MM-DD" + placeholder="请选择离职时间" /> </el-form-item> <el-form-item label="密码:" prop="password" v-if="state.title == '新增' || state.title == '修改密码'"> @@ -43,14 +63,15 @@ </el-form-item> <el-form-item label="用户类型:" v-if="state.title !== '修改密码'" prop="userType"> <el-radio-group v-model="state.form.userType" :disabled="disabled" @change="changeType" v-if="state.title == '新增'"> - <el-radio :label="0">系统管理员</el-radio> - <el-radio :label="1">企业管理员</el-radio> - <el-radio :label="2">企业用户</el-radio> -<!-- <el-radio :label="3" v-if="!state.isAdmin">车间(岗位)级</el-radio>--> + <el-radio :label="0" v-if="state.currentUserType == 0">系统管理员</el-radio> + <el-radio :label="6" v-if="state.currentUserType == 0 || state.currentUserType == 6 ">企业管理员</el-radio> + <el-radio :label="1" v-if="state.currentUserType == 0 || state.currentUserType == 6 || state.currentUserType ==1">企业用户</el-radio> + <el-radio :label="2" v-if="state.currentUserType !== 3">部门级</el-radio> + <el-radio :label="3">车间(岗位)级</el-radio> <!-- <el-radio :label="4" v-if="state.currentUserType == 0">其他</el-radio>--> </el-radio-group> - <span v-else-if="state.title == '查看'">{{state.currentUserType === 0 ? '管理员' : state.currentUserType === 1 ? '企业级' : state.currentUserType === 2 ? '部门级' : state.currentUserType === 3 ? '车间级' :'其他'}}</span> - <span v-else-if="state.title == '编辑'">{{state.form.userType === 0 ? '管理员' : state.form.userType === 1 ? '企业级' : state.form.userType === 2 ? '部门级' : state.form.userType === 3 ? '车间级' :'其他'}}</span> + <span v-else-if="state.title == '查看'">{{state.currentUserType === 0 ? '系统管理员' : state.currentUserType === 1 ? '企业用户' : state.currentUserType === 6 ? '企业管理员' : state.currentUserType === 2 ? '部门级' : state.currentUserType === 3 ? '车间级' :'其他'}}</span> + <span v-else-if="state.title == '编辑'">{{state.form.userType === 0 ? '系统管理员' : state.form.userType === 1 ? '企业用户' : state.form.userType === 2 ? '部门级' : state.form.userType === 3 ? '车间级' :'其他'}}</span> <!-- <el-radio-group v-model="state.form.userType" :disabled="disabled" @change="changeType" v-else-if="state.title == '编辑'">--> <!-- <el-radio :label="0" v-if="state.currentUserType == 0">管理员</el-radio>--> <!-- <el-radio :label="1" >企业级</el-radio>--> @@ -103,7 +124,22 @@ </el-form-item> - <el-form-item label="部门:" prop="deptId" v-if="state.title !== '修改密码'"> + <el-form-item label="所属上级账号:" prop="companyName" v-if="showChild"> + <scorllSelect + :disabled="disabled || state.title =='编辑'" + ref="scrollRef" + v-model="state.form.parentName" + @getval = "getSelectUser" + placeholder="请选择" + clearable + style="width: 45%;" + filterable + remote + searchKey="username" + :methods="getUser"> + </scorllSelect> + </el-form-item> + <el-form-item label="部门:" prop="deptId" v-if="state.title !== '修改密码' && state.form.userType !== 0"> <el-select clearable v-model="state.form.deptId" @@ -120,26 +156,11 @@ /> </el-select> </el-form-item> - <el-form-item label="职务:" prop="duty" v-if="state.title !== '修改密码'" > + <el-form-item label="职务:" prop="duty" v-if="state.title !== '修改密码' && state.form.userType !== 0"> <el-input v-model.trim="state.form.duty" :disabled="disabled" placeholder="请输入职务"></el-input> </el-form-item> - <el-form-item label="专业:" prop="post" v-if="state.title !== '修改密码'" > + <el-form-item label="专业:" prop="post" v-if="state.title !== '修改密码' && state.form.userType !== 0"> <el-input v-model.trim="state.form.post" :disabled="disabled" placeholder="请输入专业"></el-input> - </el-form-item> - <el-form-item label="所属上级账号:" prop="companyName" v-if="showChild"> - <scorllSelect - :disabled="disabled || state.title =='编辑'" - ref="scrollRef" - v-model="state.form.parentName" - @getval = "getSelectUser" - placeholder="请选择" - clearable - style="width: 45%;" - filterable - remote - searchKey="username" - :methods="getUser"> - </scorllSelect> </el-form-item> </el-form> <template #footer v-if="state.title !='查看'"> @@ -265,10 +286,14 @@ companyName: '', parentId: null, entryTime: '', + resignTime: '', idCard: '', deptId: null, duty: '', - post: '' + post: '', + age: null, + personType: null, + positional: '' }, formRules:{ name: [{ required: true, message: '请输入姓名', trigger: 'blur' }], @@ -277,12 +302,13 @@ username: [{ required: true, message: '请选择用户名', trigger: 'blur' }], password: [{ required: true, validator: validatePwd, trigger: 'blur' }], confirmPassword: [{ required: true, validator: equalToPassword, trigger: 'blur' }], - phone: [{ validator: validateUserPhone, trigger: 'blur' }], + // phone: [{ validator: validateUserPhone, trigger: 'blur' }], userType: [{ required: true, message: '请选择用户类型', trigger: 'blur' }], - idCard: [{ validator: verifyId, trigger: 'blur' }], + // idCard: [{ validator: verifyId, trigger: 'blur' }], entryTime: [{ required: true, message: '请选择入职时间', trigger: 'blur' }], - // duty: [{ required: true, message: '请输入职务', trigger: 'blur' }], - // post: [{ required: true, message: '请输入专业', trigger: 'blur' }] + age: [{ required: true, message: '请输入年龄', trigger: 'blur' }], + personType: [{ required: true, message: '请选择人员类别', trigger: 'blur' }], + positional: [{ required: true, message: '请输入职称', trigger: 'blur' }] }, companyList: [], userList: [], @@ -436,7 +462,7 @@ const onSubmit = async () => { const valid = await superRef.value.validate(); if(valid){ - if((state.form.userType ===1 && state.form.companyId ===null) || ((state.form.userType ===2 ||state.form.userType ===3) && (state.form.parentId ===null ||state.form.companyId===null))){ + if((state.form.userType ===2 ||state.form.userType ===3) && (state.form.parentId ===null ||state.form.companyId===null)){ ElMessage.warning('请选择所属父级账号') return; } @@ -468,8 +494,13 @@ parentId: data.parentId, idCard: data.idCard, entryTime: data.entryTime, + resignTime: data.resignTime, duty: data.duty, - post: data.post + post: data.post, + companyName: data.companyName, + age: data.age, + personType: data.personType, + positional: data.positional } const res = await editUser(param) @@ -512,28 +543,37 @@ state.form.companyId = null; state.form.companyName = ''; //当前是管理员级用户 + console.log(state.currentUserType,'type') if(state.currentUserType === 0){ if(state.form.userType === 0){ showCompany.value = false; showChild.value = false; }else { showCompany.value = true; - showChild.value = false; + if(state.form.userType === 3){ + showChild.value = true + }else{ + showChild.value = false; + } + } + }else{ + state.form.companyId = userInfo.value.companyId; + state.form.companyName = userInfo.value.companyName + showCompany.value = true } //当前是企业级/其他用户选择部门 - if((state.currentUserType === 1 && state.form.userType === 2) || (state.currentUserType === 4 && state.form.userType === 2)){ + if((state.currentUserType === 1 && state.form.userType === 2) || (state.currentUserType === 4 && state.form.userType === 2) || (state.currentUserType === 6 && state.form.userType === 2)){ state.form.parentId = userInfo.value.id; state.form.companyName = userInfo.value.companyName state.form.companyId = userInfo.value.companyId; showChild.value = false; - showCompany.value = true; + // showCompany.value = true; - } //当前是企业级/其他用户选择车间 - else if((state.currentUserType === 1 && state.form.userType === 3) || (state.currentUserType === 4 && state.form.userType === 3)){ + } else if((state.currentUserType === 1 && state.form.userType === 3) || (state.currentUserType === 4 && state.form.userType === 3)|| (state.currentUserType === 6 && state.form.userType === 3)){ state.form.companyName = userInfo.value.companyName state.form.companyId = userInfo.value.companyId; - showCompany.value = true; + // showCompany.value = true; showChild.value = true; const param = { userType: 2, @@ -548,22 +588,9 @@ state.form.parentId = userInfo.value.id; state.form.companyName = userInfo.value.companyName state.form.companyId = userInfo.value.companyId; - showCompany.value = true; + // showCompany.value = true; showChild.value = false; } - // if(state.isAdmin){ - // state.form.companyId = null; - // state.form.companyName = ''; - // } - // state.form.parentId = null; - // state.form.parentName = ''; - // if(state.form.userType === 2 || state.form.userType === 3 ){ - // const param = { - // userType: state.form.userType-1, - // companyId: state.form.companyId, - // } - // scrollRef.value.getList(param,'change'); - // } } const handleClose = () => { @@ -577,7 +604,17 @@ userType: null, sex: 0, companyId: null, - parentId: null + companyName: '', + parentId: null, + entryTime: '', + resignTime: '', + idCard: '', + deptId: null, + duty: '', + post: '', + age: null, + personType: null, + positional: '' } showCompany.value = false; showChild.value = false; -- Gitblit v1.9.2