Skip to content

Commit eaa4a7f

Browse files
committed
feat: implement trigger deployment on tool deletion
1 parent d5eb68f commit eaa4a7f

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

apps/tools/serializers/tool.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -534,6 +534,8 @@ def edit(self, instance, with_valid=True):
534534

535535
@transaction.atomic
536536
def delete(self):
537+
from trigger.handler.simple_tools import deploy
538+
537539
self.is_valid(raise_exception=True)
538540
tool = QuerySet(Tool).filter(id=self.data.get('id')).first()
539541
if tool.template_id is None and tool.icon != '':
@@ -542,6 +544,15 @@ def delete(self):
542544
QuerySet(Tool).filter(id=self.data.get('id')).delete()
543545
ResourceMapping.objects.filter(target_id=self.data.get('id')).delete()
544546
QuerySet(ToolRecord).filter(tool_id=self.data.get('id')).delete()
547+
trigger_ids = QuerySet(TriggerTask).filter(
548+
source_type="TOOL", source_id=self.data.get('id')
549+
).values('trigger_id')
550+
QuerySet(TriggerTask).filter(source_type="TOOL", source_id=self.data.get('id')).delete()
551+
for trigger_id in trigger_ids:
552+
trigger = Trigger.objects.filter(id=trigger_id['trigger_id']).first()
553+
if trigger and trigger.is_active:
554+
deploy(trigger, **{})
555+
545556

546557
def one(self):
547558
self.is_one_valid(raise_exception=True)

0 commit comments

Comments
 (0)