Skip to content

Commit d1e7ec0

Browse files
committed
fix: Trigger record list
1 parent febce5a commit d1e7ec0

File tree

1 file changed

+31
-4
lines changed

1 file changed

+31
-4
lines changed

apps/trigger/serializers/trigger_task.py

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
from common.exception.app_exception import AppApiException
1919
from common.utils.common import get_file_content
2020
from maxkb.conf import PROJECT_DIR
21-
from trigger.models import TriggerTask, TaskRecord
21+
from trigger.models import TriggerTask, TaskRecord, Trigger
2222

2323

2424
class ChatRecordSerializerModel(serializers.ModelSerializer):
@@ -38,7 +38,16 @@ class Meta:
3838

3939
class TriggerTaskQuerySerializer(serializers.Serializer):
4040
trigger_id = serializers.CharField(required=True, label=_("Trigger ID"))
41-
workspace_id = serializers.CharField(required=True, label=_('workspace id'))
41+
workspace_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_("Workspace ID"))
42+
43+
def is_valid(self, *, raise_exception=False):
44+
super().is_valid(raise_exception=True)
45+
workspace_id = self.data.get('workspace_id')
46+
query_set = QuerySet(Trigger).filter(id=self.data.get('trigger_id'))
47+
if workspace_id:
48+
query_set = query_set.filter(workspace_id=workspace_id)
49+
if not query_set.exists():
50+
raise AppApiException(500, _('Trigger id does not exist'))
4251

4352
def get_query_set(self):
4453
query_set = QuerySet(TriggerTask).filter(workspace_id=self.data.get("workspace_id")).filter(
@@ -53,10 +62,19 @@ def list(self, with_valid=True):
5362

5463
class TriggerTaskRecordOperateSerializer(serializers.Serializer):
5564
trigger_id = serializers.CharField(required=True, label=_("Trigger ID"))
56-
workspace_id = serializers.CharField(required=True, label=_('workspace id'))
65+
workspace_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_("Workspace ID"))
5766
trigger_task_id = serializers.CharField(required=True, label=_("Trigger task ID"))
5867
trigger_task_record_id = serializers.CharField(required=True, label=_("Trigger task record ID"))
5968

69+
def is_valid(self, *, raise_exception=False):
70+
super().is_valid(raise_exception=True)
71+
workspace_id = self.data.get('workspace_id')
72+
query_set = QuerySet(Trigger).filter(id=self.data.get('trigger_id'))
73+
if workspace_id:
74+
query_set = query_set.filter(workspace_id=workspace_id)
75+
if not query_set.exists():
76+
raise AppApiException(500, _('Trigger id does not exist'))
77+
6078
def get_execution_details(self, is_valid=True):
6179
if is_valid:
6280
self.is_valid(raise_exception=True)
@@ -75,11 +93,20 @@ def get_execution_details(self, is_valid=True):
7593

7694
class TriggerTaskRecordQuerySerializer(serializers.Serializer):
7795
trigger_id = serializers.CharField(required=True, label=_("Trigger ID"))
78-
workspace_id = serializers.CharField(required=True, label=_('workspace id'))
96+
workspace_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_("Workspace ID"))
7997
state = serializers.CharField(required=False, allow_blank=True, allow_null=True, label=_('Trigger state'))
8098
name = serializers.CharField(required=False, allow_blank=True, allow_null=True, label=_('Trigger name'))
8199
order = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_('Order field'))
82100

101+
def is_valid(self, *, raise_exception=False):
102+
super().is_valid(raise_exception=True)
103+
workspace_id = self.data.get('workspace_id')
104+
query_set = QuerySet(Trigger).filter(id=self.data.get('trigger_id'))
105+
if workspace_id:
106+
query_set = query_set.filter(workspace_id=workspace_id)
107+
if not query_set.exists():
108+
raise AppApiException(500, _('Trigger id does not exist'))
109+
83110
def get_query_set(self):
84111
trigger_query_set = QuerySet(
85112
model=get_dynamics_model({

0 commit comments

Comments
 (0)