做权限管理模块

This commit is contained in:
2025-11-03 18:00:12 +08:00
parent 88d2f527f4
commit ca1d265e34
7 changed files with 1674 additions and 91 deletions
+73
View File
@@ -0,0 +1,73 @@
import request from '@/utils/request';
/**
* 获取所有菜单权限列表(用于分配权限)
*/
export function getAllMenuPermissions() {
return request({
url: '/api/permissions/menus',
method: 'get',
});
}
/**
* 获取指定角色的权限
* @param {number} roleId - 角色ID
*/
export function getRolePermissions(roleId) {
return request({
url: `/api/permissions/role/${roleId}`,
method: 'get',
});
}
/**
* 为角色分配权限
* @param {number} roleId - 角色ID
* @param {Array<number>} menuIds - 菜单ID列表
*/
export function assignRolePermissions(roleId, menuIds) {
return request({
url: `/api/permissions/role/${roleId}`,
method: 'post',
timeout: 60000, // 设置60秒超时,因为批量保存可能需要较长时间
data: {
menu_ids: menuIds,
},
});
}
/**
* 获取当前登录用户的权限
*/
export function getUserPermissions() {
return request({
url: '/api/permissions/user',
method: 'get',
});
}
/**
* 获取当前用户有权限访问的菜单树
*/
export function getUserMenuTree() {
return request({
url: '/api/permissions/user/menus',
method: 'get',
});
}
/**
* 检查用户是否拥有指定权限
* @param {string} permission - 权限标识
*/
export function checkPermission(permission) {
return request({
url: '/api/permissions/check',
method: 'get',
params: {
permission,
},
});
}