diff --git a/apps/mtm/serializers.py b/apps/mtm/serializers.py index 8827eabb..d21758a7 100644 --- a/apps/mtm/serializers.py +++ b/apps/mtm/serializers.py @@ -253,15 +253,13 @@ class RouteSerializer(CustomModelSerializer): else: if instance.material: instance.material_out = self.gen_material_out(instance, material_out_tracking) - need_save = True - rx = Route.objects.filter(material_in=instance.material_in, material_out=instance.material_out, process=process).first() + instance.save() + rx = Route.objects.filter(material_in=instance.material_in, material_out=instance.material_out, process=process).exclude(id=instance.id).first() if rx: msg = "" if rx.routepack: msg = rx.routepack.name raise ParseError(f"该工艺步骤已存在-{msg}") - if need_save: - instance.save() return instance def update(self, instance, validated_data): @@ -285,15 +283,13 @@ class RouteSerializer(CustomModelSerializer): else: if instance.material: instance.material_out = self.gen_material_out(instance, material_out_tracking) - need_save = True + instance.save() rx = Route.objects.filter(material_in=instance.material_in, material_out=instance.material_out, process=process).exclude(id=instance.id).first() if rx: msg = "" if rx.routepack: msg = rx.routepack.name raise ParseError(f"该工艺步骤已存在-{msg}") - if need_save: - instance.save() return instance def to_representation(self, instance):