From fffcf8f632eb551f11d018184547ce01dcc4907f Mon Sep 17 00:00:00 2001
From: 野心家 <1051256694@qq.com>
Date: 星期一, 23 十二月 2024 08:13:58 +0800
Subject: [PATCH] 完善erp上报流程

---
 src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java |   55 +++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 37 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
index 5a4692d..48b8312 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
@@ -4,10 +4,14 @@
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.zy.asrs.entity.DocType;
 import com.zy.asrs.entity.Order;
+import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.entity.WrkDetl;
+import com.zy.asrs.mapper.OrderDetlMapper;
 import com.zy.asrs.service.ApiLogService;
 import com.zy.asrs.service.DocTypeService;
 import com.zy.asrs.service.OrderService;
@@ -21,9 +25,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Set;
+import java.util.*;
 
 /**
  * Created by vincent on 2023/10/21
@@ -47,6 +49,8 @@
     private DocTypeService docTypeService;
     @Autowired
     private LoginAuthenticationHandler loginAuthenticationHandler;
+    @Autowired
+    private OrderDetlMapper orderDetlMapper;
 
     @Transactional
     public ReturnT<String> start(Order order) {
@@ -60,11 +64,11 @@
 
         //鏉′欢鎷兼帴
         JSONObject dataJsonObject = new JSONObject();
-        dataJsonObject.put("Numbers",order.getOrderNo());
+        dataJsonObject.put("Numbers", "CGTL10124120003");
 
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("data", dataJsonObject);
-        jsonObject.put("FormId",kingDeeUtilType.formId);
+        jsonObject.put("FormId", kingDeeUtilType.ruleId);
         String add = jsonObject.toJSONString();
         //涓婃姤
         String response = "";
@@ -82,19 +86,33 @@
                     .doPost();
             JSONObject data = JSON.parseObject(response);
             Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess");
-            String bool1=IsSuccess.toString();
+            String bool1 = IsSuccess.toString();
 
-            if(bool1.equals("true")){
-                ObjectMapper objectMapper =  new ObjectMapper();
+            if (bool1.equals("true")) {
+                ObjectMapper objectMapper = new ObjectMapper();
                 JsonNode rootNode = objectMapper.readTree(response);
                 boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean();
-                log.info("瀹℃牳bool:"+bool);
-                //瀹℃牳瀹屾垚鍘熻鍗�6杞�7  7.瀹℃牳瀹屾垚
-                if(bool){
+                log.info("瀹℃牳bool:" + bool);
+                //瀹℃牳瀹屾垚鍘熻鍗�2杞�3  3.瀹℃牳瀹屾垚
+                if (bool) {
                     success = true;
-                    order.setSettle(10L);
+                    order.setMemo("3");//瀹℃牳瀹屾垚
                     order.setUpdateTime(new Date());
-                    orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
+
+
+                    //鍒ゆ柇璁㈠崟鏄惁宸茬粡鍏ㄩ儴鍋氬畬
+                    List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()));
+                    boolean complete = true;
+                    for (OrderDetl orderDetl : orderDetls) {
+                        if (orderDetl.getAnfme() > orderDetl.getQty()) {
+                            complete = false;
+                            break;
+                        }
+                    }
+                    if(complete){
+                      order.setSettle(8L);
+                    }
+                    orderService.update(order, new EntityWrapper<Order>().eq("order_no", order.getOrderNo()));
                 }
             }
         } catch (Exception e) {
@@ -105,8 +123,8 @@
             try {
                 // 淇濆瓨鎺ュ彛鏃ュ織
                 apiLogService.save(
-                        "瀹℃牳",
-                        URL+ outaddressAudit,
+                        " 瀹℃牳",
+                        URL + outaddressAudit,
                         null,
                         "127.0.0.1",
                         add,
@@ -119,6 +137,7 @@
         }
         return SUCCESS;
     }
+
     public static Object findValueByKey(JSONObject json, String key) {
         Set<String> keySet = json.keySet();
         for (String k : keySet) {
@@ -129,13 +148,13 @@
                 int size = ((JSONArray) v).size();
                 for (int i = 0; i <= size - 1; i++) {
                     Object result = findValueByKey((JSONObject) ((JSONArray) v).get(i), key);
-                    if (result != null){
+                    if (result != null) {
                         return result;
                     }
                 }
-            } else if (v instanceof JSONObject){
+            } else if (v instanceof JSONObject) {
                 Object result = findValueByKey((JSONObject) v, key);
-                if (result != null){
+                if (result != null) {
                     return result;
                 }
             }

--
Gitblit v1.9.1