更新平台治理
This commit is contained in:
@@ -79,6 +79,7 @@ const menuGroups: MenuGroup[] = [
|
||||
items: [
|
||||
{ key: 'tenants', label: '租户管理', icon: 'fa-building', to: '/tenants', permission: 'user-settings' },
|
||||
{ key: 'projects', label: '项目空间', icon: 'fa-folder', to: '/projects', permission: 'user-settings' },
|
||||
{ key: 'resource-acl', label: '资源授权', icon: 'fa-key', to: '/resource-acl', permission: 'user-settings' },
|
||||
{ key: 'audit-logs', label: '审计日志', icon: 'fa-history', to: '/audit-logs', permission: 'user-settings' },
|
||||
{ key: 'approval-templates', label: '审批模板', icon: 'fa-list-alt', to: '/approval-templates', permission: 'user-settings' },
|
||||
{ key: 'approval-instances', label: '审批中心', icon: 'fa-check-square', to: '/approval-instances', permission: 'user-settings' },
|
||||
@@ -94,17 +95,30 @@ const menuGroups: MenuGroup[] = [
|
||||
},
|
||||
]
|
||||
|
||||
/**
|
||||
* 菜单可见性过滤规则(基于 governance-user-guide.md 设计):
|
||||
*
|
||||
* 1. admin 用户:可以看到所有菜单
|
||||
* 2. 非 admin 用户:
|
||||
* - 默认可见所有业务菜单(模型训练、评测、推理、数据集、数据处理、转换、性能、日志等)
|
||||
* - 仅以下菜单对非 admin 不可见:
|
||||
* - user-settings(用户设置、租户管理、项目空间、审批模板/中心、审计日志)
|
||||
* - compute(算力节点/GPU 分配)
|
||||
*
|
||||
* 注意:移除了旧的权限码(permission code)过滤逻辑,
|
||||
* 非管理员用户默认拥有所有业务功能的访问权限。
|
||||
*/
|
||||
const ADMIN_ONLY_PERMISSIONS: PermissionCode[] = ['user-settings', 'compute']
|
||||
|
||||
const visibleMenuGroups = computed(() =>
|
||||
menuGroups
|
||||
.map((group) => ({
|
||||
...group,
|
||||
items: group.items.filter((item) => {
|
||||
if (!auth.hasPermission(item.permission)) return false
|
||||
// user-settings 权限对应的菜单仅管理员可见
|
||||
if (item.permission === 'user-settings' && !auth.isAdmin) return false
|
||||
// 算力节点仅管理员可见
|
||||
if (item.permission === 'compute' && !auth.isAdmin) return false
|
||||
return true
|
||||
// admin 可以看到所有菜单
|
||||
if (auth.isAdmin) return true
|
||||
// 非 admin 用户:仅隐藏管理员专属菜单
|
||||
return !ADMIN_ONLY_PERMISSIONS.includes(item.permission)
|
||||
}),
|
||||
}))
|
||||
.filter((group) => group.items.length > 0),
|
||||
|
||||
Reference in New Issue
Block a user