diff --git a/ui/src/permission/model/system-share.ts b/ui/src/permission/model/system-share.ts index c67a9e13b..fb866c6a5 100644 --- a/ui/src/permission/model/system-share.ts +++ b/ui/src/permission/model/system-share.ts @@ -3,10 +3,37 @@ import { ComplexPermission } from '@/utils/permission/type' import { EditionConst, PermissionConst, RoleConst } from '@/utils/permission/data' const share = { is_share: () => false, - addModel: () => false, - modify: () => false, - paramSetting: () => false, - delete: () => false, - + addModel: () => + hasPermission( + [ + RoleConst.ADMIN, + PermissionConst.SHARED_MODEL_CREATE, + ], + 'OR', + ), + modify: () => + hasPermission( + [ + RoleConst.ADMIN, + PermissionConst.SHARED_MODEL_EDIT, + ], + 'OR', + ), + paramSetting: () => + hasPermission( + [ + RoleConst.ADMIN, + PermissionConst.SHARED_MODEL_EDIT, + ], + 'OR', + ), + delete: () => + hasPermission( + [ + RoleConst.ADMIN, + PermissionConst.SHARED_MODEL_DELETE, + ], + 'OR', + ), } export default share diff --git a/ui/src/router/modules/system.ts b/ui/src/router/modules/system.ts index ec415a9ea..b9cc24ec4 100644 --- a/ui/src/router/modules/system.ts +++ b/ui/src/router/modules/system.ts @@ -164,6 +164,14 @@ const systemRouter = { activeMenu: '/system', parentPath: '/system', parentName: 'system', + permission: [ + new ComplexPermission( + [RoleConst.ADMIN], + [PermissionConst.SHARED_MODEL_READ], + [EditionConst.IS_EE], + 'OR' + ) + ] }, component: () => import('@/views/system-shared/ModelSharedIndex.vue'), }, diff --git a/ui/src/utils/permission/data.ts b/ui/src/utils/permission/data.ts index a6860091a..41450b476 100644 --- a/ui/src/utils/permission/data.ts +++ b/ui/src/utils/permission/data.ts @@ -146,6 +146,11 @@ const PermissionConst = { SHARED_TOOL_EXPORT:new Permission('SYSTEM_TOOL:READ+EXPORT'), SHARED_TOOL_DEBUG:new Permission('SYSTEM_TOOL:READ+DEBUG'), + SHARED_MODEL_READ:new Permission('SYSTEM_MODEL:READ'), + SHARED_MODEL_CREATE:new Permission('SYSTEM_MODEL:READ+CREATE'), + SHARED_MODEL_EDIT:new Permission('SYSTEM_MODEL:READ+EDIT'), + SHARED_MODEL_DELETE:new Permission('SYSTEM_MODEL:READ+DELETE'), + SHARED_KNOWLEDGE_READ:new Permission('SYSTEM_KNOWLEDGE:READ'), SHARED_KNOWLEDGE_CREATE:new Permission('SYSTEM_KNOWLEDGE:READ+CREATE'), SHARED_KNOWLEDGE_EDIT:new Permission('SYSTEM_KNOWLEDGE:READ+EDIT'),