diff --git a/apps/tools/views/tool.py b/apps/tools/views/tool.py index 2ee1979c7c6..ca6b0b72f99 100644 --- a/apps/tools/views/tool.py +++ b/apps/tools/views/tool.py @@ -39,7 +39,8 @@ class ToolView(APIView): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_CREATE.get_workspace_permission(), + PermissionConstants.TOOL_CREATE.get_workspace_tool_permission(), + PermissionConstants.TOOL_CREATE.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role() ) @log( @@ -61,7 +62,8 @@ def post(self, request: Request, workspace_id: str): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_READ.get_workspace_permission(), + PermissionConstants.TOOL_READ.get_workspace_tool_permission(), + PermissionConstants.TOOL_READ.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role() ) def get(self, request: Request, workspace_id: str): @@ -82,7 +84,8 @@ class Debug(APIView): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_DEBUG.get_workspace_permission(), + PermissionConstants.TOOL_DEBUG.get_workspace_tool_permission(), + PermissionConstants.TOOL_DEBUG.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role() ) def post(self, request: Request, workspace_id: str): @@ -104,7 +107,7 @@ class Operate(APIView): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_EDIT.get_workspace_permission(), + PermissionConstants.TOOL_EDIT.get_workspace_tool_permission(), PermissionConstants.TOOL_EDIT.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), ViewPermission([RoleConstants.USER.get_workspace_role()], @@ -131,7 +134,8 @@ def put(self, request: Request, workspace_id: str, tool_id: str): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_READ.get_workspace_permission(), + PermissionConstants.TOOL_READ.get_workspace_tool_permission(), + PermissionConstants.TOOL_READ.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), ViewPermission([RoleConstants.USER.get_workspace_role()], [PermissionConstants.TOOL.get_workspace_tool_permission()], CompareConstants.AND), @@ -152,7 +156,8 @@ def get(self, request: Request, workspace_id: str, tool_id: str): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_DELETE.get_workspace_permission(), + PermissionConstants.TOOL_DELETE.get_workspace_tool_permission(), + PermissionConstants.TOOL_DELETE.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), ViewPermission([RoleConstants.USER.get_workspace_role()], [PermissionConstants.TOOL.get_workspace_tool_permission()], CompareConstants.AND), @@ -180,7 +185,8 @@ class Page(APIView): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_READ.get_workspace_permission(), + PermissionConstants.TOOL_READ.get_workspace_tool_permission(), + PermissionConstants.TOOL_READ.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role() ) @log(menu='Tool', operate='Get tool list') @@ -211,7 +217,8 @@ class Import(APIView): tags=[_("Tool")] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_IMPORT.get_workspace_permission(), + PermissionConstants.TOOL_IMPORT.get_workspace_tool_permission(), + PermissionConstants.TOOL_IMPORT.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role() ) @log(menu='Tool', operate='Import tool', ) @@ -233,7 +240,8 @@ class Export(APIView): tags=[_("Tool")] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_EXPORT.get_workspace_permission(), + PermissionConstants.TOOL_EXPORT.get_workspace_tool_permission(), + PermissionConstants.TOOL_EXPORT.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), ViewPermission([RoleConstants.USER.get_workspace_role()], [PermissionConstants.TOOL.get_workspace_tool_permission()], CompareConstants.AND), @@ -261,8 +269,8 @@ class Pylint(APIView): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_CREATE.get_workspace_permission(), - PermissionConstants.TOOL_EDIT.get_workspace_permission(), + PermissionConstants.TOOL_CREATE.get_workspace_tool_permission(), + PermissionConstants.TOOL_EDIT.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role() ) @@ -286,7 +294,8 @@ class EditIcon(APIView): tags=[_('Tool')] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_EDIT.get_workspace_permission(), + PermissionConstants.TOOL_EDIT.get_workspace_tool_permission(), + PermissionConstants.TOOL_EDIT.get_workspace_permission_workspace_manage_role(), RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), ViewPermission([RoleConstants.USER.get_workspace_role()], [PermissionConstants.TOOL.get_workspace_tool_permission()], CompareConstants.AND), @@ -331,10 +340,10 @@ class AddInternalTool(APIView): tags=[_("Tool")] # type: ignore ) @has_permissions( - PermissionConstants.TOOL_CREATE.get_workspace_permission(), - RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), ViewPermission([RoleConstants.USER.get_workspace_role()], - [PermissionConstants.TOOL.get_workspace_tool_permission()], - CompareConstants.AND), + PermissionConstants.TOOL_CREATE.get_workspace_tool_permission(), + PermissionConstants.TOOL_CREATE.get_workspace_permission_workspace_manage_role(), + RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), + RoleConstants.USER.get_workspace_role(), ) @log( menu='Tool', operate="Add internal tool", diff --git a/ui/src/router/modules/document.ts b/ui/src/router/modules/document.ts index 52bd3b4cac1..b61d8517a43 100644 --- a/ui/src/router/modules/document.ts +++ b/ui/src/router/modules/document.ts @@ -31,7 +31,7 @@ const DocumentRouter = { if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { - return RoleConst.WORKSPACE_MANAGE.getWorkspaceRole + return RoleConst.WORKSPACE_MANAGE.getWorkspaceRole() } }, () => { @@ -49,7 +49,7 @@ const DocumentRouter = { () => { const to: any = get_next_route() if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { - return PermissionConst.KNOWLEDGE_DOCUMENT_READ.getWorkspacePermissionWorkspaceManageRole + return PermissionConst.KNOWLEDGE_DOCUMENT_READ.getWorkspacePermissionWorkspaceManageRole() } } ], @@ -75,7 +75,7 @@ const DocumentRouter = { }, () => { const to: any = get_next_route() - if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return RoleConst.WORKSPACE_MANAGE.getWorkspaceRole } + if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return RoleConst.WORKSPACE_MANAGE.getWorkspaceRole() } }, () => { const to: any = get_next_route() @@ -87,7 +87,7 @@ const DocumentRouter = { }, () => { const to: any = get_next_route() - if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return PermissionConst.KNOWLEDGE_PROBLEM_READ.getWorkspacePermissionWorkspaceManageRole } + if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return PermissionConst.KNOWLEDGE_PROBLEM_READ.getWorkspacePermissionWorkspaceManageRole() } }, ], }, @@ -111,7 +111,7 @@ const DocumentRouter = { }, () => { const to: any = get_next_route() - if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return RoleConst.WORKSPACE_MANAGE.getWorkspaceRole } + if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return RoleConst.WORKSPACE_MANAGE.getWorkspaceRole() } }, () => { const to: any = get_next_route() @@ -123,7 +123,7 @@ const DocumentRouter = { }, () => { const to: any = get_next_route() - if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return PermissionConst.KNOWLEDGE_HIT_TEST_READ.getWorkspacePermissionWorkspaceManageRole } + if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return PermissionConst.KNOWLEDGE_HIT_TEST_READ.getWorkspacePermissionWorkspaceManageRole() } }, ], }, @@ -195,7 +195,7 @@ const DocumentRouter = { }, () => { const to: any = get_next_route() - if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return RoleConst.WORKSPACE_MANAGE.getWorkspaceRole } + if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return RoleConst.WORKSPACE_MANAGE.getWorkspaceRole() } }, () => { const to: any = get_next_route() @@ -207,7 +207,7 @@ const DocumentRouter = { }, () => { const to: any = get_next_route() - if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return PermissionConst.KNOWLEDGE_EDIT.getWorkspacePermissionWorkspaceManageRole } + if (to.params.folderId == 'shared') { return RoleConst.ADMIN } else { return PermissionConst.KNOWLEDGE_EDIT.getWorkspacePermissionWorkspaceManageRole() } }, ], },