mirror of
https://github.com/1Panel-dev/MaxKB.git
synced 2025-12-26 09:43:10 +00:00
feat: add new permission constants for knowledge documents, paragraphs, and problems
This commit is contained in:
parent
5ca3151e90
commit
680475cb97
|
|
@ -22,6 +22,12 @@ class Group(Enum):
|
|||
|
||||
KNOWLEDGE = "KNOWLEDGE"
|
||||
|
||||
KNOWLEDGE_DOCUMENT = "KNOWLEDGE_DOCUMENT"
|
||||
|
||||
KNOWLEDGE_PARAGRAPH = "KNOWLEDGE_PARAGRAPH"
|
||||
|
||||
KNOWLEDGE_PROBLEM = "KNOWLEDGE_PROBLEM"
|
||||
|
||||
MODEL = "MODEL"
|
||||
|
||||
TOOL = "TOOL"
|
||||
|
|
@ -153,91 +159,143 @@ class PermissionConstants(Enum):
|
|||
"""
|
||||
权限枚举
|
||||
"""
|
||||
USER_READ = Permission(group=Group.USER, operate=Operate.READ, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
USER_CREATE = Permission(group=Group.USER, operate=Operate.CREATE,
|
||||
role_list=[RoleConstants.ADMIN])
|
||||
USER_EDIT = Permission(group=Group.USER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN])
|
||||
USER_DELETE = Permission(group=Group.USER, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN])
|
||||
|
||||
MODEL_CREATE = Permission(group=Group.MODEL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
MODEL_READ = Permission(group=Group.MODEL, operate=Operate.READ, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
MODEL_EDIT = Permission(group=Group.MODEL, operate=Operate.EDIT,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.USER])
|
||||
MODEL_DELETE = Permission(group=Group.MODEL, operate=Operate.DELETE,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.USER])
|
||||
TOOL_FOLDER_CREATE = Permission(group=Group.TOOL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_FOLDER_READ = Permission(group=Group.TOOL, operate=Operate.READ, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_FOLDER_EDIT = Permission(group=Group.TOOL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_FOLDER_DELETE = Permission(group=Group.TOOL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
|
||||
TOOL_CREATE = Permission(group=Group.TOOL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_EDIT = Permission(group=Group.TOOL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_READ = Permission(group=Group.TOOL, operate=Operate.READ, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_DELETE = Permission(group=Group.TOOL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_DEBUG = Permission(group=Group.TOOL, operate=Operate.USE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_IMPORT = Permission(group=Group.TOOL, operate=Operate.USE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
TOOL_EXPORT = Permission(group=Group.TOOL, operate=Operate.USE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
|
||||
KNOWLEDGE_FOLDER_CREATE = Permission(group=Group.KNOWLEDGE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
KNOWLEDGE_FOLDER_READ = Permission(group=Group.KNOWLEDGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER],
|
||||
resource_permission_group_list=[
|
||||
ResourcePermissionGroup.VIEW
|
||||
])
|
||||
KNOWLEDGE_FOLDER_EDIT = Permission(group=Group.KNOWLEDGE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER],
|
||||
resource_permission_group_list=[
|
||||
ResourcePermissionGroup.MANAGE
|
||||
]
|
||||
)
|
||||
KNOWLEDGE_FOLDER_DELETE = Permission(group=Group.KNOWLEDGE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER],
|
||||
resource_permission_group_list=[
|
||||
ResourcePermissionGroup.MANAGE
|
||||
]
|
||||
)
|
||||
KNOWLEDGE_READ = Permission(group=Group.KNOWLEDGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER],
|
||||
resource_permission_group_list=[ResourcePermissionGroup.VIEW])
|
||||
KNOWLEDGE_CREATE = Permission(group=Group.KNOWLEDGE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
KNOWLEDGE_EDIT = Permission(group=Group.KNOWLEDGE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
KNOWLEDGE_DELETE = Permission(group=Group.KNOWLEDGE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
DOCUMENT_READ = Permission(group=Group.KNOWLEDGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
DOCUMENT_CREATE = Permission(group=Group.KNOWLEDGE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
DOCUMENT_EDIT = Permission(group=Group.KNOWLEDGE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
DOCUMENT_DELETE = Permission(group=Group.KNOWLEDGE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.USER])
|
||||
|
||||
WORKSPACE_USER_RESOURCE_PERMISSION_READ = Permission(group=Group.WORKSPACE_USER_RESOURCE_PERMISSION,
|
||||
operate=Operate.READ,
|
||||
role_list=[RoleConstants.ADMIN,
|
||||
RoleConstants.WORKSPACE_MANAGE])
|
||||
|
||||
EMAIL_SETTING_READ = Permission(group=Group.USER, operate=Operate.READ,
|
||||
role_list=[RoleConstants.ADMIN])
|
||||
EMAIL_SETTING_EDIT = Permission(group=Group.USER, operate=Operate.EDIT,
|
||||
role_list=[RoleConstants.ADMIN])
|
||||
USER_READ = Permission(
|
||||
group=Group.USER, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
USER_CREATE = Permission(
|
||||
group=Group.USER, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN]
|
||||
)
|
||||
USER_EDIT = Permission(
|
||||
group=Group.USER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN]
|
||||
)
|
||||
USER_DELETE = Permission(
|
||||
group=Group.USER, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN]
|
||||
)
|
||||
MODEL_CREATE = Permission(
|
||||
group=Group.MODEL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
MODEL_READ = Permission(
|
||||
group=Group.MODEL, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
MODEL_EDIT = Permission(
|
||||
group=Group.MODEL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
MODEL_DELETE = Permission(
|
||||
group=Group.MODEL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_FOLDER_CREATE = Permission(
|
||||
group=Group.TOOL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_FOLDER_READ = Permission(
|
||||
group=Group.TOOL, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_FOLDER_EDIT = Permission(
|
||||
group=Group.TOOL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_FOLDER_DELETE = Permission(
|
||||
group=Group.TOOL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_CREATE = Permission(
|
||||
group=Group.TOOL, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_EDIT = Permission(
|
||||
group=Group.TOOL, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_READ = Permission(
|
||||
group=Group.TOOL, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_DELETE = Permission(
|
||||
group=Group.TOOL, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_DEBUG = Permission(
|
||||
group=Group.TOOL, operate=Operate.USE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_IMPORT = Permission(
|
||||
group=Group.TOOL, operate=Operate.USE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
TOOL_EXPORT = Permission(
|
||||
group=Group.TOOL, operate=Operate.USE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_FOLDER_CREATE = Permission(
|
||||
group=Group.KNOWLEDGE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_FOLDER_READ = Permission(
|
||||
group=Group.KNOWLEDGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER],
|
||||
resource_permission_group_list=[ResourcePermissionGroup.VIEW]
|
||||
)
|
||||
KNOWLEDGE_FOLDER_EDIT = Permission(
|
||||
group=Group.KNOWLEDGE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER],
|
||||
resource_permission_group_list=[ResourcePermissionGroup.MANAGE]
|
||||
)
|
||||
KNOWLEDGE_FOLDER_DELETE = Permission(
|
||||
group=Group.KNOWLEDGE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER],
|
||||
resource_permission_group_list=[ResourcePermissionGroup.MANAGE]
|
||||
)
|
||||
KNOWLEDGE_READ = Permission(
|
||||
group=Group.KNOWLEDGE, operate=Operate.READ, role_list=[RoleConstants.ADMIN, RoleConstants.USER],
|
||||
resource_permission_group_list=[ResourcePermissionGroup.VIEW]
|
||||
)
|
||||
KNOWLEDGE_CREATE = Permission(
|
||||
group=Group.KNOWLEDGE, operate=Operate.CREATE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_EDIT = Permission(
|
||||
group=Group.KNOWLEDGE, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_DELETE = Permission(
|
||||
group=Group.KNOWLEDGE, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_DOCUMENT_READ = Permission(
|
||||
group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.READ,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_DOCUMENT_CREATE = Permission(
|
||||
group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.CREATE,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_DOCUMENT_EDIT = Permission(
|
||||
group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_DOCUMENT_DELETE = Permission(
|
||||
group=Group.KNOWLEDGE_DOCUMENT, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_PARAGRAPH_READ = Permission(
|
||||
group=Group.KNOWLEDGE_PARAGRAPH, operate=Operate.READ,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_PARAGRAPH_CREATE = Permission(
|
||||
group=Group.KNOWLEDGE_PARAGRAPH, operate=Operate.CREATE,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_PARAGRAPH_EDIT = Permission(
|
||||
group=Group.KNOWLEDGE_PARAGRAPH, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_PARAGRAPH_DELETE = Permission(
|
||||
group=Group.KNOWLEDGE_PARAGRAPH, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_PROBLEM_READ = Permission(
|
||||
group=Group.KNOWLEDGE_PROBLEM, operate=Operate.READ,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_PROBLEM_CREATE = Permission(
|
||||
group=Group.KNOWLEDGE_PROBLEM, operate=Operate.CREATE,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_PROBLEM_EDIT = Permission(
|
||||
group=Group.KNOWLEDGE_PROBLEM, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
KNOWLEDGE_PROBLEM_DELETE = Permission(
|
||||
group=Group.KNOWLEDGE_PROBLEM, operate=Operate.DELETE, role_list=[RoleConstants.ADMIN, RoleConstants.USER]
|
||||
)
|
||||
WORKSPACE_USER_RESOURCE_PERMISSION_READ = Permission(
|
||||
group=Group.WORKSPACE_USER_RESOURCE_PERMISSION, operate=Operate.READ,
|
||||
role_list=[RoleConstants.ADMIN, RoleConstants.WORKSPACE_MANAGE]
|
||||
)
|
||||
EMAIL_SETTING_READ = Permission(
|
||||
group=Group.USER, operate=Operate.READ, role_list=[RoleConstants.ADMIN]
|
||||
)
|
||||
EMAIL_SETTING_EDIT = Permission(
|
||||
group=Group.USER, operate=Operate.EDIT, role_list=[RoleConstants.ADMIN]
|
||||
)
|
||||
|
||||
def get_workspace_application_permission(self):
|
||||
return lambda r, kwargs: Permission(group=self.value.group, operate=self.value.operate,
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ class DocumentView(APIView):
|
|||
responses=DocumentCreateAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_CREATE.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission())
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(
|
||||
DocumentSerializers.Create(
|
||||
|
|
@ -44,7 +44,7 @@ class DocumentView(APIView):
|
|||
responses=DocumentTreeReadAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_READ.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_READ.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Query(
|
||||
data={
|
||||
|
|
@ -68,7 +68,7 @@ class DocumentView(APIView):
|
|||
responses=DocumentReadAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_READ.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_READ.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
operate = DocumentSerializers.Operate(data={
|
||||
'document_id': document_id, 'knowledge_id': knowledge_id, 'workspace_id': workspace_id
|
||||
|
|
@ -85,7 +85,7 @@ class DocumentView(APIView):
|
|||
responses=DocumentEditAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(DocumentSerializers.Operate(data={
|
||||
'document_id': document_id, 'knowledge_id': knowledge_id, 'workspace_id': workspace_id
|
||||
|
|
@ -99,7 +99,7 @@ class DocumentView(APIView):
|
|||
responses=DocumentDeleteAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_DELETE.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_DELETE.get_workspace_permission())
|
||||
def delete(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
operate = DocumentSerializers.Operate(data={
|
||||
'document_id': document_id, 'knowledge_id': knowledge_id, 'workspace_id': workspace_id
|
||||
|
|
@ -122,8 +122,8 @@ class DocumentView(APIView):
|
|||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions([
|
||||
PermissionConstants.DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.DOCUMENT_EDIT.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission(),
|
||||
])
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
split_data = {'file': request.FILES.getlist('file')}
|
||||
|
|
@ -169,7 +169,7 @@ class DocumentView(APIView):
|
|||
responses=BatchEditHitHandlingAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(
|
||||
data={'knowledge_id': knowledge_id, 'workspace_id': workspace_id}
|
||||
|
|
@ -188,7 +188,7 @@ class DocumentView(APIView):
|
|||
responses=SyncWebAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(DocumentSerializers.Sync(
|
||||
data={'document_id': document_id, 'knowledge_id': knowledge_id, 'workspace_id': workspace_id}
|
||||
|
|
@ -207,7 +207,7 @@ class DocumentView(APIView):
|
|||
responses=RefreshAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(DocumentSerializers.Operate(
|
||||
data={'document_id': document_id, 'knowledge_id': knowledge_id, 'workspace_id': workspace_id}
|
||||
|
|
@ -225,7 +225,7 @@ class DocumentView(APIView):
|
|||
responses=CancelTaskAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(DocumentSerializers.Operate(
|
||||
data={'document_id': document_id, 'knowledge_id': knowledge_id, 'workspace_id': workspace_id}
|
||||
|
|
@ -243,6 +243,7 @@ class DocumentView(APIView):
|
|||
responses=BatchCancelTaskAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(data={
|
||||
'knowledge_id': knowledge_id, 'workspace_id': workspace_id}
|
||||
|
|
@ -262,8 +263,8 @@ class DocumentView(APIView):
|
|||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions([
|
||||
PermissionConstants.DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.DOCUMENT_EDIT.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission(),
|
||||
])
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(
|
||||
|
|
@ -284,8 +285,8 @@ class DocumentView(APIView):
|
|||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions([
|
||||
PermissionConstants.DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.DOCUMENT_EDIT.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission(),
|
||||
])
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(
|
||||
|
|
@ -306,8 +307,8 @@ class DocumentView(APIView):
|
|||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions([
|
||||
PermissionConstants.DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.DOCUMENT_EDIT.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission(),
|
||||
])
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(
|
||||
|
|
@ -327,8 +328,8 @@ class DocumentView(APIView):
|
|||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions([
|
||||
PermissionConstants.DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.DOCUMENT_EDIT.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission(),
|
||||
])
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(
|
||||
|
|
@ -350,8 +351,8 @@ class DocumentView(APIView):
|
|||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions([
|
||||
PermissionConstants.DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.DOCUMENT_EDIT.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_permission(),
|
||||
])
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.BatchGenerateRelated(
|
||||
|
|
@ -370,7 +371,7 @@ class DocumentView(APIView):
|
|||
responses=DocumentTreeReadAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_READ.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_READ.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, current_page: int, page_size: int):
|
||||
return result.success(DocumentSerializers.Query(
|
||||
data={
|
||||
|
|
@ -397,7 +398,7 @@ class WebDocumentView(APIView):
|
|||
responses=WebDocumentCreateAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_CREATE.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission())
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Create(data={
|
||||
'knowledge_id': knowledge_id, 'workspace_id': workspace_id
|
||||
|
|
@ -417,7 +418,7 @@ class QaDocumentView(APIView):
|
|||
responses=QaDocumentCreateAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_CREATE.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission())
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Create(data={
|
||||
'knowledge_id': knowledge_id, 'workspace_id': workspace_id
|
||||
|
|
@ -437,7 +438,7 @@ class TableDocumentView(APIView):
|
|||
responses=TableDocumentCreateAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_CREATE.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_permission())
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Create(
|
||||
data={'knowledge_id': knowledge_id, 'workspace_id': workspace_id}
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ class ParagraphView(APIView):
|
|||
responses=ParagraphReadAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_READ.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_READ.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
q = ParagraphSerializers.Query(
|
||||
data={
|
||||
|
|
@ -46,7 +46,7 @@ class ParagraphView(APIView):
|
|||
responses=ParagraphCreateAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_CREATE.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_CREATE.get_workspace_permission())
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(ParagraphSerializers.Create(
|
||||
data={'workspace_id': workspace_id, 'knowledge_id': knowledge_id, 'document_id': document_id}
|
||||
|
|
@ -65,7 +65,7 @@ class ParagraphView(APIView):
|
|||
responses=ParagraphBatchDeleteAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(ParagraphSerializers.Batch(
|
||||
data={'workspace_id': workspace_id, 'knowledge_id': knowledge_id, 'document_id': document_id}
|
||||
|
|
@ -84,7 +84,7 @@ class ParagraphView(APIView):
|
|||
responses=ParagraphBatchGenerateRelatedAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(ParagraphSerializers.Batch(
|
||||
data={'workspace_id': workspace_id, 'knowledge_id': knowledge_id, 'document_id': document_id}
|
||||
|
|
@ -103,7 +103,7 @@ class ParagraphView(APIView):
|
|||
responses=ParagraphEditAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str, paragraph_id: str):
|
||||
o = ParagraphSerializers.Operate(
|
||||
data={
|
||||
|
|
@ -125,7 +125,7 @@ class ParagraphView(APIView):
|
|||
responses=ParagraphGetAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str, paragraph_id: str):
|
||||
o = ParagraphSerializers.Operate(
|
||||
data={
|
||||
|
|
@ -146,7 +146,7 @@ class ParagraphView(APIView):
|
|||
parameters=ParagraphGetAPI.get_parameters(),
|
||||
responses=ParagraphGetAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')]) # type: ignore
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def delete(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str, paragraph_id: str):
|
||||
o = ParagraphSerializers.Operate(
|
||||
data={
|
||||
|
|
@ -172,7 +172,7 @@ class ParagraphView(APIView):
|
|||
responses=ProblemCreateAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str, paragraph_id: str):
|
||||
return result.success(ParagraphSerializers.Problem(
|
||||
data={
|
||||
|
|
@ -192,7 +192,7 @@ class ParagraphView(APIView):
|
|||
responses=ParagraphGetAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str, paragraph_id: str):
|
||||
return result.success(ParagraphSerializers.Problem(
|
||||
data={
|
||||
|
|
@ -215,7 +215,7 @@ class ParagraphView(APIView):
|
|||
responses=UnAssociationAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(ParagraphSerializers.Association(
|
||||
data={
|
||||
|
|
@ -239,7 +239,7 @@ class ParagraphView(APIView):
|
|||
responses=AssociationAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(ParagraphSerializers.Association(
|
||||
data={
|
||||
|
|
@ -263,7 +263,7 @@ class ParagraphView(APIView):
|
|||
responses=ParagraphPageAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PARAGRAPH_EDIT.get_workspace_permission())
|
||||
def get(self, request: Request,
|
||||
workspace_id: str, knowledge_id: str, document_id: str, current_page: int, page_size: int):
|
||||
d = ParagraphSerializers.Query(
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ class ProblemView(APIView):
|
|||
responses=ProblemReadAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph/Question')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PROBLEM_READ.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
q = ProblemSerializers.Query(
|
||||
data={
|
||||
|
|
@ -47,7 +47,7 @@ class ProblemView(APIView):
|
|||
request=ProblemBatchCreateAPI.get_request(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph/Question')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_permission())
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(ProblemSerializers.Create(
|
||||
data={'workspace_id': workspace_id, 'knowledge_id': knowledge_id}
|
||||
|
|
@ -64,7 +64,7 @@ class ProblemView(APIView):
|
|||
responses=ProblemParagraphAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph/Question')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, problem_id: str):
|
||||
return result.success(ProblemSerializers.Operate(
|
||||
data={
|
||||
|
|
@ -87,7 +87,7 @@ class ProblemView(APIView):
|
|||
responses=BatchAssociationAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph/Question')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(ProblemSerializers.BatchOperate(
|
||||
data={'knowledge_id': knowledge_id, 'workspace_id': workspace_id}
|
||||
|
|
@ -106,7 +106,7 @@ class ProblemView(APIView):
|
|||
responses=BatchDeleteAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph/Question')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(ProblemSerializers.BatchOperate(
|
||||
data={'knowledge_id': knowledge_id, 'workspace_id': workspace_id}
|
||||
|
|
@ -124,6 +124,7 @@ class ProblemView(APIView):
|
|||
responses=ProblemDeleteAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph/Question')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PROBLEM_DELETE.get_workspace_permission())
|
||||
def delete(self, request: Request, workspace_id: str, knowledge_id: str, problem_id: str):
|
||||
return result.success(ProblemSerializers.Operate(
|
||||
data={
|
||||
|
|
@ -144,6 +145,7 @@ class ProblemView(APIView):
|
|||
responses=ProblemEditAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph/Question')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_permission())
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, problem_id: str):
|
||||
return result.success(ProblemSerializers.Operate(
|
||||
data={
|
||||
|
|
@ -165,7 +167,7 @@ class ProblemView(APIView):
|
|||
responses=ProblemPageAPI.get_response(),
|
||||
tags=[_('Knowledge Base/Documentation/Paragraph/Question')] # type: ignore
|
||||
)
|
||||
@has_permissions(PermissionConstants.DOCUMENT_EDIT.get_workspace_permission())
|
||||
@has_permissions(PermissionConstants.KNOWLEDGE_PROBLEM_READ.get_workspace_permission())
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, current_page, page_size):
|
||||
d = ProblemSerializers.Query(
|
||||
data={
|
||||
|
|
|
|||
Loading…
Reference in New Issue