1、优化与完善个人中心的资料更新;2、修改员工DAO层的方法参数

This commit is contained in:
zhoumingfa
2025-02-21 16:17:44 +08:00
parent a100b1ab12
commit 81b7b2a3a4
21 changed files with 378 additions and 141 deletions

View File

@@ -36,10 +36,10 @@ export const employeeApi = {
return postRequest('/employee/update', params);
},
/**
* 更新登录人信息
* 更新员工个人中心信息
*/
updateByLogin: (params) => {
return postRequest('/employee/update/login', params);
updateCenter: (params) => {
return postRequest('/employee/update/center', params);
},
/**
* 更新登录人头像
@@ -77,21 +77,18 @@ export const employeeApi = {
updateEmployeePassword: (param) => {
return postEncryptRequest('/employee/update/password', param);
},
/**
* 获取密码复杂度
*/
getPasswordComplexityEnabled: () => {
return getRequest('/employee/getPasswordComplexityEnabled');
},
/**
* 更新员工禁用状态
*/
updateDisabled: (employeeId) => {
return getRequest(`/employee/update/disabled/${employeeId}`);
},
/**
* 查询员工-根据部门id
*/

View File

@@ -73,7 +73,7 @@ export const useUserStore = defineStore({
}
return localRead(localKey.USER_TOKEN);
},
getNeedUpdatePwdFlag(state){
getNeedUpdatePwdFlag(state) {
return state.needUpdatePwdFlag;
},
//是否初始化了 路由
@@ -206,7 +206,7 @@ export const useUserStore = defineStore({
// @ts-ignore
menuTitle: route.meta.title,
menuQuery: route.query,
menuIcon:route.meta?.icon,
menuIcon: route.meta?.icon,
// @ts-ignore
fromMenuName: from.name,
fromMenuQuery: from.query,

View File

@@ -11,6 +11,16 @@
<a-form-item label="登录账号" name="loginName">
<a-input class="form-item" v-model:value.trim="form.loginName" placeholder="请输入登录账号" disabled />
</a-form-item>
<a-form-item label="部门" name="departmentId">
<DepartmentTreeSelect
class="form-item"
ref="departmentTreeSelect"
width="100%"
:init="false"
v-model:value="form.departmentId"
disabled
/>
</a-form-item>
<a-form-item label="员工名称" name="actualName">
<a-input class="form-item" v-model:value.trim="form.actualName" placeholder="请输入员工名称" />
</a-form-item>
@@ -20,8 +30,11 @@
<a-form-item label="手机号码" name="phone">
<a-input class="form-item" v-model:value.trim="form.phone" placeholder="请输入手机号码" />
</a-form-item>
<a-form-item label="部门" name="departmentId">
<DepartmentTreeSelect class="form-item" ref="departmentTreeSelect" width="100%" :init="false" v-model:value="form.departmentId" />
<a-form-item label="邮箱" name="email">
<a-input v-model:value.trim="form.email" placeholder="请输入邮箱" />
</a-form-item>
<a-form-item label="职务" name="positionId">
<PositionSelect v-model:value="form.positionId" placeholder="请选择职务" />
</a-form-item>
<a-form-item label="备注" name="remark">
<a-textarea class="form-item" v-model:value="form.remark" placeholder="请输入备注" :rows="4" />
@@ -65,6 +78,7 @@
import { onMounted, reactive, ref } from 'vue';
import { regular } from '/@/constants/regular-const.js';
import DepartmentTreeSelect from '/@/components/system/department-tree-select/index.vue';
import PositionSelect from '/@/components/system/position-select/index.vue';
import SmartEnumSelect from '/@/components/framework/smart-enum-select/index.vue';
import { loginApi } from '/@/api/system/login-api.js';
import { useUserStore } from '/@/store/modules/system/user.js';
@@ -93,10 +107,12 @@
phone: '',
// 部门id
departmentId: undefined,
// 是否启用
disabledFlag: undefined,
// 邮箱
email: undefined,
// 职务级别
positionId: undefined,
// 是否禁用
disabledFlag: undefined,
// 备注
remark: '',
};
@@ -111,7 +127,7 @@
{ pattern: regular.phone, message: '请输入正确的手机号码', trigger: 'blur' },
],
gender: [{ required: true, message: '性别不能为空' }],
departmentId: [{ required: true, message: '部门不能为空' }],
email: [{ required: true, message: '请输入邮箱' }],
};
// 头像地址
let avatarUrl = ref();
@@ -128,12 +144,13 @@
form.employeeId = data.employeeId;
form.loginName = data.loginName;
form.actualName = data.actualName;
form.email = data.email;
form.gender = data.gender;
form.phone = data.phone;
form.departmentId = data.departmentId;
form.disabledFlag = data.disabledFlag;
form.email = data.email;
form.positionId = data.positionId;
form.remark = data.remark;
form.disabledFlag = data.disabledFlag;
// 头像展示
avatarUrl.value = data.avatar;
} catch (e) {
@@ -187,7 +204,7 @@
async function updateEmployee() {
SmartLoading.show();
try {
await employeeApi.updateByLogin(form);
await employeeApi.updateCenter(form);
message.success('更新成功');
// 重新获取详情,刷新整体缓存
await getLoginInfo();

View File

@@ -119,6 +119,7 @@
phone: undefined,
roleIdList: undefined,
positionId: undefined,
email: undefined,
};
let form = reactive(_.cloneDeep(formDefault));