2025-06-17 08:11:07 +00:00
|
|
|
import { PermissionConst, EditionConst, RoleConst } from '@/utils/permission/data'
|
|
|
|
|
import { hasPermission } from '@/utils/permission/index'
|
|
|
|
|
import roleSystemApi from '@/api/system/role'
|
|
|
|
|
import roleWorkspaceApi from '@/api/workspace/role'
|
2025-06-26 10:38:00 +00:00
|
|
|
import { ComplexPermission } from '../permission/type'
|
2025-06-17 08:11:07 +00:00
|
|
|
|
|
|
|
|
// 系统管理员 API
|
|
|
|
|
const systemApiMap = {
|
|
|
|
|
role: roleSystemApi,
|
|
|
|
|
} as any
|
|
|
|
|
|
|
|
|
|
// 企业版工作空间管理员 API
|
|
|
|
|
const workspaceApiMap = {
|
|
|
|
|
role: roleWorkspaceApi,
|
|
|
|
|
} as any
|
|
|
|
|
|
|
|
|
|
/** 动态导入 API 模块的函数
|
|
|
|
|
* loadPermissionApi('role')
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
export function loadPermissionApi(type: string) {
|
2025-06-18 03:26:21 +00:00
|
|
|
if (hasPermission(EditionConst.IS_EE, 'OR')) {
|
2025-06-26 10:38:00 +00:00
|
|
|
if (hasPermission(new ComplexPermission (
|
|
|
|
|
[RoleConst.ADMIN],
|
|
|
|
|
[PermissionConst.ROLE_READ],
|
|
|
|
|
[],
|
|
|
|
|
'OR'),'OR')) {
|
2025-06-18 03:26:21 +00:00
|
|
|
// 加载系统管理员 API
|
2025-06-26 10:38:00 +00:00
|
|
|
return systemApiMap[type]
|
|
|
|
|
} if (hasPermission(new ComplexPermission (
|
|
|
|
|
[RoleConst.WORKSPACE_MANAGE.getWorkspaceRole],
|
|
|
|
|
[PermissionConst.WORKSPACE_ROLE_READ.getWorkspacePermissionWorkspaceManageRole],
|
|
|
|
|
[],
|
|
|
|
|
'OR'),'OR' )) {
|
|
|
|
|
// 加载企业版工作空间管理员 API
|
2025-06-18 03:26:21 +00:00
|
|
|
return workspaceApiMap[type]
|
|
|
|
|
}
|
2025-06-17 08:11:07 +00:00
|
|
|
}
|
|
|
|
|
}
|