From 1216681441c6275aa2779c961e3c83f5d8d3df02 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期四, 22 五月 2025 16:13:42 +0800
Subject: [PATCH] 接口编写

---
 src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java |  188 ++++++++++++++++++++++++++++------------------
 1 files changed, 115 insertions(+), 73 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
index b82f56d..a522452 100644
--- a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
@@ -12,6 +12,7 @@
 import com.zy.asrs.service.ReportToThirdService;
 import com.zy.nc.SendUtil;
 import com.zy.nc.entity.NccCgCgdhdWms;
+import com.zy.nc.entity.NccSaleDbddWms;
 import com.zy.nc.entity.NccSaleXsfhmxWms;
 import com.zy.nc.util.NcResultMessage;
 import com.zy.nc.vo.*;
@@ -44,14 +45,27 @@
     @Value("${NYNC.saveRefDelivery}")
     private String saveRefDelivery;
 
+    @Value("${NYNC.saveRefWhsTrans}")
+    private String saveRefWhsTrans;
+
+    @Value("${NYNC.purchasein}")
+    private String purchasein;
+
+    @Value("${NYNC.whstrans}")
+    private String whstrans;
+
+    @Value("${NYNC.generalout}")
+    private String generalout;
+
+    @Value("${NYNC.dbdd}")
+    private String dbdd;
+
 
     @Override
     public void report(Order order, List<OrderDetl> orderDetls, DocType docType) {
         int step = (Cools.isEmpty(order.getStep()) || order.getStep() == 0) ? 0 : order.getStep();
         NcResultMessage response = null;
         Object process1 = null;
-        Object process2 = null;
-        Object process3 = null;
         try {
             switch (order.getDocType$().toString()) {
                 case "閿�鍞彂璐�":
@@ -59,78 +73,50 @@
                     //鍙戦�佽姹�
                     response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process1));
                     if (!Cools.isEmpty(response) && response.isSuccess()) {
-                        log.info("response:{}", response);
+                        log.info("閿�鍞彂璐esponse:{}", response);
                         step = 10;
                     }
                     break;
-                case "杞簱":
-                    process1 = processQTRK(orderDetls);
+                case "杞簱-鍏ュ簱":
+                    process1 = processZKRK(orderDetls);
                     //鍙戦�佽姹�
-                    response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process1));
+                    response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefWhsTrans, JSONObject.toJSONString(process1));
                     if (!Cools.isEmpty(response) && response.isSuccess()) {
-                        log.info("response:{}", response);
+                        log.info("杞簱-鍏ュ簱response:{}", response);
                         step = 10;
                     }
                     break;
                 case "閲囪喘鍒拌揣":
                     process1 = processCGDH(orderDetls);
+                    List<Object> cg = new ArrayList<>();
+                    cg.add(process1);
                     //鍙戦�佽姹�
-                    response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process1));
+                    response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, purchasein, JSONObject.toJSONString(cg));
                     if (!Cools.isEmpty(response) && response.isSuccess()) {
-                        log.info("response:{}", response);
+                        log.info("閲囪喘鍒拌揣response:{}", response);
                         step = 10;
                     }
                     break;
-                case "浜ф垚鍝佸叆搴撳崟":
-                    if (step == 2) {
-                        process3 = processQTRK(orderDetls);
-                        //鍙戦�佽姹�
-                        response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process3));
-                        if (!Cools.isEmpty(response) && response.isSuccess()) {
-                            log.info("response:{}", response);
-                            step = 10;
-                        }
-                    } else if (step == 1) {
-                        process2 = processGENERALOUT(orderDetls);
-                        //鍙戦�佽姹�
-                        response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process2));
-                        if (!Cools.isEmpty(response) && response.isSuccess()) {
-                            log.info("response:{}", response);
-                            step = 2;
-                        }
-                        process3 = processQTRK(orderDetls);
-                        //鍙戦�佽姹�
-                        response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process3));
-                        if (!Cools.isEmpty(response) && response.isSuccess()) {
-                            log.info("response:{}", response);
-                            step = 10;
-                        }
-                    } else if (step == 0) {
-                        process1 = processZK(orderDetls);
-                        //鍙戦�佽姹�
-                        response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process1));
-                        if (!Cools.isEmpty(response) && response.isSuccess()) {
-                            log.info("response:{}", response);
-                            step = 1;
-                        }
-                        process2 = processGENERALOUT(orderDetls);
-                        //鍙戦�佽姹�
-                        response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process2));
-                        if (!Cools.isEmpty(response) && response.isSuccess()) {
-                            log.info("response:{}", response);
-                            step = 2;
-                        }
-                        process3 = processQTRK(orderDetls);
-                        //鍙戦�佽姹�
-                        response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process3));
-                        if (!Cools.isEmpty(response) && response.isSuccess()) {
-                            log.info("response:{}", response);
-                            step = 10;
-                        }
+                case "杞簱-鍑哄簱":
+                    process1 = processGENERALOUT(orderDetls);
+                    List<Object> zkck = new ArrayList<>();
+                    zkck.add(process1);
+                    //鍙戦�佽姹�
+                    response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, generalout, JSONObject.toJSONString(zkck));
+                    if (!Cools.isEmpty(response) && response.isSuccess()) {
+                        log.info("杞簱-鍑哄簱response:{}", response);
+                        step = 10;
                     }
                     break;
