啊鑫
2025-05-23 ad0f65d55969adf8bde9a6b4d11874bb4ba952e0
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();