From 47b3ce354885e7df90e4219bd4154003c1c241d7 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期二, 04 十一月 2025 13:35:16 +0800
Subject: [PATCH] 修改
---
src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue | 189 ++++++++++++++++++++++++++++++++---------------
1 files changed, 128 insertions(+), 61 deletions(-)
diff --git a/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue b/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue
index 7600bca..45aebc7 100644
--- a/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue
+++ b/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue
@@ -6,7 +6,7 @@
width="900px"
:before-close="handleClose"
>
- <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRules" label-width="150px" >
+ <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRulesOut" label-width="150px" >
<el-row :gutter="22">
<el-col :span="11">
<el-form-item label="姓名:" prop="name" v-if="state.title !== '修改密码'">
@@ -40,12 +40,12 @@
<el-col :span="11">
<el-form-item label="所属机构:" prop="agencyId" v-if="state.title !== '修改密码'">
<el-input v-if="isAgency" v-model="state.agencyName" disabled></el-input>
- <el-select v-model="state.form.agencyId" v-else style="width: 100%" v-loadMore="loadMore" class="m-2" placeholder="请选择机构" popper-class="more_select_dropdown" >
+ <el-select v-model="state.form.agencyName" @change="selectValue" v-else style="width: 100%" v-loadMore="loadMore" class="m-2" placeholder="请选择机构" popper-class="more_select_dropdown" >
<el-option
v-for="item in state.agencyList"
:key="item.id"
:label="item.name"
- :value="item.id"
+ :value="item.name"
/>
</el-select>
</el-form-item>
@@ -122,8 +122,9 @@
</el-form-item>
</el-col>
</el-row>
-
-
+ <el-form-item>
+ <div style="margin-left: -50px"><span style="font-size: 16px;color: #ed5565;">提示:疆外企业无需上传社保、医保、工资清单,疆内企业需每季度进行更新。</span></div>
+ </el-form-item>
<el-form-item prop="socialAttach" label="社保:" v-if="state.title !== '修改密码'">
<el-upload
accept="image/*"
@@ -343,7 +344,7 @@
medicalList: [],
salaryList: [],
photoList: [],
- formRules:{
+ formRulesIn:{
name: [{ required: true, message: '请输入姓名', trigger: 'blur' }],
username: [{ required: true, validator: validateUsername, trigger: 'blur' }],
password: [{ required: true, validator: validatePwd, trigger: 'blur' }],
@@ -359,6 +360,22 @@
salaryAttach: [{required: true, trigger: "blur", message: "请上传工资清单"}],
idPhoto: [{required: true, trigger: "blur", message: "请上传近期证件照"}],
},
+ formRulesOut:{
+ name: [{ required: true, message: '请输入姓名', trigger: 'blur' }],
+ username: [{ required: true, validator: validateUsername, trigger: 'blur' }],
+ password: [{ required: true, validator: validatePwd, trigger: 'blur' }],
+ confirmPassword: [{ required: true, validator: equalToPassword, trigger: 'blur' }],
+ phone: [{ required: true, validator: validateUserPhone, trigger: 'blur' }],
+ post: [{ required: true, message: '请选择职务', trigger: 'change' }],
+ jobTitle:[{ required: true, message: '请输入职称', trigger: 'blur' }],
+ level: [{ required: true, message: '请选择评价师等级', trigger: 'change' }],
+ majorShow:[{ required: true, message: '请选择专业方向', trigger: 'change' }],
+ agencyId: [{ required: true, message: '请选择所属机构', trigger: 'change' }],
+ // socialAttach: [{required: true, trigger: "blur", message: "请上传社保图片"}],
+ // medicalAttach: [{required: true, trigger: "blur", message: "请上传医保图片"}],
+ // salaryAttach: [{required: true, trigger: "blur", message: "请上传工资清单"}],
+ idPhoto: [{required: true, trigger: "blur", message: "请上传近期证件照"}],
+ },
areaList: [],
agencyList: [],
header: {
@@ -376,16 +393,19 @@
})
+const attribute = ref(null);
const getUserInfoAgency = () => {
const userInfo = JSON.parse(Cookies.get('userInfo'))
- if(userInfo.identity === 1){
+ if (userInfo.identity === 1) {
state.agencyName = userInfo.agentName;
state.form.agencyId = userInfo.agentId;
isAgency.value = true;
- }else {
- getAgency()
+ attribute.value = JSON.parse(Cookies.get('attribute'))
+ console.log("attribute", attribute.value)
+
+ } else {
+ getAgency('open')
}
- console.log("userinfo",userInfo)
}
@@ -401,6 +421,7 @@
const res = await getUserById(param);
if(res.code == 200){
state.form = res.data
+ state.form.agencyName = res.data.agency.name
state.socialList = res.data.socialAttach.map(url => {
return {
url: import.meta.env.VITE_APP_BASE_API +'/'+url.path,
@@ -436,7 +457,7 @@
})
}
state.form.majorShow = arr;
- console.log(state.form.majorShow,'certificateList')
+ console.log(state.form,'certificateList')
}
}else{
@@ -650,82 +671,120 @@
}
const handlePhotoRemove = async (file) => {
- console.log("fileD",file)
+ if (file && file.status == 'success') {
+ // state.form.idPhoto = ''
+
let path = ""
- if(file.response && file.response.data){
+ if (file.response && file.response.data) {
path = file.response.data.path
- }else {
+ } else {
const base = import.meta.env.VITE_APP_BASE_API
- path = file.url.substring(base.length+1,file.url.length )
+ path = file.url.substring(base.length + 1, file.url.length)
}
- const res = await delPic({path: path})
- if(res.code == 200){
- ElMessage({
- type: 'success',
- message: '文件已删除'
- })
+ await delPic({path: path}).then(res => {
+ if (res.code == 200) {
+ // ElMessage({
+ // type: 'success',
+ // message: '文件已删除'
+ // })
+ state.form.idPhoto = ''
+ } else {
+ ElMessage({
+ type: 'warning',
+ message: res.message
+ })
+ }
+ }).catch(() => {
state.form.idPhoto = ''
- }else{
- ElMessage({
- type: 'warning',
- message: res.message
- })
- }
+ });
+}
+
+
+ // const res = await delPic({path: path})
+ // if(res.code == 200){
+ // ElMessage({
+ // type: 'success',
+ // message: '文件已删除'
+ // })
+ // state.form.idPhoto = ''
+ // }else{
+ // ElMessage({
+ // type: 'warning',
+ // message: res.message
+ // })
+ // }
}
const handleRemove = async (file, uploadFiles,type) => {
+ if(file && file.status == 'success') {
+
let path = ""
- if(state.title === '编辑') {
- const base = import.meta.env.VITE_APP_BASE_API
- path = file.url.substring(base.length+1,file.url.length )
- }else {
- path = file.response.data.path
+ if (state.title === '编辑') {
+ const base = import.meta.env.VITE_APP_BASE_API
+ path = file.url.substring(base.length + 1, file.url.length)
+ } else {
+ path = file.response.data.path
}
- const res = await delPic({path: path})
- if(res.code == 200){
+ await delPic({path: path}).then(res => {
+ if (res.code == 200) {
+ // ElMessage({
+ // type: 'success',
+ // message: '文件已删除'
+ // })
+ } else {
ElMessage({
- type: 'success',
- message: '文件已删除'
+ type: 'warning',
+ message: res.message
})
- }else{
- ElMessage({
- type: 'warning',
- message: res.message
- })
- }
- if(type === 1){
+ }
+ }).catch(() => {
+ if (type === 1) {
state.form.socialAttach = state.form.socialAttach.filter(item => item.path !== path)
- }else if(type === 2){
+ } else if (type === 2) {
state.form.medicalAttach = state.form.medicalAttach.filter(item => item.path !== path)
- }else {
+ } else {
state.form.salaryAttach = state.form.salaryAttach.filter(item => item.path !== path)
+ }
+ });
+
+ if (type === 1) {
+ state.form.socialAttach = state.form.socialAttach.filter(item => item.path !== path)
+ } else if (type === 2) {
+ state.form.medicalAttach = state.form.medicalAttach.filter(item => item.path !== path)
+ } else {
+ state.form.salaryAttach = state.form.salaryAttach.filter(item => item.path !== path)
}
+ }
}
const finshed = ref(false)
-const getAgency = async () => {
+const getAgency = async (type) => {
+ if (type === 'open' && state.pageNum !== 1) {
+
+ } else {
const queryParams = {
- pageNum: state.pageNum,
- pageSize: state.pageSize,
+ pageNum: state.pageNum,
+ pageSize: state.pageSize,
}
const res = await getInsitutionList(queryParams)
- if(res.code == 200){
- if(res.data.pageNum === state.pageNum){
- finshed.value = false;
- if(state.pageNum == 1){
- state.agencyList = res.data.list
- }else {
- state.agencyList =state.agencyList .concat(res.data.list)
- }
- }else {
- finshed.value = true;
+ if (res.code == 200) {
+ if (res.data.pageNum === state.pageNum) {
+ finshed.value = false;
+ if (state.pageNum == 1) {
+ state.agencyList = res.data.list
+ } else {
+ state.agencyList = state.agencyList.concat(res.data.list)
}
+ } else {
+ finshed.value = true;
+ }
- }else{
- ElMessage.warning(res.message)
+ } else {
+ ElMessage.warning(res.message)
}
+ }
}
@@ -736,7 +795,7 @@
setTimeout(() => {
if (finshed.value) return //值为true,则代表没有数据了
state.pageNum += 1
- getAgency()
+ getAgency('')
}, 500)
}
@@ -745,6 +804,14 @@
// state.form.selectMajorList= val;
console.log('选中的xxxx',val)
}
+const selectValue = (val) => {
+ state.agencyList.forEach(item => {
+ if(item.name === val){
+ state.form.agencyId = item.id
+ }
+ })
+
+}
defineExpose({
openDialog
--
Gitblit v1.9.2