This commit is contained in:
123 2025-05-23 11:25:13 +08:00
parent 3e11e1bf4c
commit 9206a32c94
2 changed files with 43 additions and 9 deletions

View File

@ -209,6 +209,16 @@ export const deptTreeSelect = (): AxiosPromise<DeptTreeVO[]> => {
});
};
/**
*
*/
export const setDeptAdmin = (userId: Array<string | number> | string | number) => {
return request({
url: '/system/user/setDeptAdmin/' + userId,
method: 'get'
});
};
export default {
listUser,
getUser,
@ -225,5 +235,6 @@ export default {
getAuthRole,
updateAuthRole,
deptTreeSelect,
listUserByDeptId
listUserByDeptId,
setDeptAdmin
};

View File

@ -75,6 +75,11 @@
删除
</el-button>
</el-col>
<el-col :span="1.5">
<el-button v-has-permi="['system:user:admin']" type="success" plain :disabled="multiple" icon="Edit" @click="handleDeptAdmin()">
设置部门主管
</el-button>
</el-col>
<el-col :span="1.5">
<el-dropdown class="mt-[1px]">
<el-button plain type="info">
@ -108,18 +113,23 @@
<el-table-column v-if="columns[4].visible" key="deptName" label="部门" align="center" prop="deptName" :show-overflow-tooltip="true" width="180"/>
<el-table-column v-if="columns[5].visible" key="phonenumber" label="手机号码" align="center" prop="phonenumber" width="120" />
<el-table-column v-if="columns[6].visible" key="employeeHireDate" label="入职时间" align="center" prop="employeeHireDate" width="120" />
<el-table-column v-if="columns[7].visible" key="employeeStatus" label="用工状态" align="center" prop="sealType" width="100">
<el-table-column v-if="columns[7].visible" key="deptAdminFlag" label="是否部门主管" align="center" prop="sealType" width="100">
<template #default="scope">
<dict-tag :options="opr_yes_no" :value="scope.row.deptAdminFlag" />
</template>
</el-table-column>
<el-table-column v-if="columns[8].visible" key="employeeStatus" label="用工状态" align="center" prop="employeeStatus" width="100">
<template #default="scope">
<dict-tag :options="opr_employee_status" :value="scope.row.employeeStatus" />
</template>
</el-table-column>
<el-table-column v-if="columns[8].visible" key="status" label="状态" align="center">
<el-table-column v-if="columns[9].visible" key="status" label="状态" align="center">
<template #default="scope">
<el-switch v-model="scope.row.status" active-value="0" inactive-value="1" @change="handleStatusChange(scope.row)"></el-switch>
</template>
</el-table-column>
<el-table-column v-if="columns[6].visible" key="employeeLeaveDate" label="离职时间" align="center" prop="employeeLeaveDate" width="120" />
<el-table-column v-if="columns[9].visible" label="创建时间" align="center" prop="createTime" width="160">
<el-table-column v-if="columns[10].visible" key="employeeLeaveDate" label="离职时间" align="center" prop="employeeLeaveDate" width="120" />
<el-table-column v-if="columns[11].visible" label="创建时间" align="center" prop="createTime" width="160">
<template #default="scope">
<span>{{ scope.row.createTime }}</span>
</template>
@ -314,7 +324,7 @@ import { checkPermi } from '@/utils/permission';
const router = useRouter();
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { sys_normal_disable, sys_user_sex, opr_employee_status } = toRefs<any>(proxy?.useDict('sys_normal_disable', 'sys_user_sex','opr_employee_status'));
const { sys_normal_disable, sys_user_sex, opr_employee_status,opr_yes_no } = toRefs<any>(proxy?.useDict('sys_normal_disable', 'sys_user_sex','opr_employee_status','opr_yes_no'));
const userList = ref<UserVO[]>();
const loading = ref(true);
const showSearch = ref(true);
@ -353,9 +363,11 @@ const columns = ref<FieldOption[]>([
{ key: 4, label: `部门`, visible: true, children: [] },
{ key: 5, label: `手机号码`, visible: true, children: [] },
{ key: 6, label: `入职时间`, visible: true, children: [] },
{ key: 7, label: `用工状态`, visible: true, children: [] },
{ key: 8, label: `状态`, visible: true, children: [] },
{ key: 9, label: `创建时间`, visible: true, children: [] }
{ key: 7, label: `是否部门主管`, visible: true, children: [] },
{ key: 8, label: `用工状态`, visible: true, children: [] },
{ key: 9, label: `状态`, visible: true, children: [] },
{ key: 10, label: `离职时间`, visible: true, children: [] },
{ key: 11, label: `创建时间`, visible: true, children: [] }
]);
const deptTreeRef = ref<ElTreeInstance>();
@ -513,6 +525,17 @@ const handleDelete = async (row?: UserVO) => {
}
};
/** 设置部门主管 */
const handleDeptAdmin = async (row?: UserVO) => {
const userIds = row?.userId || ids.value;
const [err] = await to(proxy?.$modal.confirm('是否确认设置用户编号为"' + userIds + '"为部门主管?') as any);
if (!err) {
await api.setDeptAdmin(userIds);
await getList();
proxy?.$modal.msgSuccess('设置成功');
}
};
/** 用户状态修改 */
const handleStatusChange = async (row: UserVO) => {
let text = row.status === '0' ? '启用' : '停用';