fix: 该工艺步骤已存在的校验bug

This commit is contained in:
caoqianming 2025-04-01 15:41:33 +08:00
parent c05c59b004
commit 6dfb5c489a
1 changed files with 3 additions and 7 deletions

View File

@ -253,15 +253,13 @@ class RouteSerializer(CustomModelSerializer):
else: else:
if instance.material: if instance.material:
instance.material_out = self.gen_material_out(instance, material_out_tracking) 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).first() rx = Route.objects.filter(material_in=instance.material_in, material_out=instance.material_out, process=process).exclude(id=instance.id).first()
if rx: if rx:
msg = "" msg = ""
if rx.routepack: if rx.routepack:
msg = rx.routepack.name msg = rx.routepack.name
raise ParseError(f"该工艺步骤已存在-{msg}") raise ParseError(f"该工艺步骤已存在-{msg}")
if need_save:
instance.save()
return instance return instance
def update(self, instance, validated_data): def update(self, instance, validated_data):
@ -285,15 +283,13 @@ class RouteSerializer(CustomModelSerializer):
else: else:
if instance.material: if instance.material:
instance.material_out = self.gen_material_out(instance, material_out_tracking) 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() rx = Route.objects.filter(material_in=instance.material_in, material_out=instance.material_out, process=process).exclude(id=instance.id).first()
if rx: if rx:
msg = "" msg = ""
if rx.routepack: if rx.routepack:
msg = rx.routepack.name msg = rx.routepack.name
raise ParseError(f"该工艺步骤已存在-{msg}") raise ParseError(f"该工艺步骤已存在-{msg}")
if need_save:
instance.save()
return instance return instance
def to_representation(self, instance): def to_representation(self, instance):