From c4f6d2593a9b507c5486ce6551d2f6e4b1745465 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Tue, 19 Dec 2023 14:17:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=B6=E5=93=81=E6=94=B6=E8=B4=A7=20?= =?UTF-8?q?=E5=9B=9E=E5=86=B2=E8=AE=B0=E5=BD=95=20qty=E6=95=B0=E9=87=8F?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productreceiptJob/ProductreceiptJobMainServiceImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productreceiptJob/ProductreceiptJobMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productreceiptJob/ProductreceiptJobMainServiceImpl.java index a215a7ab..da3fdc67 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productreceiptJob/ProductreceiptJobMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productreceiptJob/ProductreceiptJobMainServiceImpl.java @@ -437,6 +437,7 @@ public class ProductreceiptJobMainServiceImpl implements ProductreceiptJobMainSe WorkstationDO workstationDO = workstationService.selectWorkstationExist(productreceiptRecordDetailDO.getWorkStationCode(),productreceiptRecordMainDO.getWorkshopCode(),productreceiptRecordDetailDO.getProductionlineCode()); backflushRecordDetailbDO.setFromLocationCode(workstationDO.getRawLocationCode()); // 根据 from_location_code 查询库存余额 +// TODO: 如果按批次 查询批次获取库存余额 排序批次 如果第一条批次不够数量 需要扣除第二条余额 库存事务出的动作要存2条 List inventoryStatus = new ArrayList(); inventoryStatus.add("OK"); List balanceDOList = balanceService.selectNumber(backflushRequestDetailbDO.getItemCode(),inventoryStatus,workstationDO.getRawLocationCode()); @@ -445,6 +446,9 @@ public class ProductreceiptJobMainServiceImpl implements ProductreceiptJobMainSe backflushRecordDetailbDO.setInventoryStatus("OK"); backflushRecordDetailbDO.setFromAreaCode(balanceDOList.get(0).getAreaCode()); backflushRecordDetailbDO.setFromLocationGroupCode(balanceDOList.get(0).getLocationGroupCode()); + // 消耗数量 = 成品数量 * bom数量 + BigDecimal qty = productreceiptRecordDetailDO.getQty().multiply(backflushRecordDetailbDO.getQty()); + backflushRecordDetailbDO.setQty(qty); backflushRecordDetailbDOList.add(backflushRecordDetailbDO); //添加库存事务list // 出动作 @@ -465,6 +469,7 @@ public class ProductreceiptJobMainServiceImpl implements ProductreceiptJobMainSe transactionCreateReqVO.setAmount(BigDecimal.ZERO); transactionCreateReqVO.setWarehouseCode(""); transactionCreateReqVO.setLocationCode(backflushRecordDetailbDO.getFromLocationCode()); + transactionCreateReqVO.setQty(qty); transactionCreateReqVOList.add(transactionCreateReqVO); // 判断 物品 是否为 下线结算物品 创建 下线结算记录 if (itembasicService.isOfflines(backflushRecordDetailbDO.getItemCode())) {