From f280127214feb2c75a1d63375f8f08be1f9432a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Sat, 14 Mar 2026 19:57:56 +0800 Subject: [PATCH] =?UTF-8?q?PDA=E5=A4=8D=E6=A0=B8=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E6=9F=A5=E8=AF=A21?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/StockOutOrderDomainService.java | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/service/StockOutOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/service/StockOutOrderDomainService.java index c422f27c6..d04eaebd0 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/service/StockOutOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/service/StockOutOrderDomainService.java @@ -511,7 +511,14 @@ public class StockOutOrderDomainService { && stockOutOrder.getStatus() != null && (stockOutOrder.getStatus() == 7 || stockOutOrder.getStatus() == 8)) { StockOutOrderDO stockOutOrderDO = new StockOutOrderDO(); stockOutOrderDO.setOutOrderNumber(stockOutOrder.getOutOrderNumber()); - return getCheckInfo(stockOutOrderDO); + StockOutOrderPO stockOutOrderPO = getCheckInfo(stockOutOrderDO); + // PDA端需扁平化树形结构,与PC端展开后的展示条数一致(父项+子项全部展开为独立行) + List flattenedList = flattenMaterialDetailTree(stockOutOrderPO.getMaterialDetailList()); + stockOutOrderPO.setMaterialDetailList(flattenedList); + if (stockOutOrderPO.getOutMaterialCheckPO() != null) { + stockOutOrderPO.getOutMaterialCheckPO().setCount(flattenedList.size()); + } + return stockOutOrderPO; } // 非复核场景:保持原有逻辑 StockOutOrderPO stockOutOrderPO = stockOutOrderService.getInfo(outOrderId); @@ -862,6 +869,26 @@ public class StockOutOrderDomainService { } + /** + * 将物料明细树形结构扁平化,PDA端展示与PC端条数一致(父项+子项全部展开为独立行) + */ + private List flattenMaterialDetailTree(List treeList) { + if (CollectionUtils.isEmpty(treeList)) { + return new ArrayList<>(); + } + List result = new ArrayList<>(); + for (OutMaterialDetailPO item : treeList) { + result.add(item); + List children = item.getChildren(); + if (!CollectionUtils.isEmpty(children)) { + List flattenedChildren = flattenMaterialDetailTree(children); + result.addAll(flattenedChildren); + item.setChildren(null); + } + } + return result; + } + /** * 为物料库存设置更多属性(从库存表中获取值) * @param materialDetailList 物料库存列表