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 | 37 ++++++++++++++++++++++++++++---------
1 files changed, 28 insertions(+), 9 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 322d2d6..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;
@@ -1580,6 +1595,7 @@
}
for (int k = 0; k < billEntryArray.size(); k++) {
JSONObject entry = billEntryArray.getJSONObject(k);
+ String memo = null;
String matnr = entry.getString("material_number"); //鐗╂枡缂栫爜锛屽唴閮⊿KU
Double anfmeBox = entry.getDouble("eap7_integerfield");//绠辨暟
Double anfme = entry.getDouble("completqty");//涓暟
@@ -1587,12 +1603,13 @@
Double totalVolume = entry.getDouble("eap7_decimalfield2");//鎬讳綋绉�
String warehouse = entry.getString("warehouse_number");//浠撳簱缂栫爜
if(kingDeeUtilType.formId.equals("OUI_RECEIVEBIll")){
-
+ memo = entry.getString("eap7_textfield3"); //澶囨敞锛堣嫳鏂囨弿杩帮級
+ }else{
+ memo = entry.getString("eap7_textfield5");
}
String pOrderNo = entry.getString("eap7_textfield");//閲囪喘鍗曞彿
String s3 = entry.getString("eap7_textfield2");//瀹㈡埛sku锛堝鎴风紪鍙凤級
String s2 = entry.getString("eap7_textfield1"); //鏉$爜UPC
- String memo = entry.getString("eap7_textfield5"); //澶囨敞锛堣嫳鏂囨弿杩帮級
String s1 = entry.getString("eap7_textfield4"); //瀹㈡埛PO
String detlId = entry.getString("id"); //鏄庣粏id
Long seq = entry.getLong("seq"); //鍒嗗綍琛屽彿
@@ -1626,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