From d953e40c7badd8be505d133ae1bb410e4024229f Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期四, 09 四月 2026 11:05:16 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java | 103 ++++++++++++++++++++++++++++++++-------------------
1 files changed, 65 insertions(+), 38 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 2ba70a1..3565412 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
@@ -336,7 +336,7 @@
if (mat.getUpdateTime().compareTo(modifyTime) != 0) {
// 鏇存柊瀛楁
if (!mat.getMaktx().equals(name)) mat.setMaktx(name);
- if (!mat.getMemo().equals(memo)) mat.setMemo(memo);
+ if (mat.getMemo() == null || !mat.getMemo().equals(memo)) mat.setMemo(memo);
if (mat.getWeight().compareTo(grossweight) != 0) mat.setWeight(grossweight);
if (mat.getUnits().compareTo(netweight) != 0) mat.setUnits(netweight);
if (mat.getSafeQty().compareTo(unit) != 0) mat.setSafeQty(unit);
@@ -489,14 +489,14 @@
JSONObject jsonObjectNew2 = rows.getJSONObject(i);
Order order = orderService.selectByNo(billNo);//妫�绱㈠崟鎹�
LocOwner locOwner = null;
- if (ownerUuid != null) {
- locOwner = locOwnerService.selectByUuid(ownerUuid);
- if (locOwner == null) {
- callApiLogSaveOwner(locOwner,kingDeeUtilType, "璐т富妫�绱㈠け璐ワ紝璇峰厛娣诲姞瀵瑰簲璐т富缂栧彿锛�"+ownerUuid+"鍚嶇О"+owner, false);continue;
- }
- } else{
- callApiLogSaveOwner(locOwner,kingDeeUtilType, "璐т富妫�绱㈠け璐ワ紝鏈煡璇㈠埌璐т富缂栧彿锛�", false);continue;
- }
+// if (ownerUuid != null) {
+// locOwner = locOwnerService.selectByUuid(ownerUuid);
+// if (locOwner == null) {
+// callApiLogSaveOwner(locOwner,kingDeeUtilType, "璐т富妫�绱㈠け璐ワ紝璇峰厛娣诲姞瀵瑰簲璐т富缂栧彿锛�"+ownerUuid+"鍚嶇О"+owner, false);continue;
+// }
+// } else{
+// callApiLogSaveOwner(locOwner,kingDeeUtilType, "璐т富妫�绱㈠け璐ワ紝鏈煡璇㈠埌璐т富缂栧彿锛�", false);continue;
+// }
if (Cools.isEmpty(order)) {
// 鍗曟嵁涓绘。
order = new Order(
@@ -557,6 +557,8 @@
String s1 = entry.getString("eap7_textfield7"); //瀹㈡埛PO
String detlId = entry.getString("id"); //鏄庣粏id
Long seq = entry.getLong("seq"); //鍒嗗綍琛屽彿
+ Double taxrate = entry.getDouble("taxrate");
+ Double priceandtax = entry.getDouble("priceandtax");
// String
if(anfme == 0){
callApiLogSaveOrder(order,kingDeeUtilType, "鍗曟嵁鏁伴噺寮傚父"+matnr, false);
@@ -575,17 +577,14 @@
}
Double erpAnfme = anfme*mat.getSafeQty();
Order order1 = orderService.selectByNo( billNo);
- List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order1.getId());
- boolean sign = false;
- for (OrderDetl orderDetl : orderDetls){
- if (orderDetl.getMatnr().equals(matnr)){
- sign = true;
- break;
- }
- }
- if (sign){
- continue;
- }
+ List<OrderDetl> orderDetls =
+ orderDetlService.selectByOrderId(order.getId());
+ boolean exists = orderDetls.stream()
+ .anyMatch(o ->
+ o.getMatnr().equals(matnr) &&
+ o.getBoxType3().equals(pOrderNo)
+ );
+ if (exists) continue;
LocSupp locSupp = null;
String supp =null;
locSupp = locSuppService.selectByUuid(suppCode);
@@ -616,6 +615,8 @@
orderDetl.setUpdateBy(9527L);
orderDetl.setUpdateTime(new Date());
orderDetl.setStatus(1);
+ orderDetl.setTaxrate(taxrate);
+ orderDetl.setPriceandtax(priceandtax);
orderDetl.setQty(0.0D);
orderDetlService.insert(orderDetl);
}
@@ -732,10 +733,10 @@
Double totalVolume = entry.getDouble("eap7_decimalfield2");//鎬讳綋绉�
String warehouse = entry.getString("warehouse_number");//浠撳簱缂栫爜
String pOrderNo = entry.getString("eap7_textfield3");//閲囪喘鍗曞彿
- String s3 = entry.getString("eap7_textfield4");//瀹㈡埛sku锛堝鎴风紪鍙凤級
- String s2 = entry.getString("eap7_textfield5"); //鏉$爜UPC
- String memo = entry.getString("eap7_textfield6"); //澶囨敞锛堣嫳鏂囨弿杩帮級
- String s1 = entry.getString("eap7_textfield7"); //瀹㈡埛PO
+ String s3 = entry.getString("eap7_textfield5");//瀹㈡埛sku锛堝鎴风紪鍙凤級
+ String s2 = entry.getString("eap7_textfield6"); //鏉$爜UPC
+ String memo = entry.getString("eap7_textfield7"); //澶囨敞锛堣嫳鏂囨弿杩帮級
+ String s1 = entry.getString("eap7_textfield4"); //瀹㈡埛PO
String detlId = entry.getString("id"); //鏄庣粏id
Long seq = entry.getLong("seq"); //鍒嗗綍琛屽彿
// String suppCode = entry.getString("supplier_number");
@@ -763,7 +764,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;
@@ -935,7 +939,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;
@@ -1100,7 +1107,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;
@@ -1267,7 +1277,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;
@@ -1440,7 +1453,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;
@@ -1576,19 +1592,26 @@
}
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 = 0.0;//绠辨暟
+ Double anfmeBox = entry.getDouble("eap7_integerfield");//绠辨暟
Double anfme = entry.getDouble("completqty");//涓暟
Double totalNumItems = entry.getDouble("eap7_decimalfield1");//鎬讳欢鏁�
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_textfield4");//瀹㈡埛sku锛堝鎴风紪鍙凤級
+ String s3 = entry.getString("eap7_textfield2");//瀹㈡埛sku锛堝鎴风紪鍙凤級
String s2 = entry.getString("eap7_textfield1"); //鏉$爜UPC
- String memo = entry.getString("eap7_textfield6"); //澶囨敞锛堣嫳鏂囨弿杩帮級
- String s1 = entry.getString("eap7_textfield7"); //瀹㈡埛PO
+ String s1 = entry.getString("eap7_textfield4"); //瀹㈡埛PO
String detlId = entry.getString("id"); //鏄庣粏id
Long seq = entry.getLong("seq"); //鍒嗗綍琛屽彿
+ Double taxrate = entry.getDouble("taxrate");
+ Double priceandtax = entry.getDouble("priceandtax");
String manubill = entry.getString("manufacturenun");
String manubillid = entry.getString("orderfid_id");
String manuentryid = null;
@@ -1617,9 +1640,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;
@@ -1643,9 +1668,9 @@
orderDetl.setSupp(supp);
orderDetl.setSuppCode(suppCode);
orderDetl.setSku(matnr);
- orderDetl.setStandby1(s1 != null? s1:"1");
- orderDetl.setStandby2(s2 != null? s2:"1");
- orderDetl.setStandby3(s3 != null? s3:"1");
+ orderDetl.setStandby1(Cools.isEmpty(s1) ? "1" : s1);
+ orderDetl.setStandby2(Cools.isEmpty(s2) ? "1" : s2);
+ orderDetl.setStandby3(Cools.isEmpty(s3) ? "1" : s3);
orderDetl.setBoxType1(owner);
orderDetl.setBoxType2(ownerUuid);
orderDetl.setBoxType3(pOrderNo);
@@ -1658,6 +1683,8 @@
orderDetl.setUpdateBy(9527L);
orderDetl.setUpdateTime(new Date());
orderDetl.setStatus(1);
+ orderDetl.setTaxrate(taxrate);
+ orderDetl.setPriceandtax(priceandtax);
orderDetl.setQty(0.0D);
orderDetlService.insert(orderDetl);
--
Gitblit v1.9.1