From 90c14938bf32ede32527e7391000e23c6b9db8c0 Mon Sep 17 00:00:00 2001 From: zhou-hongcheng <1064771933@qq.com> Date: Mon, 16 Mar 2026 11:28:34 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=93=E5=AD=98=E8=B0=83=E6=95=B4=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=E8=8E=B7=E5=8F=96=E7=89=A9=E6=96=99=E6=9D=A1=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../HandoverTaskOrderDomainService.java | 25 +++++++++++++++ .../persistence/OutMaterialDetailImpl.java | 32 +++++++++++++++++++ 2 files changed, 57 insertions(+) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java index 0cde67b58..be4d499bb 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java @@ -17,6 +17,8 @@ import com.mhd.wms.domain.handoverTaskOrder.repository.po.HandoverTaskOrderPO; import com.mhd.wms.domain.handoverTaskOrder.repository.todo.HandoverTaskOrderDO; import com.mhd.wms.domain.inventoryAdjustmentRecord.entity.InventoryAdjustmentRecord; import com.mhd.wms.domain.inventoryAdjustmentRecord.repository.mapper.InventoryAdjustmentRecordMapper; +import com.mhd.wms.domain.materialBarCode.repository.facade.IMaterialBarCodeService; +import com.mhd.wms.domain.materialBarCode.repository.po.MaterialBarCodePO; import com.mhd.wms.domain.materialInventory.entity.MaterialInventory; import com.mhd.wms.domain.materialInventory.repository.mapper.MaterialInventoryMapper; import com.mhd.wms.domain.outMaterialDetail.entity.OutMaterialDetail; @@ -39,6 +41,7 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -65,6 +68,8 @@ public class HandoverTaskOrderDomainService { private IDeliveTaskService deliveTaskService; @Autowired private PickingMaterialDetailMapper pickingMaterialDetailMapper; + @Autowired + private IMaterialBarCodeService materialBarCodeService; /** @@ -384,6 +389,9 @@ public class HandoverTaskOrderDomainService { inventoryAdjustmentRecord.setMaterialCode(outMaterialDetail.getMaterialNo()); inventoryAdjustmentRecord.setMaterialName(outMaterialDetail.getCommodityName()); inventoryAdjustmentRecord.setBarCode(outMaterialDetail.getBarCode()); + if (inventoryAdjustmentRecord.getBarCode().equals("")){ + getBarCode(materialInventoryPO, inventoryAdjustmentRecord); + } inventoryAdjustmentRecord.setMaterialBaseInfoId(outMaterialDetail.getMaterialBaseInfoId()); inventoryAdjustmentRecord.setAdjustType(1L); inventoryAdjustmentRecord.setOrganizationId(stockOutOrder.getOrganizationId()); @@ -431,6 +439,23 @@ public class HandoverTaskOrderDomainService { } + private void getBarCode(MaterialInventory materialInventoryPO, InventoryAdjustmentRecord inventoryAdjustmentRecord) { + List materialBarCodePOList = materialBarCodeService.getInfoByMaterialBaseInfoIds(materialInventoryPO.getMaterialBaseInfoId()); + if (materialBarCodePOList != null && !materialBarCodePOList.isEmpty()) { + Map collect = materialBarCodePOList.stream() + .collect(Collectors.toMap( + MaterialBarCodePO::getMaterialBaseInfoId, + po -> po, + (existing, replacement) -> existing + )); + MaterialBarCodePO materialBarCodePO = collect.get(materialInventoryPO.getMaterialBaseInfoId()); + if (materialBarCodePO != null && materialBarCodePO.getBarCode() != null) { + inventoryAdjustmentRecord.setBarCode(materialBarCodePO.getBarCode()); + } + } + } + + /** * @description 任务下发 */ diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/persistence/OutMaterialDetailImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/persistence/OutMaterialDetailImpl.java index a0895c808..026231beb 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/persistence/OutMaterialDetailImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/persistence/OutMaterialDetailImpl.java @@ -15,6 +15,8 @@ import com.mhd.common.security.utils.SecurityUtils; import com.mhd.system.api.model.LoginUser; import com.mhd.wms.domain.inventoryAdjustmentRecord.entity.InventoryAdjustmentRecord; import com.mhd.wms.domain.inventoryAdjustmentRecord.repository.mapper.InventoryAdjustmentRecordMapper; +import com.mhd.wms.domain.materialBarCode.repository.facade.IMaterialBarCodeService; +import com.mhd.wms.domain.materialBarCode.repository.po.MaterialBarCodePO; import com.mhd.wms.domain.materialBaseInfo.entity.MaterialBaseInfo; import com.mhd.wms.domain.materialBaseInfo.repository.mapper.MaterialBaseInfoMapper; import com.mhd.wms.domain.materialInventory.entity.MaterialInventory; @@ -75,6 +77,8 @@ public class OutMaterialDetailImpl extends ServiceImpl materialBarCodePOList = materialBarCodeService.getInfoByMaterialBaseInfoIds(materialInventoryPO.getMaterialBaseInfoId()); + if (materialBarCodePOList != null && !materialBarCodePOList.isEmpty()) { + Map collect = materialBarCodePOList.stream() + .collect(Collectors.toMap( + MaterialBarCodePO::getMaterialBaseInfoId, + po -> po, + (existing, replacement) -> existing + )); + MaterialBarCodePO materialBarCodePO = collect.get(materialInventoryPO.getMaterialBaseInfoId()); + if (materialBarCodePO != null && materialBarCodePO.getBarCode() != null) { + inventoryAdjustmentRecord.setBarCode(materialBarCodePO.getBarCode()); + } + } + } + public synchronized void childrenxgkc(List outMaterialDetailList,String outOrderNumber,LoginUser loginUser) { StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper().lambda().eq(StockOutOrder::getOutOrderNumber, outOrderNumber)); for (OutMaterialDetail outMaterialDetail : outMaterialDetailList) { @@ -569,6 +592,9 @@ public class OutMaterialDetailImpl extends ServiceImpl