From 02bd2275a85ecdf50eec3b59f63ea6135f20577a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Sun, 15 Mar 2026 16:46:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E8=B4=A7=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StockShelfOrderApplicationService.java | 40 ++++++++++++------- .../StockShelfOrderAppApi.java | 4 +- 2 files changed, 27 insertions(+), 17 deletions(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockShelfOrder/StockShelfOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockShelfOrder/StockShelfOrderApplicationService.java index 6354c87f5..054cbb62f 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockShelfOrder/StockShelfOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockShelfOrder/StockShelfOrderApplicationService.java @@ -186,26 +186,36 @@ public class StockShelfOrderApplicationService { } /** - * 获取上架单详细信息 + * 获取上架单详细信息(PC端:不添加 parent_copy,收货无子项时上架也不显示子项) */ - public StockShelfOrderPO getInfo(Long shelfOrderId) - { + public StockShelfOrderPO getInfo(Long shelfOrderId) { + return getInfo(shelfOrderId, false); + } + + /** + * 获取上架单详细信息 + * @param shelfOrderId 上架单ID + * @param addParentCopyWhenNoChildren 主项无子项时是否添加 parent_copy:true-PDA 详情页从 children 读取数据需要;false-PC 端收货无子项时上架不显示虚拟子项 + */ + public StockShelfOrderPO getInfo(Long shelfOrderId, boolean addParentCopyWhenNoChildren) { StockShelfOrderPO stockShelfOrderPO = stockShelfOrderDomainService.getInfo(shelfOrderId); ShelfMaterialDetailDO shelfMaterialDetailDO = new ShelfMaterialDetailDO(); shelfMaterialDetailDO.setShelfOrderNumber(stockShelfOrderPO.getShelfOrderNumber()); List shelfMaterialDetailPOList = shelfMaterialDetailDomainService.queryListChildren(shelfMaterialDetailDO); - // 主项无子项时:添加 parent_copy 到 children,供详情页展示(详情页从 children 读取数据) - for (ShelfMaterialDetailPO parent : shelfMaterialDetailPOList) { - if (CollectionUtils.isEmpty(parent.getChildren())) { - ShelfMaterialDetailPO parentCopy = new ShelfMaterialDetailPO(); - BeanUtils.copyProperties(parent, parentCopy, "children"); - parentCopy.setLevel(2); - parentCopy.setParentUniqueId(parent.getUniqueId()); - parentCopy.setQuantity(null); - parentCopy.setChildren(new ArrayList<>()); - List children = new ArrayList<>(); - children.add(parentCopy); - parent.setChildren(children); + // PDA:主项无子项时添加 parent_copy 到 children,供详情页展示(详情页从 children 读取数据);PC:不添加,避免收货无子项时上架显示虚拟子项 + if (addParentCopyWhenNoChildren) { + for (ShelfMaterialDetailPO parent : shelfMaterialDetailPOList) { + if (CollectionUtils.isEmpty(parent.getChildren())) { + ShelfMaterialDetailPO parentCopy = new ShelfMaterialDetailPO(); + BeanUtils.copyProperties(parent, parentCopy, "children"); + parentCopy.setLevel(2); + parentCopy.setParentUniqueId(parent.getUniqueId()); + parentCopy.setQuantity(null); + parentCopy.setChildren(new ArrayList<>()); + List children = new ArrayList<>(); + children.add(parentCopy); + parent.setChildren(children); + } } } diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApp/stockShelfOrder/StockShelfOrderAppApi.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApp/stockShelfOrder/StockShelfOrderAppApi.java index 9099cd451..4f82c804c 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApp/stockShelfOrder/StockShelfOrderAppApi.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApp/stockShelfOrder/StockShelfOrderAppApi.java @@ -47,13 +47,13 @@ public class StockShelfOrderAppApi extends BaseController { } /** - * 获取上架单详细信息 + * 获取上架单详细信息(PDA:主项无子项时添加 parent_copy,供详情页从 children 读取数据) */ @ApiOperation("获取上架单") @GetMapping(value = "/getInfo") public AjaxResult getInfo(Long shelfOrderId) { - return AjaxResult.success(stockShelfOrderApplicationService.getInfo(shelfOrderId)); + return AjaxResult.success(stockShelfOrderApplicationService.getInfo(shelfOrderId, true)); }