diff --git a/apps/wpm/serializers.py b/apps/wpm/serializers.py index 13330767..b595790b 100644 --- a/apps/wpm/serializers.py +++ b/apps/wpm/serializers.py @@ -283,10 +283,10 @@ class MlogSerializer(CustomModelSerializer): instance: Mlog = super().create(validated_data) # 自动生成mlogb batch_in = instance.batch + wm_in = instance.wm_in + if wm_in: + batch_in = wm_in.batch if instance.material_in: # 如果有消耗 - wm_in = instance.wm_in - if wm_in: - batch_in = wm_in.batch add_dict = { 'mlog': instance, 'batch': batch_in, 'wm_in': wm_in, 'mtask': instance.mtask, 'material_in': instance.material_in, @@ -337,7 +337,6 @@ class MlogSerializer(CustomModelSerializer): add_dict_2[f.name] = getattr(instance, f.name) ddict = {} if wm_in: - wm_in = instance.wm_in ddict = {"batch_ofrom": wm_in.batch_ofrom, "material_ofrom": wm_in.material_ofrom} Mlogb.objects.get_or_create(**add_dict_2, defaults=ddict) return instance @@ -354,13 +353,13 @@ class MlogSerializer(CustomModelSerializer): mlogb = validated_data.pop('mlogb', []) instance: Mlog = super().update(instance, validated_data) wm_in = instance.wm_in + batch_in = instance.batch + if wm_in: + batch_in = wm_in.batch # 修改消耗 if instance.fill_way in [Mlog.MLOG_12, Mlog.MLOG_2]: # 自动生成mlogb if instance.material_in: # 有消耗的情况 - batch_in = instance.batch - if wm_in: - batch_in = wm_in.batch minx, _ = Mlogb.objects.get_or_create( mlog=instance, batch=batch_in,