From 4294a5c3db6a262053b4fb579897c9c45e205784 Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Thu, 10 Sep 2026 23:27:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../firstleg/service/LoadingCompletedOutboxService.java | 7 ++++++- .../service/LoadingCompletedOutboxServiceTest.java | 3 +++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/firstleg/src/main/java/com/baiyue/firstleg/service/LoadingCompletedOutboxService.java b/firstleg/src/main/java/com/baiyue/firstleg/service/LoadingCompletedOutboxService.java index b8765e06b..06296b222 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/service/LoadingCompletedOutboxService.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/service/LoadingCompletedOutboxService.java @@ -372,11 +372,16 @@ public class LoadingCompletedOutboxService { + "|" + value.getActualSkuQuantity()).collect(java.util.stream.Collectors.joining("\n")); int fragments = (int) sorted.stream().map(PalletRow::getAccountId).distinct().count(); result.put(palletNo, new PalletManifest(1, sorted.size(), fragments, - EventPayloadHash.sha256(canonical.getBytes(StandardCharsets.UTF_8)))); + manifestHash(canonical))); }); return result; } + private String manifestHash(String canonical) { + String value = EventPayloadHash.sha256(canonical.getBytes(StandardCharsets.UTF_8)); + return value.substring("sha256:".length()); + } + private static boolean dropship(String value) { return "ONE_CLICK_DROPSHIP".equals(value); } diff --git a/firstleg/src/test/java/com/baiyue/firstleg/service/LoadingCompletedOutboxServiceTest.java b/firstleg/src/test/java/com/baiyue/firstleg/service/LoadingCompletedOutboxServiceTest.java index 07ce90b3b..09ca1e1d2 100644 --- a/firstleg/src/test/java/com/baiyue/firstleg/service/LoadingCompletedOutboxServiceTest.java +++ b/firstleg/src/test/java/com/baiyue/firstleg/service/LoadingCompletedOutboxServiceTest.java @@ -362,6 +362,9 @@ class LoadingCompletedOutboxServiceTest { .isEqualTo("BOX-A2"); assertThat(event.payload().at("/orders/0/pallets/1/skuPackages/0/cartonMarks/0").asText()) .isEqualTo("BOX-A1"); + assertThat(event.payload().at("/orders/0/pallets/0/manifestHash").asText()) + .matches("[0-9a-f]{64}") + .doesNotStartWith("sha256:"); } @Test