-//                case "鍐呴儴璋冩嫧":
-//                    break;
+                case "闆嗗洟鍐呴儴璋冩嫧":
+                    process1 = processDBDD(orderDetls);
+                    //鍙戦�佽姹�
+                    response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, dbdd, JSONObject.toJSONString(process1));
+                    if (!Cools.isEmpty(response) && response.isSuccess()) {
+                        log.info("闆嗗洟鍐呴儴璋冩嫧response:{}", response);
+                        step = 10;
+                    }
+                    break;
                 default:
                     throw new CoolException("涓嶈兘璇嗗埆鐨勫崟鎹被鍨�");
             }
@@ -190,6 +176,32 @@
         return data;
     }
 
+    private Object processZKRK(List<OrderDetl> orderDetls) {
+        //缁勮瀵硅薄鏁版嵁
+        Map<String, Object> data = new HashMap<String, Object>();
+        GeneralInHeadVO generalInHeadVO = new GeneralInHeadVO();
+        generalInHeadVO.setPk_org("FYT");
+        generalInHeadVO.setCwarehouseid("6101");
+        GeneralInBodyVO generalInBodyVO = null;
+        List<GeneralInBodyVO> generalInBodyVOS = new ArrayList<>();
+        for (OrderDetl orderDetl : orderDetls) {
+            generalInBodyVO = new GeneralInBodyVO();
+            String remark = orderDetl.getRemark();
+            if (!Cools.isEmpty(remark)) {
+                NccSaleXsfhmxWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleXsfhmxWms.class);
+                generalInBodyVO.setCsourcebillbid(nccSaleXsfhmxWms.getCdeliverybid());
+                generalInBodyVO.setCsourcebillhid(nccSaleXsfhmxWms.getCdeliveryid());
+                generalInBodyVO.setNnum(orderDetl.getQty());
+                generalInBodyVO.setNshouldnum(orderDetl.getAnfme());
+                generalInBodyVO.setVbatchcode(orderDetl.getBatch());
+            }
+            generalInBodyVOS.add(generalInBodyVO);
+        }
+        data.put("GeneralInHeadVO", generalInHeadVO);
+        data.put("GeneralInBodyVO", generalInBodyVOS);
+        return data;
+    }
+
 
     private Object processQTRK(List<OrderDetl> orderDetls) {
         //缁勮瀵硅薄鏁版嵁
@@ -209,6 +221,7 @@
                 generalInBodyVO.setCsourcebillbid(nccSaleXsfhmxWms.getCdeliverybid());
                 generalInBodyVO.setCsourcebillhid(nccSaleXsfhmxWms.getCdeliveryid());
                 generalInBodyVO.setNnum(orderDetl.getQty());
+                generalInBodyVO.setNshouldnum(orderDetl.getAnfme());
                 generalInBodyVO.setVbatchcode(orderDetl.getBatch());
                 generalInBodyVO.setCmaterialoid(orderDetl.getMatnr());
             }
@@ -216,6 +229,32 @@
         }
         data.put("GeneralInHeadVO", generalInHeadVO);
         data.put("GeneralInBodyVO", generalInBodyVOS);
