feat: 切分工序切分数量支持1

This commit is contained in:
caoqianming 2025-04-23 10:59:59 +08:00
parent 433d85456e
commit 75503fc7e8
2 changed files with 7 additions and 4 deletions

View File

@ -186,8 +186,8 @@ class RouteSerializer(CustomModelSerializer):
raise ParseError('未提供操作工序') raise ParseError('未提供操作工序')
if process.parent is not None: if process.parent is not None:
raise ParseError('操作工序不可为子工序') raise ParseError('操作工序不可为子工序')
if process.mtype == Process.PRO_DIV and attrs.get('div_number', 1) <= 1: if process.mtype == Process.PRO_DIV and attrs.get('div_number', 1) < 1:
raise ParseError('切分数量必须大于1') raise ParseError('切分数量必须大于等于1')
return super().validate(attrs) return super().validate(attrs)
@classmethod @classmethod

View File

@ -624,8 +624,11 @@ class MlogbInViewSet(CreateModelMixin, UpdateModelMixin, DestroyModelMixin, Cust
{"count_real": d_count_real, "count_ok": d_count_ok})) {"count_real": d_count_real, "count_ok": d_count_ok}))
for mlogbwin in Mlogbw.objects.filter(mlogb=mlogbin).order_by("number"): for mlogbwin in Mlogbw.objects.filter(mlogb=mlogbin).order_by("number"):
wpr_ = mlogbwin.wpr wpr_ = mlogbwin.wpr
for i in range(div_number): if div_number == 1:
Mlogbw.objects.get_or_create(mlogb=mlogbout, number=f'{wpr_.number}-{i+1}', defaults={"mlogbw_from": mlogbwin}) Mlogbw.objects.get_or_create(wpr=wpr_, mlogb=mlogbout, defaults={"number": wpr_.number, "mlogbw_from": mlogbwin})
else:
for i in range(div_number):
Mlogbw.objects.get_or_create(mlogb=mlogbout, number=f'{wpr_.number}-{i+1}', defaults={"mlogbw_from": mlogbwin})
elif material_in.tracking == Material.MA_TRACKING_BATCH and material_out.tracking == Material.MA_TRACKING_BATCH: elif material_in.tracking == Material.MA_TRACKING_BATCH and material_out.tracking == Material.MA_TRACKING_BATCH:
d_count_real = mlogbin.count_use * div_number d_count_real = mlogbin.count_use * div_number
d_count_ok = d_count_real d_count_ok = d_count_real