From 85f8eed3fa9f52a68dff30ea8bdee00fbc1d5938 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期一, 22 十二月 2025 12:48:14 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java | 8 --
src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java | 16 ++--
src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java | 143 +++++++++++++++++++++++------------------------
3 files changed, 81 insertions(+), 86 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java
index d9ae35d..8a9fe5c 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java
@@ -35,7 +35,7 @@
@Value("${erp.switch.ReviewOrderSwitch}")
private boolean ReviewOrderSwitch;
- @Scheduled(cron = "0/20 * * * * ? ")
+// @Scheduled(cron = "0/20 * * * * ? ")
@Async("orderThreadPool")
public void completeAndReport(){
if(!ReviewOrderSwitch){
@@ -47,7 +47,7 @@
List<Order> orders = orderService.selectComplete();
if(orders.size() > 0){
for (Order order : orders) {
- if(order.getDocType() == 3 || order.getDocType() == 16 || order.getPayType()!=1){ //璧版柊澧炴彁浜ゅ鏍告祦绋�
+ if((order.getDocType() == 3 || order.getDocType() == 16) && order.getPayType() == null){ //璧版柊澧炴彁浜ゅ鏍告祦绋�
ReturnT<String> result = saveOrderSyncHandler.start(order);//4宸插畬鎴�
if (!result.isSuccess()) {
log.error("鍗曟嵁[orderNo={}]鏂板淇濆瓨鑷砮rp澶辫触", order.getOrderNo());
@@ -62,10 +62,6 @@
if(orderDetlPakinService.morpt(order.getSalesman())){
order.setSettle(11L); //yu/cheng/dan/deng/dai/chu/ku/dan
orderService.updateById(order);
-// ReturnT<String> result = saveOrderSyncHandler.start(order1);//4宸插畬鎴恏ui/bao/dan
-// if (!result.isSuccess()) {
-// log.error("鍗曟嵁[orderNo={}]鏂板淇濆瓨鑷砮rp澶辫触", order.getOrderNo());
-// }
}
}
else{
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 51534e4..fbe8310 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
@@ -558,6 +558,7 @@
callApiLogSaveOrder(order,kingDeeUtilType, "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"+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 +580,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 +736,7 @@
"鍟嗗搧涓嶅瓨鍦細" + matnr, false);
continue;
}
+ Double erpAnfme = anfme*mat.getSafeQty();
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
@@ -754,7 +756,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 +903,7 @@
"鍟嗗搧涓嶅瓨鍦細" + matnr, false);
continue;
}
+ Double erpAnfme = anfme*mat.getSafeQty();
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
@@ -920,7 +923,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 +1212,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,7 +1229,7 @@
"鐗╂枡妗f涓嶅瓨鍦細" + matnr, false);
continue;
}
- anfmeBox = anfme/mat.getSafeQty();
+ anfmeBox = Math.floor(anfme / mat.getSafeQty());
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
@@ -1238,40 +1245,36 @@
// supp = locSupp.getOwner();
// }
// ========= 淇濆瓨鏄庣粏 =========
- try{
- OrderDetl orderDetl = new OrderDetl();
- orderDetl.sync(mat);
- orderDetl.setThreeCode(detlId);
- orderDetl.setLineNumber(seq);
- orderDetl.setAnfme(anfmeBox);
- orderDetl.setErpAnfme(anfme);
- orderDetl.setOrderId(order.getId());
- orderDetl.setOrderNo(order.getOrderNo());
- orderDetl.setSupp(supp);
- orderDetl.setSuppCode(suppCode);
- orderDetl.setSku(matnr);
- orderDetl.setStandby1(s1);
- orderDetl.setStandby2(s2);
- orderDetl.setStandby3(s3);
- orderDetl.setBoxType1(owner);
- orderDetl.setBoxType2(ownerUuid);
- orderDetl.setBoxType3(pOrderNo);
- orderDetl.setMemo(memo);
- orderDetl.setVolume(totalVolume);
- orderDetl.setSafeQty(totalNumItems);
- orderDetl.setManu(warehouse);
- orderDetl.setCreateBy(9527L);
- orderDetl.setCreateTime(new Date());
- orderDetl.setUpdateBy(9527L);
- orderDetl.setUpdateTime(new Date());
- orderDetl.setStatus(1);
- orderDetl.setQty(0.0D);
+ OrderDetl orderDetl = new OrderDetl();
+ orderDetl.sync(mat);
+ orderDetl.setThreeCode(detlId);
+ orderDetl.setLineNumber(seq);
+ orderDetl.setAnfme(anfmeBox);
+ orderDetl.setErpAnfme(anfme);
+ orderDetl.setOrderId(order.getId());
+ orderDetl.setOrderNo(order.getOrderNo());
+ orderDetl.setSupp(supp);
+ orderDetl.setSuppCode(suppCode);
+ orderDetl.setSku(matnr);
+ orderDetl.setStandby1(s1);
+ orderDetl.setStandby2(s2);
+ orderDetl.setStandby3(s3);
+ orderDetl.setBoxType1(owner);
+ orderDetl.setBoxType2(ownerUuid);
+ orderDetl.setBoxType3(pOrderNo);
+ orderDetl.setMemo(memo);
+ orderDetl.setVolume(totalVolume);
+ orderDetl.setSafeQty(totalNumItems);
+ orderDetl.setManu(warehouse);
+ orderDetl.setCreateBy(9527L);
+ orderDetl.setCreateTime(new Date());
+ orderDetl.setUpdateBy(9527L);
+ orderDetl.setUpdateTime(new Date());
+ orderDetl.setStatus(1);
+ orderDetl.setQty(0.0D);
- orderDetlService.insert(orderDetl);
- } catch (Exception e) {
- // 濡傛灉鍙戠敓寮傚父锛岃褰曡缁嗙殑閿欒淇℃伅
- callApiLogSaveOrder(order, kingDeeUtilType, "淇濆瓨鏄庣粏澶辫触锛岀墿鏂欙細" + matnr + " 閿欒淇℃伅锛�" + e.getMessage(), false);
- }
+ orderDetlService.insert(orderDetl);
+
}
}
@@ -1395,7 +1398,7 @@
"鍟嗗搧涓嶅瓨鍦細" + matnr, false);
continue;
}
- anfmeBox = anfme/mat.getSafeQty();
+ anfmeBox = Math.floor(anfme / mat.getSafeQty());
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
@@ -1410,40 +1413,36 @@
supp = locSupp.getOwner();
}
// ========= 淇濆瓨鏄庣粏 =========
- try{
- OrderDetl orderDetl = new OrderDetl();
- orderDetl.sync(mat);
- orderDetl.setThreeCode(detlId);
- orderDetl.setLineNumber(seq);
- orderDetl.setAnfme(anfmeBox);
- orderDetl.setErpAnfme(anfme);
- orderDetl.setOrderId(order.getId());
- orderDetl.setOrderNo(order.getOrderNo());
- orderDetl.setSupp(supp);
- orderDetl.setSuppCode(suppCode);
- orderDetl.setSku(matnr);
- orderDetl.setStandby1(s1);
- orderDetl.setStandby2(s2);
- orderDetl.setStandby3(s3);
- orderDetl.setBoxType1(owner);
- orderDetl.setBoxType2(ownerUuid);
- orderDetl.setBoxType3(pOrderNo);
- orderDetl.setMemo(memo);
- orderDetl.setVolume(totalVolume);
- orderDetl.setSafeQty(totalNumItems);
- orderDetl.setManu(warehouse);
- orderDetl.setCreateBy(9527L);
- orderDetl.setCreateTime(new Date());
- orderDetl.setUpdateBy(9527L);
- orderDetl.setUpdateTime(new Date());
- orderDetl.setStatus(1);
- orderDetl.setQty(0.0D);
- orderDetlService.insert(orderDetl);
- } catch (Exception e) {
- // 濡傛灉鍙戠敓寮傚父锛岃褰曡缁嗙殑閿欒淇℃伅
- callApiLogSaveOrder(order, kingDeeUtilType, "淇濆瓨鏄庣粏澶辫触锛岀墿鏂欙細" + matnr + " 閿欒淇℃伅锛�" + e.getMessage(), false);
- }
+ OrderDetl orderDetl = new OrderDetl();
+ orderDetl.sync(mat);
+ orderDetl.setThreeCode(detlId);
+ orderDetl.setLineNumber(seq);
+ orderDetl.setAnfme(anfmeBox);
+ orderDetl.setErpAnfme(anfme);
+ orderDetl.setOrderId(order.getId());
+ orderDetl.setOrderNo(order.getOrderNo());
+ orderDetl.setSupp(supp);
+ orderDetl.setSuppCode(suppCode);
+ orderDetl.setSku(matnr);
+ orderDetl.setStandby1(s1);
+ orderDetl.setStandby2(s2);
+ orderDetl.setStandby3(s3);
+ orderDetl.setBoxType1(owner);
+ orderDetl.setBoxType2(ownerUuid);
+ orderDetl.setBoxType3(pOrderNo);
+ orderDetl.setMemo(memo);
+ orderDetl.setVolume(totalVolume);
+ orderDetl.setSafeQty(totalNumItems);
+ orderDetl.setManu(warehouse);
+ orderDetl.setCreateBy(9527L);
+ orderDetl.setCreateTime(new Date());
+ orderDetl.setUpdateBy(9527L);
+ orderDetl.setUpdateTime(new Date());
+ orderDetl.setStatus(1);
+ orderDetl.setQty(0.0D);
+
+ orderDetlService.insert(orderDetl);
}
}
}
@@ -1567,7 +1566,7 @@
"鍟嗗搧涓嶅瓨鍦細" + matnr, false);
continue;
}
- anfmeBox = anfme/mat.getSafeQty();
+ anfmeBox = Math.floor(anfme / mat.getSafeQty());
// ========= 鏄庣粏鍘婚噸 =========
List<OrderDetl> orderDetls =
orderDetlService.selectByOrderId(order.getId());
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java
index 026457d..5334a08 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java
@@ -112,7 +112,7 @@
}
Mat mat = matService.selectByMatnr(orderDetl.getMatnr());
Double qty = orderDetl.getQty()*mat.getSafeQty();
- Double qtytotal = orderDetl.getAnfme()*mat.getSafeQty();
+// Double qtytotal = orderDetl.getAnfme()*mat.getSafeQty();
// JSONArray idArr = new JSONArray();
// idArr.add(0L);
// 鍒涘缓 billentry_lk 瀵硅薄
@@ -122,7 +122,7 @@
.fluentPut("billentry_lk_stableid", 677270092232273922L)
.fluentPut("billentry_lk_sbillid", Long.parseLong(order.getItemName())) // 涓诲崟ID
.fluentPut("billentry_lk_sid", Long.parseLong(orderDetl.getThreeCode())) // 鏄庣粏ID
- .fluentPut("billentry_lk_baseqty_old", qtytotal) // ERP鏁伴噺
+ .fluentPut("billentry_lk_baseqty_old", orderDetl.getAnfme()) // ERP鏁伴噺
.fluentPut("billentry_lk_baseqty", qty); // 浣滀笟鏁伴噺
billentryLkArray.add(billentryLk);
// 鍒涘缓 billentry 瀵硅薄锛屽~鍏呯己澶辩殑瀛楁
@@ -171,7 +171,7 @@
}
Mat mat = matService.selectByMatnr(orderDetl.getMatnr());
Double qty = orderDetl.getQty()*mat.getSafeQty();
- Double qtytotal = orderDetl.getAnfme()*mat.getSafeQty();
+// Double qtytotal = orderDetl.getAnfme()*mat.getSafeQty();
// JSONArray idArr = new JSONArray();
// idArr.add(0L);
// 鍒涘缓 billentry_lk 瀵硅薄
@@ -181,7 +181,7 @@
.fluentPut("billentry_lk_stableid", 677270092232273922L)
.fluentPut("billentry_lk_sbillid", Long.parseLong(order.getItemName())) // 涓诲崟ID
.fluentPut("billentry_lk_sid", Long.parseLong(orderDetl.getThreeCode())) // 鏄庣粏ID
- .fluentPut("billentry_lk_baseqty_old", qtytotal) // ERP鏁伴噺
+ .fluentPut("billentry_lk_baseqty_old", orderDetl.getAnfme()) // ERP鏁伴噺
.fluentPut("billentry_lk_baseqty", qty); // 浣滀笟鏁伴噺
billentryLkArray1.add(billentryLk);
// 鍒涘缓 billentry 瀵硅薄锛屽~鍏呯己澶辩殑瀛楁
@@ -244,10 +244,10 @@
.fluentPut("billno", order.getOrderNo())
// .fluentPut("bookdate", sdf1.format(nowMis))
.fluentPut("biztime", sdf1.format(nowMis))
- .fluentPut("biztype_number", "354")
- .fluentPut("billtype_number", "im_OtherInBill_STD_BT_S")
- .fluentPut("org_number", "BU-00001")
- .fluentPut("invscheme_number", "354")
+// .fluentPut("biztype_number", "354")
+// .fluentPut("billtype_number", "im_OtherInBill_STD_BT_S")
+// .fluentPut("org_number", "BU-00001")
+// .fluentPut("invscheme_number", "354")
.fluentPut("billentry", billentryArray)
)));
case "STK_MisDelivery": // 鍏朵粬鍑哄簱鍗�
--
Gitblit v1.9.1