fix: 组合件出入库bug

This commit is contained in:
caoqianming 2023-10-25 15:51:25 +08:00
parent 3e77468ea5
commit e9845a246e
3 changed files with 8 additions and 6 deletions

View File

@ -132,7 +132,7 @@ class MIOItemCreateSerializer(CustomModelSerializer):
if k in assemb_dict:
mia = assemb_dict[k]
MIOItemA.objects.create(
mioitem=instance, material=mia['material'], batch=mio['batch'], count=v)
mioitem=instance, material=mia['material'], batch=mia['batch'], rate=v)
else:
raise ParseError('缺少组合件')
return instance

View File

@ -48,7 +48,7 @@ class InmService:
raise ParseError('该批次组合件已存在')
for mia in mias:
MaterialBatchA.objects.create(
mb=mb, material=mia.material, batch=mia.batch, count=mia.count)
mb=mb, material=mia.material, batch=mia.batch)
elif in_or_out == -1:
mb.count = mb.count - i.count
if mb.count < 0:

View File

@ -89,11 +89,13 @@ def do_in(mio: MIO):
action_list = []
mias = MIOItemA.objects.filter(mioitem=item)
if mias.exists(): # 组合件入库
action_list = list(mias.values_list('material', 'batch', 'rate'))
for i in action_list:
i[2] = i[2]*item.count
mias_list = list(mias.values_list('material', 'batch', 'rate'))
for i in range(len(mias_list)):
material, batch, rate = mias_list[i]
new_count = rate * item.count # 假设 item.count 存在
action_list.append([material, batch, new_count])
else:
action_list = [item.material, item.batch, item.count]
action_list = [[item.material, item.batch, item.count]]
for al in action_list:
xmaterial, xbatch, xcount = al
try: