fix: mlogbw create 调换一下if顺序
This commit is contained in:
parent
4823acb004
commit
0a6959a36c
|
@ -893,15 +893,28 @@ class MlogbwViewSet(CustomModelViewSet):
|
||||||
if mlog != ins.mlogb.mlog:
|
if mlog != ins.mlogb.mlog:
|
||||||
raise ParseError("所有记录必须属于同一张日志")
|
raise ParseError("所有记录必须属于同一张日志")
|
||||||
mlogb:Mlogb = ins.mlogb
|
mlogb:Mlogb = ins.mlogb
|
||||||
route:Route = mlogb.route
|
route:Route = mlogb.route if mlogb.route else mlog.route
|
||||||
Mlogbw.cal_count_notok(mlogb)
|
Mlogbw.cal_count_notok(mlogb)
|
||||||
# 如果是输入且输出追踪到个,需同步创建
|
# 如果是输入且输出追踪到个,需同步创建
|
||||||
material_in:Material = mlogb.material_in
|
material_in:Material = mlogb.material_in
|
||||||
if material_in is not None:
|
if material_in is not None:
|
||||||
mlogb_qs = Mlogb.objects.filter(mlogb_from=mlogb)
|
mlogb_qs = Mlogb.objects.filter(mlogb_from=mlogb)
|
||||||
material_out:Material = route.material_out if route else material_in if mlog.is_fix is False else mlog.material_out
|
if route:
|
||||||
|
material_out = route.material_out
|
||||||
|
elif mlog.is_fix:
|
||||||
|
material_out = material_in
|
||||||
|
else:
|
||||||
|
raise ParseError("获取产出物料错误")
|
||||||
mtype = route.process.mtype if route.process else None
|
mtype = route.process.mtype if route.process else None
|
||||||
if mtype == Process.PRO_DIV:
|
if mlogb_qs.exists() and material_out.tracking == Material.MA_TRACKING_SINGLE:
|
||||||
|
for mlogb in mlogb_qs:
|
||||||
|
if route.process.mtype == Process.PRO_NORMAL:
|
||||||
|
Mlogbw.objects.get_or_create(mlogb=mlogb, wpr=ins.wpr, defaults={"number": ins.number, "mlogbw_from": ins})
|
||||||
|
elif route.process.mtype == Process.PRO_DIV:
|
||||||
|
for i in range(route.div_number):
|
||||||
|
Mlogbw.objects.get_or_create(mlogb=mlogb, number=f'{ins.number}-{i+1}', defaults={"mlogbw_from": ins})
|
||||||
|
Mlogbw.cal_count_notok(mlogb)
|
||||||
|
elif mtype == Process.PRO_DIV:
|
||||||
mlogbin = ins.mlogb
|
mlogbin = ins.mlogb
|
||||||
wm_in = mlogbin.wm_in
|
wm_in = mlogbin.wm_in
|
||||||
mlog = mlogbin.mlog
|
mlog = mlogbin.mlog
|
||||||
|
@ -930,14 +943,6 @@ class MlogbwViewSet(CustomModelViewSet):
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
raise ParseError("该个号不可产生该批")
|
raise ParseError("该个号不可产生该批")
|
||||||
elif mlogb_qs.exists() and material_out.tracking == Material.MA_TRACKING_SINGLE:
|
|
||||||
for mlogb in mlogb_qs:
|
|
||||||
if route.process.mtype == Process.PRO_NORMAL:
|
|
||||||
Mlogbw.objects.get_or_create(mlogb=mlogb, wpr=ins.wpr, defaults={"number": ins.number, "mlogbw_from": ins})
|
|
||||||
elif route.process.mtype == Process.PRO_DIV:
|
|
||||||
for i in range(route.div_number):
|
|
||||||
Mlogbw.objects.get_or_create(mlogb=mlogb, number=f'{ins.number}-{i+1}', defaults={"mlogbw_from": ins})
|
|
||||||
Mlogbw.cal_count_notok(mlogb)
|
|
||||||
mlog.cal_mlog_count_from_mlogb()
|
mlog.cal_mlog_count_from_mlogb()
|
||||||
|
|
||||||
@transaction.atomic
|
@transaction.atomic
|
||||||
|
|
Loading…
Reference in New Issue