feat: update_material_count时更新组合件数量

This commit is contained in:
caoqianming 2025-04-18 14:13:34 +08:00
parent 6678e39518
commit 2b9e3322ac
2 changed files with 6 additions and 2 deletions

View File

@ -228,8 +228,9 @@ class InmService:
更新物料数量
"""
# 统计物料数量
m_ids = MIOItem.objects.filter(mio=instance).values_list('material_id', flat=True)
cal_material_count(m_ids)
m_ids = list(MIOItem.objects.filter(mio=instance).values_list('material_id', flat=True))
m_ids2 = list(MIOItemA.objects.filter(mioitem__mio=instance).values_list('material_id', flat=True))
cal_material_count(m_ids+m_ids2)
@classmethod
def update_inm(cls, instance: MIO, is_reverse: bool = False):

View File

@ -286,6 +286,7 @@ class MIOItemViewSet(CustomListModelMixin, BulkCreateModelMixin, BulkDestroyMode
sr.save()
# 开始变动库存
InmService.update_mb_item(ins, -1, 'count_notok')
InmService.update_material_count(ins.mio)
return Response()
@action(methods=['post'], detail=True, perms_map={'post': 'mioitem.test'}, serializer_class=serializers.Serializer)
@ -303,6 +304,7 @@ class MIOItemViewSet(CustomListModelMixin, BulkCreateModelMixin, BulkDestroyMode
pass
ins.test_date = None
ins.save()
InmService.update_material_count(ins.mio)
return Response()
@action(methods=['post'], detail=True, perms_map={'post': 'mioitem.test'}, serializer_class=MIOItemPurInTestSerializer)
@ -320,6 +322,7 @@ class MIOItemViewSet(CustomListModelMixin, BulkCreateModelMixin, BulkDestroyMode
sr = MIOItemPurInTestSerializer(instance=ins, data=request.data)
sr.is_valid(raise_exception=True)
sr.save()
InmService.update_material_count(ins.mio)
return Response()
@action(methods=['post'], detail=False, perms_map={'post': '*'}, serializer_class=MioItemAnaSerializer)