diff --git a/apps/opm/views.py b/apps/opm/views.py index 83ed3609..e0366487 100644 --- a/apps/opm/views.py +++ b/apps/opm/views.py @@ -154,7 +154,8 @@ class OplWorkerViewSet(CustomModelViewSet): def update(self, request, *args, **kwargs): obj = self.get_object() - if obj.opl.ticket: + ticket = obj.opl.ticket + if ticket and ticket.act_state not in [Ticket.TICKET_ACT_STATE_DRAFT, Ticket.TICKET_ACT_STATE_BACK, Ticket.TICKET_ACT_STATE_RETREAT]: raise ParseError('许可证已处理不可编辑') return super().update(request, *args, **kwargs) @@ -168,7 +169,8 @@ class GasCheckViewSet(CreateModelMixin, ListModelMixin, DestroyModelMixin, Custo def destroy(self, request, *args, **kwargs): obj = self.get_object() - if obj.opl.ticket: + ticket = obj.opl.ticket + if ticket and ticket.act_state not in [Ticket.TICKET_ACT_STATE_DRAFT, Ticket.TICKET_ACT_STATE_BACK, Ticket.TICKET_ACT_STATE_RETREAT]: raise ParseError('许可证已处理不可删除') obj.delete() return Response(status=204)