fix: 可不用隐式物料
This commit is contained in:
parent
a39e87c8f3
commit
1b85a7f88a
|
@ -107,6 +107,9 @@ class RouteSerializer(CustomModelSerializer):
|
|||
# return super().validate(attrs)
|
||||
|
||||
def gen_material_out(self, instance):
|
||||
"""
|
||||
废弃不用了
|
||||
"""
|
||||
name = f'{instance.material.name}-中'
|
||||
instance.material_out, _ = Material.objects.get_or_create(type=Material.MA_TYPE_HALFGOOD, parent=instance.material, process=instance.process,
|
||||
defaults={'parent': instance.material, 'process': instance.process,
|
||||
|
@ -120,15 +123,15 @@ class RouteSerializer(CustomModelSerializer):
|
|||
instance.save()
|
||||
|
||||
def create(self, validated_data):
|
||||
process = validated_data['process']
|
||||
if Route.objects.filter(material=validated_data['material'], process=process).exists():
|
||||
process = validated_data.get('process', None)
|
||||
if process and Route.objects.filter(material=validated_data['material'], process=process).exists():
|
||||
raise ValidationError('已选择该工序')
|
||||
with transaction.atomic():
|
||||
instance = super().create(validated_data)
|
||||
if 'material_out' in validated_data and validated_data['material_out']:
|
||||
pass
|
||||
else:
|
||||
self.gen_material_out(instance)
|
||||
# if 'material_out' in validated_data and validated_data['material_out'] and instance.material:
|
||||
# pass
|
||||
# else:
|
||||
# self.gen_material_out(instance)
|
||||
return instance
|
||||
|
||||
def update(self, instance, validated_data):
|
||||
|
@ -136,8 +139,8 @@ class RouteSerializer(CustomModelSerializer):
|
|||
validated_data.pop('process', None)
|
||||
with transaction.atomic():
|
||||
instance = super().update(instance, validated_data)
|
||||
if 'material_out' in validated_data and validated_data['material_out']:
|
||||
pass
|
||||
else:
|
||||
self.gen_material_out(instance)
|
||||
# if 'material_out' in validated_data and validated_data['material_out'] and instance.material:
|
||||
# pass
|
||||
# else:
|
||||
# self.gen_material_out(instance)
|
||||
return instance
|
||||
|
|
|
@ -145,7 +145,7 @@ def mlog_submit(mlog: Mlog, user: User, now: Union[datetime.datetime, None]):
|
|||
else:
|
||||
material_has.count = material_has.count - mlog.count_use
|
||||
material_has.save()
|
||||
if material_out.is_hidden is False: # 需要入车间库存
|
||||
if material_out and material_out.is_hidden is False: # 需要入车间库存
|
||||
# 有多个产物的情况
|
||||
if material_out.brothers and Mlogb.objects.filter(mlog=mlog).exists():
|
||||
for item in Mlogb.objects.filter(mlog=mlog):
|
||||
|
|
Loading…
Reference in New Issue