diff --git a/apps/trigger/views/trigger_task.py b/apps/trigger/views/trigger_task.py index b78a53583f2..1ccca750afd 100644 --- a/apps/trigger/views/trigger_task.py +++ b/apps/trigger/views/trigger_task.py @@ -10,11 +10,13 @@ from drf_spectacular.utils import extend_schema from rest_framework.request import Request from rest_framework.views import APIView - +from common.auth.authentication import has_permissions from common import result from trigger.api.trigger_task import TriggerTaskRecordExecutionDetailsAPI, TriggerTaskRecordPageAPI, TriggerTaskAPI from trigger.serializers.trigger_task import TriggerTaskQuerySerializer, TriggerTaskRecordQuerySerializer, \ TriggerTaskRecordOperateSerializer +from common.constants.permission_constants import PermissionConstants, RoleConstants, ViewPermission, CompareConstants, \ + Permission, Group, Operate class TriggerTaskView(APIView): @@ -27,6 +29,10 @@ class TriggerTaskView(APIView): responses=TriggerTaskAPI.get_response(), tags=[_('Trigger')] # type: ignore ) + @has_permissions( + PermissionConstants.TRIGGER_READ.get_workspace_permission_workspace_manage_role(), + RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), + ) def get(self, request: Request, workspace_id: str, trigger_id: str): return result.success( TriggerTaskQuerySerializer(data={'workspace_id': workspace_id, 'trigger_id': trigger_id}).list()) @@ -46,6 +52,10 @@ class TriggerTaskRecordExecutionDetailsView(APIView): responses=TriggerTaskRecordExecutionDetailsAPI.get_response(), tags=[_('Trigger')] # type: ignore ) + @has_permissions( + PermissionConstants.TRIGGER_READ.get_workspace_permission_workspace_manage_role(), + RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), + ) def get(self, request: Request, workspace_id: str, trigger_id: str, trigger_task_id: str, trigger_task_record_id: str): return result.success( @@ -65,6 +75,10 @@ class TriggerTaskRecordPageView(APIView): responses=TriggerTaskRecordPageAPI.get_response(), tags=[_('Trigger')] # type: ignore ) + @has_permissions( + PermissionConstants.TRIGGER_READ.get_workspace_permission_workspace_manage_role(), + RoleConstants.WORKSPACE_MANAGE.get_workspace_role(), + ) def get(self, request: Request, workspace_id: str, trigger_id: str, current_page: int, page_size: int): return result.success( TriggerTaskRecordQuerySerializer(