添加按钮权限
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
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': [2], // 修改成员工资
|
||||
}
|
||||
|
||||
export default {
|
||||
mounted(el, binding) {
|
||||
const { value } = binding
|
||||
const userInfo = JSON.parse(sessionStorage.getItem('userInfo') || '{}')
|
||||
const userRole = userInfo.role || 0
|
||||
|
||||
// 如果没有权限配置,默认显示
|
||||
if (!value) {
|
||||
return
|
||||
}
|
||||
|
||||
// 检查权限
|
||||
const hasAuth = authConfig[value]?.includes(userRole)
|
||||
|
||||
if (!hasAuth) {
|
||||
// 移除元素
|
||||
el.parentNode?.removeChild(el)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user