领料bug
This commit is contained in:
parent
f1102656c7
commit
73a475c4ea
|
|
@ -34,8 +34,8 @@ class WPlanViewSet(ListModelMixin, GenericViewSet):
|
|||
search_fields = []
|
||||
serializer_class = SubProductionPlanListSerializer
|
||||
filterset_fields = ['production_plan', 'process', 'state', 'main_product', 'workshop']
|
||||
ordering_fields = ['process__number']
|
||||
ordering = ['process__number']
|
||||
ordering_fields = []
|
||||
ordering = ['-id']
|
||||
|
||||
@action(methods=['post'], detail=True, perms_map={'post':'*'}, serializer_class=WplanPutInSerializer)
|
||||
@transaction.atomic
|
||||
|
|
@ -125,12 +125,11 @@ class WMaterialViewSet(CreateUpdateModelAMixin, ListModelMixin, GenericViewSet):
|
|||
serializer= WproductPutInSerializer(data=request.data)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
vdata = serializer.data
|
||||
subplan = self.get_object()
|
||||
material = subplan.main_product
|
||||
batch = subplan.production_plan.number
|
||||
wproducts = WProduct.objects.filter(subproduction_plan=subplan,
|
||||
act_state=WProduct.WPR_ACT_STATE_OK, m_state=material, is_deleted=False)
|
||||
if wproducts.exists():
|
||||
wproduct = self.get_object()
|
||||
if wproduct.act_state != WProduct.WPR_ACT_STATE_OK:
|
||||
raise exceptions.APIException('半成品不可入库')
|
||||
material = wproduct.m_state
|
||||
batch = wproduct.production_plan.number
|
||||
# 创建入库记录
|
||||
remark = vdata.get('remark', '')
|
||||
fifo = FIFO.objects.create(type=FIFO.FIFO_TYPE_DO_IN,
|
||||
|
|
@ -141,14 +140,14 @@ class WMaterialViewSet(CreateUpdateModelAMixin, ListModelMixin, GenericViewSet):
|
|||
fifoitem.is_testok = True
|
||||
fifoitem.warehouse = vdata['warehouse']
|
||||
fifoitem.material = material
|
||||
fifoitem.count = wproducts.count()
|
||||
fifoitem.count = 1 # 单个半成品入库
|
||||
fifoitem.batch = batch
|
||||
fifoitem.fifo = fifo
|
||||
fifoitem.subproduction_plan = subplan
|
||||
fifoitem.subproduction_plan = wproduct.subproduction_plan
|
||||
fifoitem.save()
|
||||
# 创建入库明细半成品
|
||||
ips = []
|
||||
for i in wproducts:
|
||||
for i in [wproduct]:
|
||||
ip = {}
|
||||
ip['fifoitem'] = fifoitem
|
||||
ip['wproduct'] = i
|
||||
|
|
@ -158,7 +157,7 @@ class WMaterialViewSet(CreateUpdateModelAMixin, ListModelMixin, GenericViewSet):
|
|||
FIFOItemProduct.objects.bulk_create(ips)
|
||||
# 创建IProduct
|
||||
ips2 = []
|
||||
for i in wproducts:
|
||||
for i in [wproduct]:
|
||||
ip = {}
|
||||
ip['warehouse'] = vdata['warehouse']
|
||||
ip['batch'] = batch
|
||||
|
|
@ -169,8 +168,9 @@ class WMaterialViewSet(CreateUpdateModelAMixin, ListModelMixin, GenericViewSet):
|
|||
IProduct.objects.bulk_create(ips2)
|
||||
# 更新库存并修改半成品进行状态
|
||||
update_inm(fifo)
|
||||
wproducts.update(act_sate=WProduct.WPR_ACT_STATE_INM, warehouse=vdata['warehouse'])
|
||||
|
||||
wproduct.act_state=WProduct.WPR_ACT_STATE_INM
|
||||
wproduct.warehouse=vdata['warehouse']
|
||||
wproduct.save()
|
||||
return Response()
|
||||
|
||||
class WProductViewSet(ListModelMixin, GenericViewSet):
|
||||
|
|
|
|||
Loading…
Reference in New Issue