diff --git a/apps/sam/views.py b/apps/sam/views.py index e10abdc9..e7cab13e 100644 --- a/apps/sam/views.py +++ b/apps/sam/views.py @@ -60,6 +60,13 @@ class OrderViewSet(CustomModelViewSet): search_fields = ['number'] filter_fields = ['contract', 'customer'] + @transaction.atomic + def perform_destroy(self, instance): + order = instance.order + if order.state != Order.ORDER_CREATE: + raise ParseError('订单非创建中不可删除') + instance.delete() + @action(methods=['post'], detail=True, perms_map={'post': 'order.update'}, serializer_class=serializers.Serializer) @transaction.atomic def submit(self, request, *args, **kwargs):