mirror of
https://github.com/1Panel-dev/MaxKB.git
synced 2025-12-26 01:33:05 +00:00
feat: add user role permissions to workspace operations
This commit is contained in:
parent
961e67e98d
commit
c8a5048c7c
|
|
@ -39,12 +39,12 @@ class FolderView(APIView):
|
|||
@has_permissions(
|
||||
lambda r, kwargs: Permission(group=Group(kwargs.get('source')), operate=Operate.CREATE,
|
||||
resource_path=f"/WORKSPACE/{kwargs.get('workspace_id')}"),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='folder', operate='Create folder',
|
||||
get_operation_object=lambda r, k: {'name': r.data.get('name')},
|
||||
|
||||
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str, source: str):
|
||||
return result.success(FolderSerializer.Create(
|
||||
|
|
@ -65,7 +65,7 @@ class FolderView(APIView):
|
|||
@has_permissions(
|
||||
lambda r, kwargs: Permission(group=Group(kwargs.get('source')), operate=Operate.READ,
|
||||
resource_path=f"/WORKSPACE/{kwargs.get('workspace_id')}"),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, source: str):
|
||||
return result.success(FolderTreeSerializer(
|
||||
|
|
@ -88,12 +88,11 @@ class FolderView(APIView):
|
|||
@has_permissions(
|
||||
lambda r, kwargs: Permission(group=Group(kwargs.get('source')), operate=Operate.EDIT,
|
||||
resource_path=f"/WORKSPACE/{kwargs.get('workspace_id')}"),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='folder', operate='Edit folder',
|
||||
get_operation_object=lambda r, k: get_folder_operation_object(k.get('folder_id'), k.get('source')),
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, source: str, folder_id: str):
|
||||
return result.success(FolderSerializer.Operate(
|
||||
|
|
@ -112,7 +111,7 @@ class FolderView(APIView):
|
|||
@has_permissions(
|
||||
lambda r, kwargs: Permission(group=Group(kwargs.get('source')), operate=Operate.READ,
|
||||
resource_path=f"/WORKSPACE/{kwargs.get('workspace_id')}"),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, source: str, folder_id: str):
|
||||
return result.success(FolderSerializer.Operate(
|
||||
|
|
@ -131,12 +130,11 @@ class FolderView(APIView):
|
|||
@has_permissions(
|
||||
lambda r, kwargs: Permission(group=Group(kwargs.get('source')), operate=Operate.DELETE,
|
||||
resource_path=f"/WORKSPACE/{kwargs.get('workspace_id')}"),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='folder', operate='Delete folder',
|
||||
get_operation_object=lambda r, k: get_folder_operation_object(k.get('folder_id'), k.get('source')),
|
||||
|
||||
)
|
||||
def delete(self, request: Request, workspace_id: str, source: str, folder_id: str):
|
||||
return result.success(FolderSerializer.Operate(
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(menu='document', operate="Create document",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
|
|
@ -58,7 +58,7 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_READ.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Query(
|
||||
|
|
@ -85,7 +85,7 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_READ.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
operate = DocumentSerializers.Operate(data={
|
||||
|
|
@ -105,14 +105,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Modify document",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object(keywords.get('document_id'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(DocumentSerializers.Operate(data={
|
||||
|
|
@ -129,14 +129,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_DELETE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Delete document",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object(keywords.get('document_id'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def delete(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
operate = DocumentSerializers.Operate(data={
|
||||
|
|
@ -162,7 +162,7 @@ class DocumentView(APIView):
|
|||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_knowledge_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
split_data = {'file': request.FILES.getlist('file')}
|
||||
|
|
@ -210,14 +210,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Modify document hit processing methods in batches",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object_batch(r.data.get('id_list'))),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(
|
||||
|
|
@ -239,14 +239,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_SYNC.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Synchronize web site types",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object(keywords.get('document_id'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(DocumentSerializers.Sync(
|
||||
|
|
@ -268,14 +268,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_VECTOR.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Refresh document vector library",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object(keywords.get('document_id'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(DocumentSerializers.Operate(
|
||||
|
|
@ -296,14 +296,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Cancel task",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object(keywords.get('document_id'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(DocumentSerializers.Operate(
|
||||
|
|
@ -324,14 +324,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Cancel tasks in batches",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object_batch(r.data.get('id_list'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(data={
|
||||
|
|
@ -354,7 +354,7 @@ class DocumentView(APIView):
|
|||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_knowledge_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Create documents in batches",
|
||||
|
|
@ -384,14 +384,14 @@ class DocumentView(APIView):
|
|||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_SYNC.get_workspace_knowledge_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Batch sync documents",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object_batch(r.data.get('id_list'))),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(
|
||||
|
|
@ -414,14 +414,14 @@ class DocumentView(APIView):
|
|||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_DELETE.get_workspace_knowledge_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Delete documents in batches",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object_batch(r.data.get('id_list'))),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Batch(
|
||||
|
|
@ -443,14 +443,14 @@ class DocumentView(APIView):
|
|||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_VECTOR.get_workspace_knowledge_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Batch refresh document vector library",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object_batch(r.data.get('id_list'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(
|
||||
|
|
@ -474,14 +474,14 @@ class DocumentView(APIView):
|
|||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_GENERATE.get_workspace_knowledge_permission(),
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Batch generate related documents",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object_batch(r.data.get('document_id_list'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.BatchGenerateRelated(
|
||||
|
|
@ -502,7 +502,7 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_READ.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, current_page: int, page_size: int):
|
||||
return result.success(DocumentSerializers.Query(
|
||||
|
|
@ -528,14 +528,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EXPORT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Export document",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object(keywords.get('document_id'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return DocumentSerializers.Operate(data={
|
||||
|
|
@ -554,14 +554,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EXPORT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Export Zip document",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object(keywords.get('document_id'))
|
||||
),
|
||||
),
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return DocumentSerializers.Operate(data={
|
||||
|
|
@ -580,7 +580,7 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_DOWNLOAD_SOURCE_FILE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return DocumentSerializers.Operate(data={
|
||||
|
|
@ -600,14 +600,14 @@ class DocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_MIGRATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Migrate documents in batches",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_document_operation_object(
|
||||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
get_document_operation_object_batch(r.data)
|
||||
),
|
||||
),
|
||||
)
|
||||
def put(self, request: Request, workspace_id, knowledge_id: str, target_knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Migrate(
|
||||
|
|
@ -634,7 +634,7 @@ class WebDocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Create Web site documents",
|
||||
|
|
@ -642,7 +642,7 @@ class WebDocumentView(APIView):
|
|||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
{'name': f'[{",".join([url for url in r.data.get("source_url_list", [])])}]',
|
||||
'document_list': [{'name': url} for url in r.data.get("source_url_list", [])]}),
|
||||
|
||||
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Create(data={
|
||||
|
|
@ -665,7 +665,7 @@ class QaDocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Import QA and create documentation",
|
||||
|
|
@ -673,7 +673,7 @@ class QaDocumentView(APIView):
|
|||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
{'name': f'[{",".join([file.name for file in r.FILES.getlist("file")])}]',
|
||||
'document_list': [{'name': file.name} for file in r.FILES.getlist("file")]}),
|
||||
|
||||
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Create(data={
|
||||
|
|
@ -696,7 +696,7 @@ class TableDocumentView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate="Import tables and create documents",
|
||||
|
|
@ -704,7 +704,7 @@ class TableDocumentView(APIView):
|
|||
get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
{'name': f'[{",".join([file.name for file in r.FILES.getlist("file")])}]',
|
||||
'document_list': [{'name': file.name} for file in r.FILES.getlist("file")]}),
|
||||
|
||||
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(DocumentSerializers.Create(
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_READ.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str):
|
||||
return result.success(KnowledgeSerializer.Query(
|
||||
|
|
@ -60,12 +60,12 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Knowledge Base', operate="Modify knowledge base information",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(KnowledgeSerializer.Operate(
|
||||
|
|
@ -84,12 +84,12 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DELETE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Knowledge Base', operate="Delete knowledge base",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def delete(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(KnowledgeSerializer.Operate(
|
||||
|
|
@ -107,7 +107,7 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_READ.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(KnowledgeSerializer.Operate(
|
||||
|
|
@ -128,7 +128,7 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_READ.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, current_page: int, page_size: int):
|
||||
return result.success(KnowledgeSerializer.Query(
|
||||
|
|
@ -157,12 +157,12 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_SYNC.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Knowledge Base', operate="Synchronize the knowledge base of the website",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(KnowledgeSerializer.SyncWeb(
|
||||
|
|
@ -189,7 +189,7 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(KnowledgeSerializer.HitTest(
|
||||
|
|
@ -219,12 +219,12 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_VECTOR.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Knowledge Base', operate='Re-vectorize',
|
||||
get_operation_object=lambda r, k: get_knowledge_operation_object(k.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(KnowledgeSerializer.Operate(
|
||||
|
|
@ -243,12 +243,12 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_EXPORT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Knowledge Base', operate="Export knowledge base",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return KnowledgeSerializer.Operate(data={
|
||||
|
|
@ -267,12 +267,12 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_EXPORT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Knowledge Base', operate="Export knowledge base containing images",
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return KnowledgeSerializer.Operate(data={
|
||||
|
|
@ -294,12 +294,12 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_GENERATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='document', operate='Generate related documents',
|
||||
get_operation_object=lambda r, k: get_knowledge_operation_object(k.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(KnowledgeSerializer.Operate(
|
||||
|
|
@ -320,7 +320,7 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_EDIT.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str):
|
||||
return result.success(ModelSerializer.Query(
|
||||
|
|
@ -344,7 +344,7 @@ class KnowledgeView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_EDIT.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str):
|
||||
return result.success(ModelSerializer.Query(
|
||||
|
|
@ -370,12 +370,12 @@ class KnowledgeBaseView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_CREATE.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='knowledge Base', operate='Create base knowledge',
|
||||
get_operation_object=lambda r, k: {'name': r.data.get('name'), 'desc': r.data.get('desc')},
|
||||
|
||||
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str):
|
||||
return result.success(KnowledgeSerializer.Create(
|
||||
|
|
@ -398,7 +398,7 @@ class KnowledgeWebView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_CREATE.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Knowledge Base', operate="Create a web site knowledge base",
|
||||
|
|
@ -407,7 +407,7 @@ class KnowledgeWebView(APIView):
|
|||
'meta': {'source_url': r.data.get('source_url'),
|
||||
'selector': r.data.get('selector'),
|
||||
'embedding_model_id': r.data.get('embedding_model_id')}}
|
||||
,
|
||||
,
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str):
|
||||
return result.success(KnowledgeSerializer.Create(
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_READ.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
q = ParagraphSerializers.Query(
|
||||
|
|
@ -54,7 +54,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_CREATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Paragraph', operate='Create Paragraph',
|
||||
|
|
@ -83,7 +83,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(ParagraphSerializers.Batch(
|
||||
|
|
@ -103,7 +103,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_MIGRATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Paragraph', operate='Migrate paragraphs in batches',
|
||||
|
|
@ -139,7 +139,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_GENERATE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Paragraph', operate='Batch generate related',
|
||||
|
|
@ -168,7 +168,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Paragraph', operate='Modify paragraph data',
|
||||
|
|
@ -200,7 +200,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str, paragraph_id: str):
|
||||
o = ParagraphSerializers.Operate(
|
||||
|
|
@ -224,7 +224,7 @@ class ParagraphView(APIView):
|
|||
tags=[_('Knowledge Base/Documentation/Paragraph')]) # type: ignore
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Paragraph', operate='Delete paragraph',
|
||||
|
|
@ -260,7 +260,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Paragraph', operate='Add associated questions',
|
||||
|
|
@ -290,7 +290,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str, paragraph_id: str):
|
||||
return result.success(ParagraphSerializers.Problem(
|
||||
|
|
@ -317,7 +317,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Paragraph', operate='Disassociation issue',
|
||||
|
|
@ -352,7 +352,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Paragraph', operate='Related questions',
|
||||
|
|
@ -386,7 +386,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request,
|
||||
workspace_id: str, knowledge_id: str, document_id: str, current_page: int, page_size: int):
|
||||
|
|
@ -416,7 +416,7 @@ class ParagraphView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_DOCUMENT_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, document_id: str):
|
||||
return result.success(ParagraphSerializers.AdjustPosition(
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ class ProblemView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_PROBLEM_READ.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
q = ProblemSerializers.Query(
|
||||
|
|
@ -54,12 +54,12 @@ class ProblemView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='problem', operate='Create question',
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id'))
|
||||
,
|
||||
,
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(ProblemSerializers.Create(
|
||||
|
|
@ -79,7 +79,7 @@ class ProblemView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, problem_id: str):
|
||||
return result.success(ProblemSerializers.Operate(
|
||||
|
|
@ -105,12 +105,12 @@ class ProblemView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='problem', operate='Batch associated paragraphs',
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(ProblemSerializers.BatchOperate(
|
||||
|
|
@ -132,12 +132,12 @@ class ProblemView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='problem', operate='Batch deletion issues',
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str):
|
||||
return result.success(ProblemSerializers.BatchOperate(
|
||||
|
|
@ -158,12 +158,12 @@ class ProblemView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_PROBLEM_DELETE.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='problem', operate='Delete question',
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def delete(self, request: Request, workspace_id: str, knowledge_id: str, problem_id: str):
|
||||
return result.success(ProblemSerializers.Operate(
|
||||
|
|
@ -187,12 +187,12 @@ class ProblemView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_PROBLEM_EDIT.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='problem', operate='Modify question',
|
||||
get_operation_object=lambda r, keywords: get_knowledge_operation_object(keywords.get('knowledge_id')),
|
||||
|
||||
|
||||
)
|
||||
def put(self, request: Request, workspace_id: str, knowledge_id: str, problem_id: str):
|
||||
return result.success(ProblemSerializers.Operate(
|
||||
|
|
@ -217,7 +217,7 @@ class ProblemView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.KNOWLEDGE_PROBLEM_READ.get_workspace_knowledge_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str, knowledge_id: str, current_page, page_size):
|
||||
d = ProblemSerializers.Query(
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_CREATE.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu="Tool", operate="Create tool",
|
||||
|
|
@ -62,7 +62,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_READ.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def get(self, request: Request, workspace_id: str):
|
||||
return result.success(ToolTreeSerializer(
|
||||
|
|
@ -83,7 +83,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_DEBUG.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str):
|
||||
return result.success(ToolSerializer.Debug(
|
||||
|
|
@ -105,7 +105,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_EDIT.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Tool', operate='Update tool',
|
||||
|
|
@ -128,7 +128,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_READ.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(menu='Tool', operate='Get tool')
|
||||
def get(self, request: Request, workspace_id: str, tool_id: str):
|
||||
|
|
@ -147,7 +147,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_DELETE.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Tool', operate="Delete tool",
|
||||
|
|
@ -173,7 +173,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_READ.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(menu='Tool', operate='Get tool list')
|
||||
def get(self, request: Request, workspace_id: str, current_page: int, page_size: int):
|
||||
|
|
@ -202,7 +202,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_IMPORT.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(menu='Tool', operate='Import tool', )
|
||||
def post(self, request: Request, workspace_id: str):
|
||||
|
|
@ -224,7 +224,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_EXPORT.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Tool', operate="Export tool",
|
||||
|
|
@ -251,7 +251,7 @@ class ToolView(APIView):
|
|||
@has_permissions(
|
||||
PermissionConstants.TOOL_CREATE.get_workspace_permission(),
|
||||
PermissionConstants.TOOL_EDIT.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def post(self, request: Request, workspace_id: str):
|
||||
return result.success(ToolSerializer.Pylint(
|
||||
|
|
@ -274,7 +274,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_EDIT.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
def put(self, request: Request, tool_id: str, workspace_id: str):
|
||||
return result.success(ToolSerializer.IconOperate(data={
|
||||
|
|
@ -317,7 +317,7 @@ class ToolView(APIView):
|
|||
)
|
||||
@has_permissions(
|
||||
PermissionConstants.TOOL_CREATE.get_workspace_permission(),
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role()
|
||||
RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), RoleConstants.USER.get_workspace_role()
|
||||
)
|
||||
@log(
|
||||
menu='Tool', operate="Add internal tool",
|
||||
|
|
|
|||
Loading…
Reference in New Issue