From 4881f66b288c535c3b9da41ee07c9609bacb8481 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期一, 22 十二月 2025 17:01:49 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java | 52 ++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 44 insertions(+), 8 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 bb0380e..ef2d311 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
@@ -263,7 +263,7 @@
JSONArray data = jsonResponse.getJSONObject("data").getJSONArray("rows");
if(data.size()<=0) continue;
//鍟嗗搧妗f鍚屾
- if (kingDeeUtilType.formId.equals("BD_MATERIAL")) {
+ if(kingDeeUtilType.formId.equals("BD_MATERIAL")) {
Tag tag = tagService.selectByName("鍏ㄩ儴", 1);
// 澶勭悊鍒嗛〉锛氭牴鎹繑鍥炵殑totalCount鍜宲ageSize璁$畻椤垫暟
int pageSize = jsonResponse.getJSONObject("data").getIntValue("pageSize");
@@ -558,6 +558,12 @@
callApiLogSaveOrder(order,kingDeeUtilType, "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"+matnr, false);
continue;
}
+ if (mat.getSafeQty() == null || mat.getSafeQty() == 0) {
+ callApiLogSaveOrder(order, kingDeeUtilType,
+ "妗f绠辨暟閲忓紓甯革細" + matnr, false);
+ continue;
+ }
+ Double erpAnfme = anfme*mat.getSafeQty();
Order order1 = orderService.selectByNo( billNo);
List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order1.getId());
boolean sign = false;
@@ -579,7 +585,7 @@
orderDetl.setThreeCode(detlId);//ERP鏄庣粏id
orderDetl.setLineNumber(seq);//鍒嗗綍琛屽彿
orderDetl.setAnfme(anfme);//鎬荤鏁�
- orderDetl.setErpAnfme(anfme);//erp鏁版嵁
+ orderDetl.setErpAnfme(erpAnfme);//erp鏁版嵁
orderDetl.setOrderId(order.getId());
orderDetl.setOrderNo(order.getOrderNo());//琛ㄥご鍗曟嵁
orderDetl.setSupp(supp);//渚涘簲鍟嗗悕绉帮紙璐ф簮锛�
@@ -735,6 +741,12 @@
"鍟嗗搧涓嶅瓨鍦細" + matnr, false);
continue;
}
+ if (mat.getSafeQty() == null || mat.getSafeQty() == 0) {
+ callApiLogSaveOrder(order, kingDeeUtilType,
+ "妗f绠辨暟閲忓紓甯革細" + matnr, false);
+ continue;
+ }
+ Double erpAnfme = anfme*mat.getSafeQty();
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
@@ -754,7 +766,7 @@
orderDetl.setThreeCode(detlId);
orderDetl.setLineNumber(seq);
orderDetl.setAnfme(anfme);
- orderDetl.setErpAnfme(anfme);
+ orderDetl.setErpAnfme(erpAnfme);
orderDetl.setOrderId(order.getId());
orderDetl.setOrderNo(order.getOrderNo());
orderDetl.setSupp(supp);
@@ -901,6 +913,12 @@
"鍟嗗搧涓嶅瓨鍦細" + matnr, false);
continue;
}
+ if (mat.getSafeQty() == null || mat.getSafeQty() == 0) {
+ callApiLogSaveOrder(order, kingDeeUtilType,
+ "妗f绠辨暟閲忓紓甯革細" + matnr, false);
+ continue;
+ }
+ Double erpAnfme = anfme*mat.getSafeQty();
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
@@ -920,7 +938,7 @@
orderDetl.setThreeCode(detlId);
orderDetl.setLineNumber(seq);
orderDetl.setAnfme(anfme);
- orderDetl.setErpAnfme(anfme);
+ orderDetl.setErpAnfme(erpAnfme);
orderDetl.setOrderId(order.getId());
orderDetl.setOrderNo(order.getOrderNo());
orderDetl.setSupp(supp);
@@ -1209,6 +1227,10 @@
String detlId = entry.getString("id"); //鏄庣粏id
Long seq = entry.getLong("seq"); //鍒嗗綍琛屽彿
// String suppCode = entry.getString("supplier_number");
+ if(anfme == 0){
+ callApiLogSaveOrder(order,kingDeeUtilType, "鍗曟嵁鏁伴噺寮傚父"+matnr, false);
+ continue;
+ }
String suppCode = null;
if (anfme == null || anfme == 0) {
callApiLogSaveOrder(order, kingDeeUtilType,
@@ -1222,10 +1244,16 @@
"鐗╂枡妗f涓嶅瓨鍦細" + matnr, false);
continue;
}
- anfmeBox = anfme/mat.getSafeQty();
+ if (mat.getSafeQty() == null || mat.getSafeQty() == 0) {
+ callApiLogSaveOrder(order, kingDeeUtilType,
+ "妗f绠辨暟閲忓紓甯革細" + matnr, false);
+ continue;
+ }
+ anfmeBox = Math.floor(anfme / mat.getSafeQty());
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
+
boolean exists = orderDetls.stream()
.anyMatch(o -> o.getMatnr().equals(matnr));
@@ -1266,6 +1294,7 @@
orderDetl.setQty(0.0D);
orderDetlService.insert(orderDetl);
+
}
}
@@ -1389,7 +1418,12 @@
"鍟嗗搧涓嶅瓨鍦細" + matnr, false);
continue;
}
- anfmeBox = anfme/mat.getSafeQty();
+ if (mat.getSafeQty() == null || mat.getSafeQty() == 0) {
+ callApiLogSaveOrder(order, kingDeeUtilType,
+ "妗f绠辨暟閲忓紓甯革細" + matnr, false);
+ continue;
+ }
+ anfmeBox = Math.floor(anfme / mat.getSafeQty());
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
@@ -1404,6 +1438,7 @@
supp = locSupp.getOwner();
}
// ========= 淇濆瓨鏄庣粏 =========
+
OrderDetl orderDetl = new OrderDetl();
orderDetl.sync(mat);
orderDetl.setThreeCode(detlId);
@@ -1467,6 +1502,7 @@
String owner = "鍜屽緱绉戞妧";
String ownerUuid = "BU-00001";
String orderId = jsonObjectNew.getString("id");
+ String manuBill = jsonObjectNew.getString("manufacturenun");
// ========= 璐т富鏍¢獙 =========
LocOwner locOwner = locOwnerService.selectByUuid(ownerUuid);
// if (locOwner == null) {
@@ -1487,7 +1523,7 @@
null, // 椤圭洰缂栧彿
orderId, //鏀舵枡鍗昳d
null, // 璋冩嫧椤圭洰缂栧彿
- null, // 鍒濆绁ㄦ嵁鍙�
+ manuBill, // 鍒濆绁ㄦ嵁鍙�
null, // 绁ㄦ嵁鍙�
null, // 椤圭洰id
owner, // 璐т富
@@ -1556,7 +1592,7 @@
"鍟嗗搧涓嶅瓨鍦細" + matnr, false);
continue;
}
- anfmeBox = anfme/mat.getSafeQty();
+ anfmeBox = Math.floor(anfme / mat.getSafeQty());
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
--
Gitblit v1.9.1