+        return data;
+    }
+
+    private Object processDBDD(List<OrderDetl> orderDetls) {
+        //缁勮瀵硅薄鏁版嵁
+        Map<String, Object> data = new HashMap<String, Object>();
+        IaIjBill iaIjBill = new IaIjBill();
+        iaIjBill.setPk_org("FYT");
+        //iaIjBill.setCwarehouseid("6101");
+        IaIjBillB iaIjBillB = null;
+        List<IaIjBillB> iaIjBillBS = new ArrayList<>();
+        for (OrderDetl orderDetl : orderDetls) {
+            iaIjBillB = new IaIjBillB();
+            String remark = orderDetl.getRemark();
+            if (!Cools.isEmpty(remark)) {
+                NccSaleDbddWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleDbddWms.class);
+                iaIjBillB.setCinventoryid(nccSaleXsfhmxWms.getWlbm());
+                iaIjBillB.setCinventoryvid(nccSaleXsfhmxWms.getWlbm());
+                iaIjBillB.setCsrcid(nccSaleXsfhmxWms.getCbillid());
+                iaIjBillB.setNnum(orderDetl.getQty().intValue() + "");
+                iaIjBillB.setPk_org("FYT");
+            }
+            iaIjBillBS.add(iaIjBillB);
+        }
+        data.put("ia_ijbill", iaIjBill);
+        data.put("ia_ijbill_b", iaIjBillBS);
         return data;
     }
 
@@ -261,17 +300,18 @@
             String remark = orderDetl.getRemark();
             if (!Cools.isEmpty(remark)) {
                 NccCgCgdhdWms nccCgCgdhdWms = JSONObject.parseObject(remark, NccCgCgdhdWms.class);
-                ic_purchasein_b.setCsourcebillbid(nccCgCgdhdWms.getPkArriveorderB());
-                ic_purchasein_b.setCsourcebillhid(nccCgCgdhdWms.getPkArriveorder());
-                ic_purchasein_b.setCmaterialvid(orderDetl.getMaktx());
+                ic_purchasein_h.setCvendorid(nccCgCgdhdWms.getGysbm());
+                ic_purchasein_h.setCbizid(nccCgCgdhdWms.getDhlxbm());
+
+                ic_purchasein_b.setCmaterialvid(orderDetl.getMatnr());
                 ic_purchasein_b.setNnum(orderDetl.getQty());
-                ic_purchasein_b.setNshouldassistnum(orderDetl.getQty());
-                //ic_purchasein_b.setNorigprice(nccSaleXsfhmxWms.getNorigprice().doubleValue());
+                //ic_purchasein_b.setNshouldassistnum(orderDetl.getQty());
+                ic_purchasein_b.setVbatchcode(orderDetl.getBatch());
             }
             ic_purchasein_bs.add(ic_purchasein_b);
         }
         data.put("ic_purchasein_h", ic_purchasein_h);
-        data.put("ic_purchasein_b", ic_purchasein_b);
+        data.put("ic_purchasein_b", ic_purchasein_bs);
         return data;
     }
 
@@ -282,22 +322,24 @@
     private Object processGENERALOUT(List<OrderDetl> orderDetls) {
         //缁勮瀵硅薄鏁版嵁
         Map<String, Object> data = new HashMap<String, Object>();
-        ic_purchasein_h ic_purchasein_h = new ic_purchasein_h();
-        ic_purchasein_h.setPk_org("FYT");
-        ic_purchasein_h.setCwarehouseid("6101");
-        ic_purchasein_b ic_purchasein_b = null;
-        List<ic_purchasein_b> ic_purchasein_bs = new ArrayList<>();
+        ic_generalout_h generalout_h = new ic_generalout_h();
+        generalout_h.setPk_org("FYT");
+        generalout_h.setCwarehouseid("6101");
+        ic_generalout_b generalout_b = null;
+        List<ic_generalout_b> ic_purchasein_bs = new ArrayList<>();
         for (OrderDetl orderDetl : orderDetls) {
-            ic_purchasein_b = new ic_purchasein_b();
+            generalout_b = new ic_generalout_b();
             String remark = orderDetl.getRemark();
             if (!Cools.isEmpty(remark)) {
                 NccSaleXsfhmxWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleXsfhmxWms.class);
-
+                generalout_b.setMaterialvid(orderDetl.getMatnr());
+                generalout_b.setNshouldassistnum(orderDetl.getQty());
+                generalout_b.setVbatchcode(orderDetl.getBatch());
             }
-            ic_purchasein_bs.add(ic_purchasein_b);
+            ic_purchasein_bs.add(generalout_b);
         }
-        data.put("ic_purchasein_h", ic_purchasein_h);
-        data.put("ic_purchasein_b", ic_purchasein_b);
+        data.put("ic_generalout_h", generalout_h);
+        data.put("ic_generalout_b", ic_purchasein_bs);
         return data;
     }
 

--
Gitblit v1.9.1