fix: 出入库记录和交接记录提交处理时都进行单个的强校验

This commit is contained in:
caoqianming 2025-09-10 13:11:51 +08:00
parent d42bc29d2c
commit 8b7a87abb6
2 changed files with 3 additions and 6 deletions

View File

@ -117,8 +117,7 @@ def do_out(item: MIOItem):
mioitemws = MIOItemw.objects.filter(mioitem=item)
if mioitemws.count() != item.count:
raise ParseError("出入库与明细数量不一致,操作失败")
wprIds = [i["wpr"].id for i in mioitemws]
mb_ids = list(Wpr.objects.filter(id__in=wprIds).values_list("mb__id", flat=True).distinct())
mb_ids = list(Wpr.objects.filter(wpr_mioitemw__in=mioitemws).values_list("mb__id", flat=True).distinct())
if len(mb_ids) == 1 and mb_ids[0] == mb.id:
pass
else:
@ -235,8 +234,7 @@ def do_in(item: MIOItem):
mioitemws = MIOItemw.objects.filter(mioitem=item)
if mioitemws.count() != item.count:
raise ParseError("出入库与明细数量不一致,操作失败")
wprIds = [i["wpr"].id for i in mioitemws]
wm_ids = list(Wpr.objects.filter(id__in=wprIds).values_list("wm__id", flat=True).distinct())
wm_ids = list(Wpr.objects.filter(wpr_mioitemw__in=mioitemws).values_list("wm__id", flat=True).distinct())
if len(wm_ids) == 1 and wm_ids[0] == wm.id:
pass
else:

View File

@ -926,8 +926,7 @@ def handover_submit(handover:Handover, user: User, now: Union[datetime.datetime,
handoverbws = Handoverbw.objects.filter(handoverb=handover_or_b)
if handoverbws.count() != xcount:
raise ParseError("交接与明细数量不一致,操作失败")
wprIds = [i["wpr"].id for i in handoverbws]
wm_ids = list(Wpr.objects.filter(id__in=wprIds).values_list("wm_id", flat=True).distinct())
wm_ids = list(Wpr.objects.filter(wpr_handoverbw__in=handoverbws).values_list("wm_id", flat=True).distinct())
if len(wm_ids) == 1 and wm_ids[0] == wm_from.id:
pass
else: