From fd5e81e5ffec199bae69fb04dd4941c84c4eb54d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Thu, 9 Apr 2026 10:29:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E8=B4=A7=E6=89=B9=E6=AC=A1=E5=8F=B7?= =?UTF-8?q?=E4=BF=AE=E6=94=B9Sheet=20Ref=20NO's?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ReceiptMaterialDetailImpl.java | 40 +++++++++++-------- 1 file changed, 24 insertions(+), 16 deletions(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/receiptMaterialDetail/repository/persistence/ReceiptMaterialDetailImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/receiptMaterialDetail/repository/persistence/ReceiptMaterialDetailImpl.java index 23c00a5e3..191d43ded 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/receiptMaterialDetail/repository/persistence/ReceiptMaterialDetailImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/receiptMaterialDetail/repository/persistence/ReceiptMaterialDetailImpl.java @@ -334,13 +334,8 @@ public class ReceiptMaterialDetailImpl extends ServiceImpl materialMoreDetailList = new ArrayList<>(); List materialDetailSerialNumberList = new ArrayList<>(); for (ReceiptMaterialDetailDO receiptMaterialDetailDO : receiptMaterialDetailDOList){ - extractBatchAttributesToReceiptDetail(receiptMaterialDetailDO); - // 自动生成批次号并校验唯一性(包括子项) + // 批次号:默认取 Sheet Ref NO's(sheetRefNo),不再自动生成 PC 流水号(逻辑见 generateAndValidateBatchNumber) generateAndValidateBatchNumber(receiptMaterialDetailDO, shipperId); - // 当 materialMoreDetailList 为空时(如 PDA 未传),从 receiptMaterialDetailDO 的 batch_number、material_status_code 等字段构建,确保更多属性能保存并回显 - if (CollectionUtils.isEmpty(receiptMaterialDetailDO.getMaterialMoreDetailList())) { - receiptMaterialDetailDO.setMaterialMoreDetailList(buildMaterialMoreDetailFromReceiptFields(receiptMaterialDetailDO)); - } //更多属性 materialMoreDetailList.addAll(genMaterialMoreDetail(receiptMaterialDetailDO)); //序列号 @@ -355,8 +350,7 @@ public class ReceiptMaterialDetailImpl extends ServiceImpl receiptMaterialDetailChildList = new ArrayList<>(); if (!CollectionUtils.isEmpty(receiptMaterialDetailDOChildList)){ for (ReceiptMaterialDetailDO receiptMaterialDetailDOChild : receiptMaterialDetailDOChildList){ - // 子项也需从批次属性提取净重、毛重、体积、面积等字段 - extractBatchAttributesToReceiptDetail(receiptMaterialDetailDOChild); + // 子项批次属性已在 generateAndValidateBatchNumber 递归中提取 ReceiptMaterialDetail receiptMaterialDetailChild = new ReceiptMaterialDetail(); BeanUtils.copyProperties(receiptMaterialDetailDOChild, receiptMaterialDetailChild); alignPersistedReceiptQuantityToCumulative(receiptMaterialDetailDOChild, receiptMaterialDetailChild); @@ -1128,7 +1122,7 @@ public class ReceiptMaterialDetailImpl extends ServiceImpl