diff --git a/apps/mtm/serializers.py b/apps/mtm/serializers.py index 74eed38b..e600f074 100644 --- a/apps/mtm/serializers.py +++ b/apps/mtm/serializers.py @@ -212,22 +212,9 @@ class RouteSerializer(CustomModelSerializer): material = instance.material process = instance.process - material_out = Material.objects.get_queryset(all=True).filter(name=material.name, - model=material.model, process=process, - specification=material.specification).order_by("type", "-is_hidden", "create_time").first() - if material_out: - material_out.is_deleted = False - if material_out.parent is None: - if material_out.id != material.id: - material_out.parent = material - material_out.cate = material.cate - material_out.tracking = material_out_tracking - material_out.save() - return material_out - material_out: Material = Material.objects.get_queryset(all=True).filter( type__in=[Material.MA_TYPE_HALFGOOD, Material.MA_TYPE_GOOD], - parent=material, process=process).order_by("type", "-is_hidden", "create_time").first() + parent=material, process=process).order_by("create_time").first() if material_out: material_out.is_deleted = False if material_out.parent == material: @@ -238,6 +225,20 @@ class RouteSerializer(CustomModelSerializer): material_out.tracking = material_out_tracking material_out.save() return material_out + + material_out = Material.objects.get_queryset(all=True).filter(name=material.name, + model=material.model, process=process, + specification=material.specification).order_by("create_time", "-is_hidden").first() + if material_out: + material_out.is_deleted = False + if material_out.parent is None: + if material_out.id != material.id: + material_out.parent = material + material_out.cate = material.cate + material_out.tracking = material_out_tracking + material_out.save() + return material_out + material_out = Material.objects.create(**{'parent': instance.material, 'process': instance.process, 'is_hidden': True, 'name': material.name, 'number': material.number,