From 959d8b7b00590bfd1e6196a2d34ade2132a8bcbb Mon Sep 17 00:00:00 2001
From: 祖安之光 <11848914+light-of-zuan@user.noreply.gitee.com>
Date: 星期四, 17 七月 2025 14:23:01 +0800
Subject: [PATCH] 修改新增
---
src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue | 146 ++++++++++++++++++++++++++++++------------------
1 files changed, 92 insertions(+), 54 deletions(-)
diff --git a/src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue b/src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue
index bf956a2..055431f 100644
--- a/src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue
+++ b/src/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue
@@ -21,6 +21,19 @@
<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 :label="3">行政</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 +43,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 == '修改密码'">
@@ -42,15 +63,16 @@
<el-input v-model.trim="state.form.phone" :maxlength="11" :disabled="disabled" placeholder="请输入手机号"></el-input>
</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" v-if="state.currentUserType == 0">管理员</el-radio>
- <el-radio :label="1" v-if="state.currentUserType == 0 ">企业级</el-radio>
- <el-radio :label="2" v-if="state.currentUserType == 1 ">部门级</el-radio>
- <el-radio :label="3" v-if="!state.isAdmin">车间(岗位)级</el-radio>
- <el-radio :label="4" v-if="state.currentUserType == 0">其他</el-radio>
+ <el-radio-group v-model="state.form.userType" :disabled="disabled" @change="changeType" v-if="state.title == '新增' || state.title == '编辑'">
+ <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>{{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 +125,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 +157,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 +287,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 +303,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 +463,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 +495,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 +544,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 +589,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 +605,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