feat(permissions): 添加完整的权限常量映射和类型定义
- 新增权限常量映射文件,定义系统所有权限标识 - 支持用户管理、角色管理、菜单管理、登录日志权限 - 添加权限组合配置和类型推断支持 - 更新登录用户信息类型,增加buttons权限字段 - 为后续权限指令系统提供基础支撑 Breaking Changes: 无
This commit is contained in:
parent
1a3fd5220c
commit
b29e59be08
82
src/constants/permissions.ts
Normal file
82
src/constants/permissions.ts
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
/**
|
||||||
|
* 权限常量映射
|
||||||
|
* 根据后端接口权限标识定义前端权限常量
|
||||||
|
*/
|
||||||
|
|
||||||
|
// 系统管理模块权限
|
||||||
|
export const PERMISSIONS = {
|
||||||
|
// 用户管理权限
|
||||||
|
USER: {
|
||||||
|
LIST: 'system:user:list',
|
||||||
|
ADD: 'system:user:add',
|
||||||
|
UPDATE: 'system:user:update',
|
||||||
|
DELETE: 'system:user:delete',
|
||||||
|
RESET_PWD: 'system:user:resetPwd',
|
||||||
|
EXPORT: 'system:user:export',
|
||||||
|
IMPORT: 'system:user:import',
|
||||||
|
ROLE: 'system:user:role', // 分配角色权限
|
||||||
|
},
|
||||||
|
|
||||||
|
// 角色管理权限
|
||||||
|
ROLE: {
|
||||||
|
LIST: 'system:role:list',
|
||||||
|
ADD: 'system:role:add',
|
||||||
|
UPDATE: 'system:role:update',
|
||||||
|
DELETE: 'system:role:delete',
|
||||||
|
MENU: 'system:role:menu', // 分配菜单权限
|
||||||
|
},
|
||||||
|
|
||||||
|
// 菜单管理权限
|
||||||
|
MENU: {
|
||||||
|
LIST: 'system:menu:list',
|
||||||
|
ADD: 'system:menu:add',
|
||||||
|
UPDATE: 'system:menu:update',
|
||||||
|
DELETE: 'system:menu:delete',
|
||||||
|
},
|
||||||
|
|
||||||
|
// 登录日志权限
|
||||||
|
LOGIN_LOG: {
|
||||||
|
LIST: 'system:loginlog:list',
|
||||||
|
ADD: 'system:loginlog:add',
|
||||||
|
UPDATE: 'system:loginlog:update',
|
||||||
|
DELETE: 'system:loginlog:delete',
|
||||||
|
},
|
||||||
|
} as const
|
||||||
|
|
||||||
|
// 权限类型推断
|
||||||
|
export type PermissionType = typeof PERMISSIONS[keyof typeof PERMISSIONS][keyof typeof PERMISSIONS[keyof typeof PERMISSIONS]]
|
||||||
|
|
||||||
|
// 常用权限组合
|
||||||
|
export const PERMISSION_GROUPS = {
|
||||||
|
// 用户管理相关权限
|
||||||
|
USER_MANAGEMENT: [
|
||||||
|
PERMISSIONS.USER.LIST,
|
||||||
|
PERMISSIONS.USER.ADD,
|
||||||
|
PERMISSIONS.USER.UPDATE,
|
||||||
|
PERMISSIONS.USER.DELETE,
|
||||||
|
],
|
||||||
|
|
||||||
|
// 角色管理相关权限
|
||||||
|
ROLE_MANAGEMENT: [
|
||||||
|
PERMISSIONS.ROLE.LIST,
|
||||||
|
PERMISSIONS.ROLE.ADD,
|
||||||
|
PERMISSIONS.ROLE.UPDATE,
|
||||||
|
PERMISSIONS.ROLE.DELETE,
|
||||||
|
],
|
||||||
|
|
||||||
|
// 菜单管理相关权限
|
||||||
|
MENU_MANAGEMENT: [
|
||||||
|
PERMISSIONS.MENU.LIST,
|
||||||
|
PERMISSIONS.MENU.ADD,
|
||||||
|
PERMISSIONS.MENU.UPDATE,
|
||||||
|
PERMISSIONS.MENU.DELETE,
|
||||||
|
],
|
||||||
|
|
||||||
|
// 系统管理员权限(包含所有权限)
|
||||||
|
SYSTEM_ADMIN: [
|
||||||
|
...Object.values(PERMISSIONS.USER),
|
||||||
|
...Object.values(PERMISSIONS.ROLE),
|
||||||
|
...Object.values(PERMISSIONS.MENU),
|
||||||
|
...Object.values(PERMISSIONS.LOGIN_LOG),
|
||||||
|
],
|
||||||
|
} as const
|
||||||
2
src/typings/api/login.d.ts
vendored
2
src/typings/api/login.d.ts
vendored
@ -8,6 +8,8 @@ namespace Api {
|
|||||||
id: number
|
id: number
|
||||||
/** 用户角色类型 */
|
/** 用户角色类型 */
|
||||||
role: Entity.RoleType[]
|
role: Entity.RoleType[]
|
||||||
|
/** 用户权限按钮列表 */
|
||||||
|
buttons: string[]
|
||||||
/** 访问token */
|
/** 访问token */
|
||||||
accessToken: string
|
accessToken: string
|
||||||
/** 访问token */
|
/** 访问token */
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user