From dff0470bf77f3fa525a9d1f1f761dd9609072205 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期三, 07 五月 2025 12:07:31 +0800
Subject: [PATCH] 11

---
 src/main/java/com/gs/xiaomi/service/XM104Service.java |   16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 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..fdb53d5 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());
 
@@ -114,6 +121,11 @@
         BizDocumentResult bizDocumentResult = soapApiService.callAndParse(DataAcquisitionConfiguration.XM104_URL, request);
 
         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) {
@@ -196,7 +208,7 @@
 
             }
 
-            deliveryMainService.callPdaReceiptBtn("閫佽揣鍗曠鏀禰BTNOK[PL017[" + etHeader.getZzasn(), "");
+            //deliveryMainService.callPdaReceiptBtn("閫佽揣鍗曠鏀禰BTNOK[PL017[" + etHeader.getZzasn(), "");
         });
     }
 

--
Gitblit v1.9.3