From 003d931e17089fe493ff75e290b3d20ad21f46e3 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期四, 06 六月 2024 13:51:25 +0800
Subject: [PATCH] bug修改
---
src/utils/request.js | 21 ++++--
src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue | 108 ++++++++++++++++++++++++++---------
src/store/modules/user.js | 7 +
src/views/safetyReview/userManage/expertUsers/index.vue | 13 ++-
src/assets/images/noPic.png | 0
src/views/components/details.vue | 1
6 files changed, 106 insertions(+), 44 deletions(-)
diff --git a/src/assets/images/noPic.png b/src/assets/images/noPic.png
new file mode 100644
index 0000000..c70a2cf
--- /dev/null
+++ b/src/assets/images/noPic.png
Binary files differ
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index beee1d5..ab76464 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -26,8 +26,11 @@
login(username, password, code, uuid, identity).then( async res => {
setToken(res.data.token)
Cookies.set('userInfo',JSON.stringify(res.data))
- await getUserById({userId:res.data.id}).then(res => {
- Cookies.set('userState',JSON.stringify(res.data.state))
+ await getUserById({userId:res.data.id}).then(ress => {
+ Cookies.set('userState',JSON.stringify(ress.data.state))
+ if(res.data.identity === 1){
+ Cookies.set('attribute',JSON.stringify(ress.data.agency.attribute))
+ }
})
this.token = res.data.token
resolve()
diff --git a/src/utils/request.js b/src/utils/request.js
index d2da40a..68d1bdd 100644
--- a/src/utils/request.js
+++ b/src/utils/request.js
@@ -104,16 +104,21 @@
}
return Promise.reject('无效的会话,或者会话已过期,请重新登录。')
} else if (code === 500) {
- ElMessage({ message: msg, type: 'error' })
- if(msg === 'Token已失效,请重新登录!' || msg === 'token非法无效!'){
- ElMessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示', { confirmButtonText: '重新登录', cancelButtonText: '取消', type: 'warning' }).then(() => {
- isRelogin.show = false;
- removeToken()
- location.href = '/homePage';
- }).catch(() => {
- });
+ if(msg === '文件不存在'){
+
+ }else {
+ ElMessage({ message: msg, type: 'error' })
+ if(msg === 'Token已失效,请重新登录!' || msg === 'token非法无效!'){
+ ElMessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示', { confirmButtonText: '重新登录', cancelButtonText: '取消', type: 'warning' }).then(() => {
+ isRelogin.show = false;
+ removeToken()
+ location.href = '/homePage';
+ }).catch(() => {
+ });
+ }
}
+
return Promise.reject(new Error(msg))
} else if (code === 601) {
ElMessage({ message: msg, type: 'warning' })
diff --git a/src/views/components/details.vue b/src/views/components/details.vue
index 6709865..2b765a4 100644
--- a/src/views/components/details.vue
+++ b/src/views/components/details.vue
@@ -136,6 +136,7 @@
state.content = res.data
if(state.content.updateTime){state.content.updateTime.substring(0.,16)}
state.content.createTime = state.content.createTime.substring(0.,16)
+ state.content.pubDate = state.content.pubDate.substring(0,10)
}else{
ElMessage.warning(res.message)
}
diff --git a/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue b/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue
index 7600bca..ca97e72 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 !== '修改密码'">
@@ -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 {
+ attribute.value = JSON.parse(Cookies.get('attribute'))
+ console.log("attribute", attribute.value)
+
+ } else {
getAgency()
}
- console.log("userinfo",userInfo)
}
@@ -401,6 +421,7 @@
const res = await getUserById(param);
if(res.code == 200){
state.form = res.data
+ // debugger
state.socialList = res.data.socialAttach.map(url => {
return {
url: import.meta.env.VITE_APP_BASE_API +'/'+url.path,
@@ -650,7 +671,8 @@
}
const handlePhotoRemove = async (file) => {
- console.log("fileD",file)
+ // state.form.idPhoto = ''
+
let path = ""
if(file.response && file.response.data){
path = file.response.data.path
@@ -658,19 +680,37 @@
const base = import.meta.env.VITE_APP_BASE_API
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
+ // })
+ // }
}
@@ -684,18 +724,28 @@
path = file.response.data.path
}
- const res = await delPic({path: path})
+ await delPic({path: path}).then(res => {
if(res.code == 200){
- ElMessage({
- type: 'success',
- message: '文件已删除'
- })
+ // ElMessage({
+ // type: 'success',
+ // message: '文件已删除'
+ // })
}else{
- ElMessage({
- type: 'warning',
- message: res.message
- })
+ ElMessage({
+ type: 'warning',
+ message: res.message
+ })
}
+ }).catch(() => {
+ 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)
+ }
+ });
+
if(type === 1){
state.form.socialAttach = state.form.socialAttach.filter(item => item.path !== path)
}else if(type === 2){
diff --git a/src/views/safetyReview/userManage/expertUsers/index.vue b/src/views/safetyReview/userManage/expertUsers/index.vue
index 9205b82..4279d1b 100644
--- a/src/views/safetyReview/userManage/expertUsers/index.vue
+++ b/src/views/safetyReview/userManage/expertUsers/index.vue
@@ -8,13 +8,15 @@
@click="openDialog('add',{})"
>新增</el-button>
</div>
- <div style="margin-top: 15px;margin-bottom: 15px">
+ <div style="margin-top: 15px;margin-bottom: 15px;">
<el-radio-group v-model="queryParams.expertType">
<el-radio-button label="">全部</el-radio-button>
<el-radio-button label="1">安全评价</el-radio-button>
<el-radio-button label="2">检验检测</el-radio-button>
</el-radio-group>
+
</div>
+ <div style="margin-bottom: 20px"><span style="font-size: 16px;color: #ed5565;">提示:疆外企业无需上传社保、医保、工资清单,疆内企业需每季度进行更新。</span></div>
<div style="margin-bottom: 15px; display: flex;align-items: center">
<el-input
v-model="queryParams.name"
@@ -174,6 +176,7 @@
import {getDictList} from "@/api/backManage/evaluate";
import {ElMessage, ElMessageBox} from "element-plus";
import projectDialog from "./components/projectDialog.vue";
+import noPic from '@/assets/images/noPic.png'
import Cookies from "js-cookie";
import {delMonitor, getExpertList, getMonitorList} from "@/api/sysUsers";
const { proxy } = getCurrentInstance();
@@ -248,10 +251,10 @@
data.dataList = res.data.list.map(item => {
return{
...item,
- socialAttach: item.socialAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}),
- medicalAttach: item.medicalAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}),
- salaryAttach: item.salaryAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}),
- idPhoto: item.idPhoto ? [import.meta.env.VITE_APP_BASE_API + '/' + item.idPhoto ] : [],
+ socialAttach: item.socialAttach.length >0 ?item.socialAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}): [noPic],
+ medicalAttach: item.medicalAttach.length > 0 ?item.medicalAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}):[noPic],
+ salaryAttach: item.salaryAttach.length > 0 ? item.salaryAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}):[noPic],
+ idPhoto: item.idPhoto ? [import.meta.env.VITE_APP_BASE_API + '/' + item.idPhoto ] : [noPic],
lastEstimateTime: item.personProjectVO ? item.personProjectVO.lastEstimateTime.slice(0,10) : '',
projectCount: item.personProjectVO ? item.personProjectVO.projectCount : ''
}
--
Gitblit v1.9.2