diff --git a/hb_server/apps/pm/views.py b/hb_server/apps/pm/views.py index 3761ead..fcf6388 100644 --- a/hb_server/apps/pm/views.py +++ b/hb_server/apps/pm/views.py @@ -7,7 +7,7 @@ from apps.em.models import Equipment from apps.em.serializers import EquipmentSimpleSerializer from apps.inm.models import MaterialBatch from apps.inm.serializers import MaterialBatchSerializer -from apps.mtm.models import Step, SubProduction, SubprodctionMaterial, UsedStep +from apps.mtm.models import Material, Step, SubProduction, SubprodctionMaterial from apps.pm.filters import PlanFilterSet, SubproductionProgressFilterSet from apps.system.mixins import CreateUpdateModelAMixin from apps.pm.serializers import GenSubPlanSerializer, PickNeedSerializer, PlanDestorySerializer, ProductionPlanCreateFromOrderSerializer, ProductionPlanSerializer, ResourceCalListSerializer, ResourceCalSerializer, SubProductionPlanListSerializer, SubProductionPlanUpdateSerializer, SubProductionProgressSerializer @@ -220,8 +220,12 @@ class ResourceViewSet(GenericViewSet): for i in rdata: # 计算输入物料 materials = SubprodctionMaterial.objects.filter(subproduction__product__id=i['id'], - subproduction__is_deleted=False, is_deleted=False, material__type__in=[3,4], type=1).order_by('material__number')\ - .values('material__id', 'material__name', 'material__number', 'material__type', 'count', 'material__count') + subproduction__is_deleted=False, is_deleted=False, + material__type__in=[Material.MA_TYPE_MAINSO, + Material.MA_TYPE_HELPSO], type= SubprodctionMaterial.SUB_MA_TYPE_IN).order_by('material__number')\ + .values('material__id', 'material__name', + 'material__number', 'material__type', + 'count', 'material__count', 'material__count_safe') l_m = list(materials) for m in l_m: if m['material__id'] in res_d_list: @@ -231,7 +235,8 @@ class ResourceViewSet(GenericViewSet): res_d_list.append(m['material__id']) res.append({'id':m['material__id'], 'name':m['material__name'], 'type':m['material__type'], 'number':m['material__number'], - 'count':m['count']*i['count'], 'inv_count':m['material__count']}) + 'count':m['count']*i['count'], 'inv_count':m['material__count'], + 'count_safe':'material__count_safe'}) return Response(res) @action(methods=['post'], detail=False, perms_map={'post':'*'}, serializer_class=ResourceCalListSerializer)