From 55764497c810631da7258f2e61fcd7d9b5ceaafb Mon Sep 17 00:00:00 2001 From: liuyihe <2513762445@qq.com> Date: Tue, 13 Oct 2026 16:48:54 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=B4=E6=A0=87=E7=94=B3=E8=AF=B7=EF=BC=8C?= =?UTF-8?q?=E4=BB=93=E5=82=A8=E8=BD=AC=E8=BF=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../returnreceipt/dto/ReturnOrderResponses.java | 15 +++++++++++---- .../service/ReturnInventoryService.java | 6 ++++-- .../service/ReturnReceiptService.java | 2 +- 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/dto/ReturnOrderResponses.java b/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/dto/ReturnOrderResponses.java index b15224b11..63fbd2952 100644 --- a/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/dto/ReturnOrderResponses.java +++ b/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/dto/ReturnOrderResponses.java @@ -23,7 +23,13 @@ public final class ReturnOrderResponses { } } public record ReceiptCarton(String receiptNo, String palletCode, String cartonMark, String countStatus, - LocalDateTime countedAt, List items) { } + LocalDateTime countedAt, List items, + BigDecimal length, BigDecimal width, BigDecimal height, BigDecimal weight) { + public ReceiptCarton(String receiptNo, String palletCode, String cartonMark, String countStatus, + LocalDateTime countedAt, List items) { + this(receiptNo, palletCode, cartonMark, countStatus, countedAt, items, null, null, null, null); + } + } public record PackingDetail(String sourceCartonMark, String targetCartonMark, String returnNo, String skuCode, long quantity, LocalDateTime createdAt) { } public record Photo(long fileId, String fileName, String contentType, long sizeBytes) { } @@ -40,18 +46,19 @@ public final class ReturnOrderResponses { public record Receipt(String receiptNo, String receiptBatchNo, String palletCode, String trackingNo, String startedBy, long receivedQuantity, String operatorName, LocalDateTime signedAt, String unitType, String unitCode, long boxCount, List items, - String cartonMark, String printableHtml, List labels, boolean labelRepairRequired) { + String cartonMark, String printableHtml, List labels, boolean labelRepairRequired, + BigDecimal length, BigDecimal width, BigDecimal height, BigDecimal weight) { public Receipt(String receiptNo, String receiptBatchNo, String palletCode, String trackingNo, String startedBy, long receivedQuantity, String operatorName, LocalDateTime signedAt, String unitType, String unitCode, long boxCount, List items, String cartonMark, String printableHtml, List labels) { this(receiptNo, receiptBatchNo, palletCode, trackingNo, startedBy, receivedQuantity, operatorName, signedAt, - unitType, unitCode, boxCount, items, cartonMark, printableHtml, labels, false); + unitType, unitCode, boxCount, items, cartonMark, printableHtml, labels, false, null, null, null, null); } public Receipt(String receiptNo, String receiptBatchNo, String palletCode, String trackingNo, String startedBy, long receivedQuantity, String operatorName, LocalDateTime signedAt) { this(receiptNo, receiptBatchNo, palletCode, trackingNo, startedBy, receivedQuantity, operatorName, signedAt, - "PALLET", palletCode, 0, List.of(), null, null, List.of()); + "PALLET", palletCode, 0, List.of(), null, null, List.of(), false, null, null, null, null); } } public record CartonLabel(String cartonMark, String printableHtml) { } diff --git a/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/service/ReturnInventoryService.java b/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/service/ReturnInventoryService.java index 445fd8ce8..9720ffbe3 100644 --- a/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/service/ReturnInventoryService.java +++ b/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/service/ReturnInventoryService.java @@ -705,11 +705,13 @@ public class ReturnInventoryService { var task = read(snapshot.getResultJson(), new TypeReference() { }); if (!receipt.getReceiptNo().equals(task.receiptNo())) throw new IllegalStateException("箱内清点快照与签收单不一致"); return task.boxes().stream().map(box -> new ReturnOrderResponses.ReceiptCarton(receipt.getReceiptNo(), receipt.getPalletCode(), box.cartonMark(), "CONFIRMED", snapshot.getCreatedAt(), - box.items().stream().map(line -> new ReturnOrderResponses.ReceiptItem(line.skuCode(), line.productNameZh(), line.quantity(), 1)).toList())).toList(); + box.items().stream().map(line -> new ReturnOrderResponses.ReceiptItem(line.skuCode(), line.productNameZh(), line.quantity(), 1)).toList(), + box.length(), box.width(), box.height(), box.weight())).toList(); } // Never present provisional averages or subsequently changed inventory as receipt facts. return cartons.listReceipt(receipt.getId()).stream().map(box -> new ReturnOrderResponses.ReceiptCarton(receipt.getReceiptNo(), receipt.getPalletCode(), box.getCartonMark(), - "PENDING".equals(box.getCountStatus()) ? "PENDING" : "UNRECORDED", box.getCountedAt(), List.of())).toList(); + "PENDING".equals(box.getCountStatus()) ? "PENDING" : "UNRECORDED", box.getCountedAt(), List.of(), + box.getLength(), box.getWidth(), box.getHeight(), box.getWeight())).toList(); } @Transactional(readOnly = true) diff --git a/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/service/ReturnReceiptService.java b/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/service/ReturnReceiptService.java index 21f8be528..fe3dd0832 100644 --- a/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/service/ReturnReceiptService.java +++ b/lastleg-service/src/main/java/com/baiyue/lastleg/returnreceipt/service/ReturnReceiptService.java @@ -286,7 +286,7 @@ public class ReturnReceiptService { String printableHtml = combineLabels(labels); return new ReturnOrderResponses.Receipt(receipt.getReceiptNo(), receipt.getReceiptBatchNo(), receipt.getPalletCode(), receipt.getTrackingNo(), receipt.getBoundBy(), value(receipt.getReceivedQuantity()), receipt.getOperatorName(), receipt.getSignedAt(), receipt.getUnitType(), receipt.getUnitCode(), boxes, lines, cartonMark, printableHtml, labels, - inventory.receiptRepairRequired(receipt, boxes)); + inventory.receiptRepairRequired(receipt, boxes), receipt.getLength(), receipt.getWidth(), receipt.getHeight(), receipt.getWeight()); }).toList(); Map> palletItems = new LinkedHashMap<>(); Map palletTypes = new LinkedHashMap<>();