后台新增RBAC权限模型支持按角色配置接单管理权限

- 新增 admin_roles/admin_permissions/admin_role_permissions 三表与种子数据(059迁移)
- 接单平台全部管理路由从固定角色切换为细粒度权限校验
- 撤单按动作二次校验:退回大厅与取消订单分别要求对应权限
- 管理员账号页新增角色权限配置卡片(admin专属,带审计日志)
- 权限更新走事务保证原子性;session实时解析权限确保修改立即生效
This commit is contained in:
yml2213
2026-08-23 16:04:10 +08:00
parent fb0e9c8f9c
commit 3df271b30c
16 changed files with 610 additions and 70 deletions
+26 -1
View File
@@ -1,6 +1,31 @@
import { apiGet, apiPost } from '@/lib/http'
import { apiGet, apiPost, apiPut } from '@/lib/http'
import type { AdminPagination, AdminUserListItem } from '@/types/admin'
export type AdminRolePermission = {
permissionKey: string
permissionName: string
permissionGroup: string
description: string
enabled: boolean
}
export type AdminRolePermissions = {
roleKey: string
roleName: string
description: string
permissions: AdminRolePermission[]
}
export function fetchAdminRolePermissions() {
return apiGet<{ roles: AdminRolePermissions[] }>('/api/v1/admin/rbac')
}
export function updateAdminRolePermissions(roleKey: string, permissions: string[]) {
return apiPut<AdminRolePermissions>(`/api/v1/admin/rbac/roles/${roleKey}/permissions`, {
permissions,
})
}
export function fetchAdminUsers(params?: Record<string, unknown>) {
return apiGet<{ items: AdminUserListItem[]; pagination: AdminPagination }>(
'/api/v1/admin/users',