From b82947415a41faba9fe9dd400748f90a772d0c2b Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期三, 20 八月 2025 15:10:46 +0800
Subject: [PATCH] 条码接口测试
---
src/main/java/com/gs/xiaomi/service/XM104Service.java | 14 +++++++++++++-
1 files changed, 13 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/gs/xiaomi/service/XM104Service.java b/src/main/java/com/gs/xiaomi/service/XM104Service.java
index 8bb4e31..c02b80f 100644
--- a/src/main/java/com/gs/xiaomi/service/XM104Service.java
+++ b/src/main/java/com/gs/xiaomi/service/XM104Service.java
@@ -22,6 +22,11 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.function.Function;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
@Service
@Transactional(rollbackFor = Exception.class)
@@ -75,7 +80,9 @@
//鑾峰彇鎵�鏈夌殑ASN鍙�
List<EtHeader> etHeaders = deliveryNo.getEtHeaders();
- etHeaders.forEach(etHeader -> {
+ List<EtHeader> collect = etHeaders.stream().filter(distinctByKey(EtHeader::getZzasn)).collect(Collectors.toList());
+
+ collect.forEach(etHeader -> {
log.info("1.鑾峰彇鍒伴�佽揣鍗曞彿: {}", etHeader.getZzasn());
@@ -116,6 +123,11 @@
return bizDocumentResult;
}
+ private <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
+ Map<Object, Boolean> seen = new ConcurrentHashMap<>();
+ return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
+ }
+
private void setDeliveryMain(BizDocumentResult result) {
List<EtHeader> etHeaders = result.getEtHeaders();
--
Gitblit v1.9.3