fix: 【权限】有知识库的管理权限,但是不能同步知识库
This commit is contained in:
parent
a0fcf300f4
commit
134747cfdc
@ -13,7 +13,8 @@ from rest_framework.views import APIView
|
|||||||
from rest_framework.views import Request
|
from rest_framework.views import Request
|
||||||
|
|
||||||
from common.auth import TokenAuth, has_permissions
|
from common.auth import TokenAuth, has_permissions
|
||||||
from common.constants.permission_constants import PermissionConstants, CompareConstants, Permission, Group, Operate
|
from common.constants.permission_constants import PermissionConstants, CompareConstants, Permission, Group, Operate, \
|
||||||
|
ViewPermission, RoleConstants
|
||||||
from common.response import result
|
from common.response import result
|
||||||
from common.response.result import get_page_request_params, get_page_api_response, get_api_response
|
from common.response.result import get_page_request_params, get_page_api_response, get_api_response
|
||||||
from common.swagger_api.common_api import CommonApi
|
from common.swagger_api.common_api import CommonApi
|
||||||
@ -32,10 +33,12 @@ class Dataset(APIView):
|
|||||||
manual_parameters=DataSetSerializers.SyncWeb.get_request_params_api(),
|
manual_parameters=DataSetSerializers.SyncWeb.get_request_params_api(),
|
||||||
responses=result.get_default_response(),
|
responses=result.get_default_response(),
|
||||||
tags=["知识库"])
|
tags=["知识库"])
|
||||||
@has_permissions(lambda r, keywords: Permission(group=Group.DATASET, operate=Operate.MANAGE,
|
@has_permissions(ViewPermission(
|
||||||
dynamic_tag=keywords.get('dataset_id')),
|
[RoleConstants.ADMIN, RoleConstants.USER],
|
||||||
lambda r, k: Permission(group=Group.DATASET, operate=Operate.DELETE,
|
[lambda r, keywords: Permission(group=Group.DATASET, operate=Operate.MANAGE,
|
||||||
dynamic_tag=k.get('dataset_id')), compare=CompareConstants.AND)
|
dynamic_tag=keywords.get('dataset_id'))],
|
||||||
|
compare=CompareConstants.AND), PermissionConstants.DATASET_EDIT,
|
||||||
|
compare=CompareConstants.AND)
|
||||||
def put(self, request: Request, dataset_id: str):
|
def put(self, request: Request, dataset_id: str):
|
||||||
return result.success(DataSetSerializers.SyncWeb(
|
return result.success(DataSetSerializers.SyncWeb(
|
||||||
data={'sync_type': request.query_params.get('sync_type'), 'id': dataset_id,
|
data={'sync_type': request.query_params.get('sync_type'), 'id': dataset_id,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user