import { ElMessage } from 'element-plus' // 角色权限映射 const roleMap = { 0: '普通员工', 1: '部门主管', 2: '综合部', 3: '财务部' } // 权限配置 const authConfig = { // 工资条管理 'payroll:view': [0, 1, 2, 3], // 查看工资条 'payroll:edit': [1, 2, 3], // 编辑工资条 'payroll:delete': [2, 3], // 删除工资条 'payroll:show': [1, 2, 3], // 展示给员工 // 组别管理 'group:view': [0, 1, 2, 3], // 查看组别 'group:add': [2], // 添加组别 'group:edit': [2], // 编辑组别 'group:delete': [2], // 删除组别 // 成员管理 'member:view': [0, 1, 2, 3], // 查看成员 'member:add': [2], // 添加成员 'member:edit': [2], // 编辑成员 'member:delete': [2], // 删除成员 'member:role': [2], // 修改成员角色 'member:salary': [3], // 修改成员工资 } export default { mounted(el, binding) { const { value } = binding const userInfo = JSON.parse(sessionStorage.getItem('userInfo') || '{}') const userRole = userInfo.roles || 0 // 如果没有权限配置,默认显示 if (!value) { return } // 检查权限 const hasAuth = authConfig[value]?.includes(userRole) if (!hasAuth) { // 移除元素 el.parentNode?.removeChild(el) } } }