From ec441d770b3ca22f249840e2c4e0bed44dc9ad99 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 5 Sep 2024 14:56:55 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20handover=20create=20=E5=AF=B9handoverb?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/serializers.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/wpm/serializers.py b/apps/wpm/serializers.py index 5b925b6d..a6d48872 100644 --- a/apps/wpm/serializers.py +++ b/apps/wpm/serializers.py @@ -634,12 +634,17 @@ class HandoverSerializer(CustomModelSerializer): def create(self, validated_data): type = validated_data['type'] + handoverb = validated_data.pop('handoverb', []) if type == Handover.H_REPAIR: recive_mgroup = validated_data.get("recive_mgroup", None) if recive_mgroup is None: raise ParseError('返工交接需指定工段') validated_data['material_changed'] = find_material_can_change(validated_data['material'], recive_mgroup) - return super().create(validated_data) + with transaction.atomic(): + ins = super().create(validated_data) + for item in handoverb: + Handoverb.objects.get_or_create(handover=ins, wm=item["wm"], count=item["count"]) + return ins class HandoverUpdateSerializer(CustomModelSerializer): class Meta: