From 6f825546acdf2e7ff8acb0cb60ae5dc59c880e79 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 1 Nov 2023 09:14:12 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9C=89mloga=E4=B9=8B=E5=90=8E?= =?UTF-8?q?=E7=9A=84=E5=AF=B9=E5=BA=94mlog=5Fconfirm=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/services.py | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/apps/wpm/services.py b/apps/wpm/services.py index 64479694..d6d8820b 100644 --- a/apps/wpm/services.py +++ b/apps/wpm/services.py @@ -11,7 +11,7 @@ from apps.inm.models import MIO, MIOItem, MIOItemA from apps.pm.models import Mtask from apps.mtm.models import Mgroup, Shift, Material -from .models import SfLog, SfLogExp, WMaterial, Mlog +from .models import SfLog, SfLogExp, WMaterial, Mlog, Mlogb def make_sflogs(mgroup: Mgroup, start_date: datetime.date, end_date: datetime.date): @@ -140,12 +140,20 @@ def mlog_confirm(mlog: Mlog): else: material_has.count = material_has.count - mlog.count_use material_has.save() - if material_out.is_hidden is False: # 需要入库 - wmaterial, _ = WMaterial.objects.get_or_create(batch=mlog.batch, material=material_out, belong_dept=belong_dept, defaults={ - 'batch': mlog.batch, 'material': material_out, 'belong_dept': belong_dept - }) - wmaterial.count = wmaterial.count + mlog.count_ok - wmaterial.save() + if 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): + wmaterial, _ = WMaterial.objects.get_or_create(batch=mlog.batch, material=item.material_out, belong_dept=belong_dept, defaults={ + 'batch': mlog.batch, 'material': item.material_out, 'belong_dept': belong_dept + }) + wmaterial.count = wmaterial.count + item.count_ok + wmaterial.save() + else: + wmaterial, _ = WMaterial.objects.get_or_create(batch=mlog.batch, material=material_out, belong_dept=belong_dept, defaults={ + 'batch': mlog.batch, 'material': material_out, 'belong_dept': belong_dept + }) + wmaterial.count = wmaterial.count + mlog.count_ok + wmaterial.save() def update_mtask(mtask: Mtask):