fix: model permission (#3299)

This commit is contained in:
shaohuzhang1 2025-06-18 18:09:50 +08:00 committed by GitHub
parent 7207e20246
commit 13c5833d42
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -65,7 +65,7 @@ class ModelSetting(APIView):
request=ModelCreateAPI.get_request(),
responses=ModelCreateAPI.get_response())
@has_permissions(PermissionConstants.MODEL_CREATE.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
@log(menu='model', operate='Create model',
get_operation_object=lambda r, k: {'name': r.date.get('name')},
get_details=get_edit_model_details,
@ -95,7 +95,7 @@ class ModelSetting(APIView):
responses=ModelListResponse.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
def get(self, request: Request, workspace_id: str):
return result.success(
ModelSerializer.Query(
@ -114,7 +114,7 @@ class ModelSetting(APIView):
responses=ModelEditApi.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_EDIT.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
@log(menu='model', operate='Update model',
get_operation_object=lambda r, k: get_model_operation_object(k.get('model_id')),
get_details=get_edit_model_details,
@ -132,7 +132,7 @@ class ModelSetting(APIView):
responses=DefaultModelResponse.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_DELETE.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
@log(menu='model', operate='Delete model',
get_operation_object=lambda r, k: get_model_operation_object(k.get('model_id')),
)
@ -148,7 +148,7 @@ class ModelSetting(APIView):
responses=GetModelApi.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
def get(self, request: Request, workspace_id: str, model_id: str):
return result.success(
ModelSerializer.Operate(data={'id': model_id, 'user_id': request.user.id}).one(with_valid=True))
@ -164,7 +164,7 @@ class ModelSetting(APIView):
responses=ProvideApi.ModelParamsForm.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
def get(self, request: Request, workspace_id: str, model_id: str):
return result.success(
ModelSerializer.ModelParams(data={'id': model_id}).get_model_params())
@ -178,7 +178,7 @@ class ModelSetting(APIView):
responses=ProvideApi.ModelParamsForm.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
@log(menu='model', operate='Save model parameter form',
get_operation_object=lambda r, k: get_model_operation_object(k.get('model_id')),
)
@ -200,7 +200,7 @@ class ModelSetting(APIView):
responses=GetModelApi.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
def get(self, request: Request, workspace_id: str, model_id: str):
return result.success(
ModelSerializer.Operate(data={'id': model_id}).one_meta(with_valid=True))
@ -217,7 +217,7 @@ class ModelSetting(APIView):
responses=DefaultModelResponse.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_CREATE.get_workspace_permission(),
RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
RoleConstants.WORKSPACE_MANAGE.get_workspace_role())
def put(self, request: Request, workspace_id: str, model_id: str):
return result.success(
ModelSerializer.Operate(data={'id': model_id}).pause_download())
@ -235,7 +235,7 @@ class SharedModel(APIView):
responses=ModelListResponse.get_response(),
tags=[_('Shared Model')]
) # type: ignore
@has_permissions(PermissionConstants.MODEL_READ, RoleConstants.WORKSPACE_MANAGE.get_workspace_role)
@has_permissions(PermissionConstants.MODEL_READ, RoleConstants.WORKSPACE_MANAGE.get_workspace_role()())
def get(self, request: Request, workspace_id: str):
return result.success(
SharedModelSerializer(data={'workspace_id': workspace_id}).get_share_model_list())
SharedModelSerializer(data={'workspace_id': workspace_id}).get_share_model_list())