From 55a5dd1e34ad5dbddbecc44cb74bf3ba8afbdb8d Mon Sep 17 00:00:00 2001 From: feng626 <1304903146@qq.com> Date: Mon, 13 Sep 2021 20:08:39 +0800 Subject: [PATCH] fix: ticket bug --- apps/tickets/handler/apply_application.py | 4 ++-- apps/tickets/handler/apply_asset.py | 4 ++-- apps/tickets/serializers/ticket/ticket.py | 6 ++++++ 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/apps/tickets/handler/apply_application.py b/apps/tickets/handler/apply_application.py index 8d03a995d..4bdd58984 100644 --- a/apps/tickets/handler/apply_application.py +++ b/apps/tickets/handler/apply_application.py @@ -37,8 +37,8 @@ class Handler(BaseHandler): def _construct_meta_body_of_open(self): apply_category_display = self.ticket.meta.get('apply_category_display') apply_type_display = self.ticket.meta.get('apply_type_display') - apply_applications = self.ticket.meta.get('apply_applications', []) - apply_system_users = self.ticket.meta.get('apply_system_users', []) + apply_applications = self.ticket.meta.get('apply_applications_display', []) + apply_system_users = self.ticket.meta.get('apply_system_users_display', []) apply_date_start = self.ticket.meta.get('apply_date_start') apply_date_expired = self.ticket.meta.get('apply_date_expired') applied_body = '''{}: {}, diff --git a/apps/tickets/handler/apply_asset.py b/apps/tickets/handler/apply_asset.py index ae8ded3b1..42daf6742 100644 --- a/apps/tickets/handler/apply_asset.py +++ b/apps/tickets/handler/apply_asset.py @@ -32,8 +32,8 @@ class Handler(BaseHandler): # body def _construct_meta_body_of_open(self): - apply_assets = self.ticket.meta.get('apply_assets', []) - apply_system_users = self.ticket.meta.get('apply_system_users', []) + apply_assets = self.ticket.meta.get('apply_assets_display', []) + apply_system_users = self.ticket.meta.get('apply_system_users_display', []) apply_actions_display = self.ticket.meta.get('apply_actions_display', []) apply_date_start = self.ticket.meta.get('apply_date_start') apply_date_expired = self.ticket.meta.get('apply_date_expired') diff --git a/apps/tickets/serializers/ticket/ticket.py b/apps/tickets/serializers/ticket/ticket.py index b5565008b..82ac70122 100644 --- a/apps/tickets/serializers/ticket/ticket.py +++ b/apps/tickets/serializers/ticket/ticket.py @@ -157,6 +157,12 @@ class TicketFlowApproveSerializer(serializers.ModelSerializer): return obj.assignees.values_list('id', flat=True) return [] + def validate(self, attrs): + if attrs['strategy'] == TicketApprovalStrategy.custom_user and not attrs.get('assignees'): + error = _('Please select the Assignees') + raise serializers.ValidationError(error) + return super().validate(attrs) + class TicketFlowSerializer(OrgResourceModelSerializerMixin): type_display = serializers.ReadOnlyField(source='get_type_display', label=_('Type display'))