From 722fefac5d86bf9ddc4f2e252292cff0db8343cb Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期四, 05 三月 2026 16:32:12 +0800
Subject: [PATCH] 物料编码和采购单号组合去重

---
 src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java |   31 ++++++++++++++++++++++++-------
 1 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
index 4eb43f1..3fef8ef 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
@@ -767,7 +767,10 @@
                                         orderDetlService.selectByOrderId(order.getId());
 
                                 boolean exists = orderDetls.stream()
-                                        .anyMatch(o -> o.getMatnr().equals(matnr));
+                                        .anyMatch(o ->
+                                                o.getMatnr().equals(matnr) &&
+                                                        o.getBoxType3().equals(pOrderNo)
+                                        );
                                 if (exists) continue;
 //                                // ========= 渚涘簲鍟� =========
                                 String supp = null;
@@ -939,7 +942,10 @@
                                         orderDetlService.selectByOrderId(order.getId());
 
                                 boolean exists = orderDetls.stream()
-                                        .anyMatch(o -> o.getMatnr().equals(matnr));
+                                        .anyMatch(o ->
+                                                o.getMatnr().equals(matnr) &&
+                                                        o.getBoxType3().equals(pOrderNo)
+                                        );
                                 if (exists) continue;
 //                                // ========= 渚涘簲鍟� =========
                                 String supp = null;
@@ -1104,7 +1110,10 @@
                                         orderDetlService.selectByOrderId(order.getId());
 
                                 boolean exists = orderDetls.stream()
-                                        .anyMatch(o -> o.getMatnr().equals(matnr));
+                                        .anyMatch(o ->
+                                                o.getMatnr().equals(matnr) &&
+                                                        o.getBoxType3().equals(pOrderNo)
+                                        );
                                 if (exists) continue;
 //                                // ========= 渚涘簲鍟� =========
                                 String supp = null;
@@ -1271,7 +1280,10 @@
 
 
                                 boolean exists = orderDetls.stream()
-                                        .anyMatch(o -> o.getMatnr().equals(matnr));
+                                        .anyMatch(o ->
+                                                o.getMatnr().equals(matnr) &&
+                                                        o.getBoxType3().equals(pOrderNo)
+                                        );
                                 if (exists) continue;
 //                                // ========= 渚涘簲鍟� =========
                                 String supp = null;
@@ -1444,7 +1456,10 @@
                                         orderDetlService.selectByOrderId(order.getId());
 
                                 boolean exists = orderDetls.stream()
-                                        .anyMatch(o -> o.getMatnr().equals(matnr));
+                                        .anyMatch(o ->
+                                                o.getMatnr().equals(matnr) &&
+                                                        o.getBoxType3().equals(pOrderNo)
+                                        );
                                 if (exists) continue;
 //                                // ========= 渚涘簲鍟� =========
                                 String supp = null;
@@ -1628,9 +1643,11 @@
                                 // ========= 鏄庣粏鍘婚噸 =========
                                 List<OrderDetl> orderDetls =
                                         orderDetlService.selectByOrderId(order.getId());
-
                                 boolean exists = orderDetls.stream()
-                                        .anyMatch(o -> o.getMatnr().equals(matnr));
+                                        .anyMatch(o ->
+                                                o.getMatnr().equals(matnr) &&
+                                                        o.getBoxType3().equals(pOrderNo)
+                                        );
                                 if (exists) continue;
 //                                // ========= 渚涘簲鍟� =========
                                 String supp = null;

--
Gitblit v1.9.1