From b8772bdfaff8d6f2bcd2ca587a7af27ceeb98276 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期二, 04 十一月 2025 14:18:03 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java |   60 +++++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 43 insertions(+), 17 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 c98e298..4a551bc 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
@@ -12,6 +12,7 @@
 import com.zy.asrs.service.*;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.utils.OrderInAndOutUtil;
 import com.zy.erp.kingdee.entity.param.InFormIdParam;
 import com.zy.erp.kingdee.enums.KingDeeUtilType;
 import com.zy.common.utils.HttpHandler;
@@ -25,6 +26,7 @@
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.HashMap;
+import java.util.List;
 
 @Service
 @Slf4j
@@ -60,6 +62,9 @@
 
     @Autowired
     private SnowflakeIdWorker snowflakeIdWorker;
+
+    @Autowired
+    private LocOwnerService locOwnerService;
 
     @Transactional
     public synchronized ReturnT<String> start() {
@@ -171,7 +176,14 @@
                         //鏈�鏂版姄鍙栨椂闂�
                         Date jsonDate = KingDeeUtil.KingDeeDate(jsonArray.get(1).toString());
                         docType.setCreateTime(jsonDate);
-                        Order order = orderService.selectByNo(jsonArray.get(0).toString());
+                        Order order = OrderInAndOutUtil.selectByNo(kingDeeUtilType.pakIn == 1, jsonArray.get(0).toString());
+//                        Order order = orderService.selectByNo(jsonArray.get(0).toString());
+                        LocOwner locOwner = null;
+                        if (!Cools.isEmpty(1)) {
+                            locOwner = locOwnerService.selectById(1);
+                        } else {
+                            locOwner = locOwnerService.selectById(1);
+                        }
                         if (Cools.isEmpty(order)) {
                             Date now = new Date();
                             // 鍗曟嵁涓绘。
@@ -181,12 +193,12 @@
                                     DateUtils.convert(now),    // 鍗曟嵁鏃ユ湡
                                     docType.getDocId(),    // 鍗曟嵁绫诲瀷
                                     null,    // 椤圭洰缂栧彿
-                                    null,    //
+                                    "1",    //椤圭洰鍚嶇О 瀹㈡埛PO鍙�
                                     null,    // 璋冩嫧椤圭洰缂栧彿
                                     null,    // 鍒濆绁ㄦ嵁鍙�
                                     null,    // 绁ㄦ嵁鍙�
-                                    null,    // 瀹㈡埛缂栧彿
-                                    null,    // 瀹㈡埛
+                                    locOwner.getOwnerUuid(),    // 瀹㈡埛缂栧彿
+                                    locOwner.getOwner(),    // 瀹㈡埛
                                     null,    // 鑱旂郴鏂瑰紡
                                     null,    // 鎿嶄綔浜哄憳
                                     null,    // 鍚堣閲戦
@@ -211,14 +223,15 @@
                                     now,    // 淇敼鏃堕棿
                                     null    // 澶囨敞
                             );
+                             OrderInAndOutUtil.insertOrder(kingDeeUtilType.pakIn == 1, order);
 
-                            if (!orderService.insert(order)) {
-                                if (!jsonDate.equals(docType.getCreateTime())){
-                                    callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"+order, false);
-                                }
-                                continue;
-//                                throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
-                            }
+//                            if (!orderService.insert(order)) {
+//                                if (!jsonDate.equals(docType.getCreateTime())){
+//                                    callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"+order, false);
+//                                }
+//                                continue;
+////                                throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
+//                            }
                         }
                         //鐗╂枡缂栫爜
                         Mat mat = matService.selectByMatnr(jsonArray.get(2).toString());
@@ -228,8 +241,20 @@
                             }
                             continue;
                         }
-                        OrderDetl orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", jsonArray.get(0).toString()).eq("matnr", jsonArray.get(2).toString()));
-                        if (!Cools.isEmpty(orderDetl1)) {
+//                        OrderDetl orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", jsonArray.get(0).toString()).eq("matnr", jsonArray.get(2).toString()));
+//                        if (!Cools.isEmpty(orderDetl1)) {
+//                            continue;
+//                        }
+                        Order order1 = OrderInAndOutUtil.selectByNo(kingDeeUtilType.pakIn == 1, jsonArray.get(0).toString());
+                        List<OrderDetl> orderDetls = OrderInAndOutUtil.selectByOrderId(kingDeeUtilType.pakIn == 1, order1.getId());
+                        boolean sign = false;
+                        for (OrderDetl orderDetl : orderDetls){
+                            if (orderDetl.getMatnr().equals( jsonArray.get(2).toString())){
+                                sign = true;
+                                break;
+                            }
+                        }
+                        if (sign){
                             continue;
                         }
                         OrderDetl orderDetl = new OrderDetl();
@@ -244,10 +269,11 @@
                         orderDetl.setUpdateTime(new Date());
                         orderDetl.setStatus(1);
                         orderDetl.setQty(0.0D);
-                        if (!orderDetlService.insert(orderDetl)) {
-                            callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�!璁㈠崟鍙凤細"+order.getOrderNo(), false);
-//                            throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
-                        }
+//                        if (!orderDetlService.insert(orderDetl)) {
+//                            callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�!璁㈠崟鍙凤細"+order.getOrderNo(), false);
+////                            throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
+//                        }
+                        OrderInAndOutUtil.insertOrderDetl(kingDeeUtilType.pakIn == 1,order,orderDetl);
                     }
                     docTypeService.updateById(docType);
                 }

--
Gitblit v1.9.1