From 40606191d07e8f0c5dffdc8cb92d42c381d40df6 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期六, 17 五月 2025 10:30:39 +0800
Subject: [PATCH] 接口编写

---
 src/main/java/com/zy/nc/task/PlanOrderTask.java            |   82 +++++++++++++++++++++++----
 src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java |   54 ++++++++++-------
 2 files changed, 101 insertions(+), 35 deletions(-)

diff --git a/src/main/java/com/zy/nc/task/PlanOrderTask.java b/src/main/java/com/zy/nc/task/PlanOrderTask.java
index 8f55581..804312e 100644
--- a/src/main/java/com/zy/nc/task/PlanOrderTask.java
+++ b/src/main/java/com/zy/nc/task/PlanOrderTask.java
@@ -1,11 +1,22 @@
 package com.zy.nc.task;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.zy.asrs.task.core.ReturnT;
+import com.zy.nc.entity.NccCgCgdhdWms;
+import com.zy.nc.entity.NccCkPddWms;
+import com.zy.nc.entity.NccSaleXsfhmxWms;
+import com.zy.nc.entity.NccScZkmxbWms;
+import com.zy.nc.service.NccCgCgdhdWmsService;
+import com.zy.nc.service.NccCkPddWmsService;
+import com.zy.nc.service.NccSaleXsfhmxWmsService;
+import com.zy.nc.service.NccScZkmxbWmsService;
 import com.zy.nc.task.handler.PlanOrderHandler;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
+
+import java.util.List;
 
 @Slf4j
 @Component
@@ -15,6 +26,18 @@
     private PlanOrderHandler planOrderHandler;
 
 
+    @Autowired
+    private NccSaleXsfhmxWmsService nccSaleXsfhmxWmsService;
+
+    @Autowired
+    private NccScZkmxbWmsService nccScZkmxbWmsService;
+
+    @Autowired
+    private NccCgCgdhdWmsService nccCgCgdhdWmsService;
+
+    @Autowired
+    private NccCkPddWmsService nccCkPddWmsService;
+
     /**
      * 鍙戣揣
      *
@@ -22,10 +45,19 @@
      */
     @Scheduled(cron = "0/3 * * * * ? ")
     public void execute1() {
-        ReturnT<String> returnT = planOrderHandler.start1();
-        if (!returnT.isSuccess()) {
-            log.error(returnT.getMsg());
+        List<String> Ids = nccSaleXsfhmxWmsService.selectXsfh();
+        for (String id : Ids) {
+            List<NccSaleXsfhmxWms> wmsFlag = nccSaleXsfhmxWmsService.selectList(new EntityWrapper<NccSaleXsfhmxWms>().eq("vbillcode", id).ne("wms_flag", 1).eq("fstatusflag", 2));
+            ReturnT<String> returnT = planOrderHandler.start1(wmsFlag);
+            if (!returnT.isSuccess()) {
+                for (NccSaleXsfhmxWms wms : wmsFlag) {
+                    wms.setWmsMemo(returnT.getMsg());
+                    nccSaleXsfhmxWmsService.updateById(wms);
+                }
+                log.error(returnT.getMsg());
+            }
         }
+
     }
 
     /**
@@ -35,10 +67,19 @@
      */
     @Scheduled(cron = "0/3 * * * * ? ")
     public void execute2() {
-        ReturnT<String> returnT = planOrderHandler.start2();
-        if (!returnT.isSuccess()) {
-            log.error(returnT.getMsg());
+        List<String> strings = nccScZkmxbWmsService.selectZk();
+        for (String string : strings) {
+            List<NccScZkmxbWms> wmsFlag = nccScZkmxbWmsService.selectList(new EntityWrapper<NccScZkmxbWms>().eq("vbillcode", string).ne("wms_flag", 1));
+            ReturnT<String> returnT = planOrderHandler.start2(wmsFlag);
+            if (!returnT.isSuccess()) {
+                for (NccScZkmxbWms wms : wmsFlag) {
+                    wms.setWmsMemo(returnT.getMsg());
+                    nccScZkmxbWmsService.updateById(wms);
+                }
+                log.error(returnT.getMsg());
+            }
         }
+
     }
 
     /**
@@ -48,10 +89,19 @@
      */
     @Scheduled(cron = "0/3 * * * * ? ")
     public void execute3() {
-        ReturnT<String> returnT = planOrderHandler.start3();
-        if (!returnT.isSuccess()) {
-            log.error(returnT.getMsg());
+        List<String> strings = nccCgCgdhdWmsService.selectCg();
+        for (String string : strings) {
+            List<NccCgCgdhdWms> wmsFlag = nccCgCgdhdWmsService.selectList(new EntityWrapper<NccCgCgdhdWms>().eq("vbillcode", string).ne("wms_flag", 1));
+            ReturnT<String> returnT = planOrderHandler.start3(wmsFlag);
+            if (!returnT.isSuccess()) {
+                for (NccCgCgdhdWms wms : wmsFlag) {
+                    wms.setWmsMemo(returnT.getMsg());
+                    nccCgCgdhdWmsService.updateById(wms);
+                }
+                log.error(returnT.getMsg());
+            }
         }
+
     }
 
     /**
@@ -61,9 +111,17 @@
      */
     @Scheduled(cron = "0/3 * * * * ? ")
     public void execute4() {
-        ReturnT<String> returnT = planOrderHandler.start4();
-        if (!returnT.isSuccess()) {
-            log.error(returnT.getMsg());
+        List<String> strings = nccCkPddWmsService.selectPdd();
+        for (String string : strings) {
+            List<NccCkPddWms> wmsFlag = nccCkPddWmsService.selectList(new EntityWrapper<NccCkPddWms>().eq("vbillcode", string).ne("wms_flag", 1));
+            ReturnT<String> returnT = planOrderHandler.start4(wmsFlag);
+            if (!returnT.isSuccess()) {
+                for (NccCkPddWms wms : wmsFlag) {
+                    wms.setWmsMemo(returnT.getMsg());
+                    nccCkPddWmsService.updateById(wms);
+                }
+                log.error(returnT.getMsg());
+            }
         }
     }
 }
diff --git a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
index 202d21b..07cb971 100644
--- a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
+++ b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
@@ -27,6 +27,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -64,10 +65,8 @@
      *
      * @return
      */
-    public ReturnT<String> start1() {
-        List<String> Ids = nccSaleXsfhmxWmsService.selectXsfh();
-        for (String id : Ids) {
-            List<NccSaleXsfhmxWms> wmsFlag = nccSaleXsfhmxWmsService.selectList(new EntityWrapper<NccSaleXsfhmxWms>().eq("vbillcode", id).ne("wms_flag", 1).eq("fstatusflag", 2));
+    public ReturnT<String> start1(List<NccSaleXsfhmxWms> wmsFlag) {
+        try {
             OpenOrderPakoutParam param = new OpenOrderPakoutParam();
             param.setOrderType("閿�鍞彂璐�");
             DetlDto detlDto;
@@ -85,11 +84,15 @@
                     i++;
                 }
                 nccSaleXsfhmxWms.setWmsFlag(1);
+                param.setOrderNo(nccSaleXsfhmxWms.getVbillcode());
             }
-            param.setOrderNo(id);
             param.setOrderDetails(orderDetails);
             openService.pakoutOrderCreate(param);
             nccSaleXsfhmxWmsService.updateBatchById(wmsFlag);
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
         }
         return SUCCESS;
     }
@@ -99,15 +102,13 @@
      *
      * @return
      */
-    public ReturnT<String> start2() {
-        List<String> strings = nccScZkmxbWmsService.selectZk();
-        for (String string : strings) {
+    public ReturnT<String> start2(List<NccScZkmxbWms> wmsFlag) {
+        try {
             OpenOrderPakoutParam param = new OpenOrderPakoutParam();
             param.setOrderType("杞簱");
             DetlDto detlDto;
             List<DetlDto> orderDetails = new ArrayList<>();
             long i = 1;
-            List<NccScZkmxbWms> wmsFlag = nccScZkmxbWmsService.selectList(new EntityWrapper<NccScZkmxbWms>().eq("vbillcode", string).ne("wms_flag", 1));
             for (NccScZkmxbWms nccScZkmxbWms : wmsFlag) {
                 log.info("NccScZkmxbWms鏁版嵁:{}", JSONObject.toJSON(nccScZkmxbWms));
                 if (nccScZkmxbWms.getDjzt() == 2 && nccScZkmxbWms.getBdr() == 0 && nccScZkmxbWms.getDr() == 0) {
@@ -120,11 +121,15 @@
                     i++;
                 }
                 nccScZkmxbWms.setWmsFlag(1);
+                param.setOrderNo(nccScZkmxbWms.getVbillcode());
             }
-            param.setOrderNo(string);
             param.setOrderDetails(orderDetails);
             openService.pakoutOrderCreate(param);
             nccScZkmxbWmsService.updateBatchById(wmsFlag);
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
         }
         return SUCCESS;
     }
@@ -135,15 +140,13 @@
      *
      * @return
      */
-    public ReturnT<String> start3() {
-        List<String> strings = nccCgCgdhdWmsService.selectCg();
-        for (String string : strings) {
+    public ReturnT<String> start3(List<NccCgCgdhdWms> wmsFlag) {
+        try {
             OpenOrderPakinParam param = new OpenOrderPakinParam();
             param.setOrderType("閲囪喘鍒拌揣");
             DetlDto detlDto;
             List<DetlDto> orderDetails = new ArrayList<>();
             long i = 1;
-            List<NccCgCgdhdWms> wmsFlag = nccCgCgdhdWmsService.selectList(new EntityWrapper<NccCgCgdhdWms>().eq("vbillcode", string).ne("wms_flag", 1));
             for (NccCgCgdhdWms nccScZkmxbWms : wmsFlag) {
                 log.info("NccCgCgdhdWms鏁版嵁:{}", JSONObject.toJSON(nccScZkmxbWms));
                 if (nccScZkmxbWms.getBdr() == 0 && nccScZkmxbWms.getHdr() == 0) {
@@ -155,11 +158,15 @@
                     i++;
                 }
                 nccScZkmxbWms.setWmsFlag(1);
+                param.setOrderNo(nccScZkmxbWms.getVbillcode());
             }
-            param.setOrderNo(string);
             param.setOrderDetails(orderDetails);
             openService.pakinOrderCreate(param);
             nccCgCgdhdWmsService.updateBatchById(wmsFlag);
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
         }
         return SUCCESS;
     }
@@ -170,12 +177,10 @@
      *
      * @return
      */
-    public ReturnT<String> start4() {
-        List<String> strings = nccCkPddWmsService.selectPdd();
-        for (String string : strings) {
+    public ReturnT<String> start4(List<NccCkPddWms> wmsFlag) {
+        try {
             InventoryCheckOrder param = new InventoryCheckOrder();
             InventoryCheckOrderDetl checkOrderDetl = null;
-            List<NccCkPddWms> wmsFlag = nccCkPddWmsService.selectList(new EntityWrapper<NccCkPddWms>().eq("vbillcode", string).ne("wms_flag", 1));
             for (NccCkPddWms nccScZkmxbWms : wmsFlag) {
                 log.info("NccCkPddWms鏁版嵁:{}", JSONObject.toJSON(nccScZkmxbWms));
                 if (nccScZkmxbWms.getBdr() == 0 && nccScZkmxbWms.getHdr() == 0) {
@@ -184,8 +189,8 @@
                         throw new CoolException(nccScZkmxbWms.getWlbm() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧");
                     }
                     List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("order_no", nccScZkmxbWms.getVbillcode()).eq("matnr", mat.getMatnr()));
-                    if (checkOrderDetls==null||checkOrderDetls.isEmpty()) {
-                        throw new CoolException(nccScZkmxbWms.getWlbm() + "鐩樼偣鍗曠殑");
+                    if (checkOrderDetls == null || checkOrderDetls.isEmpty()) {
+                        throw new CoolException(nccScZkmxbWms.getWlbm() + "鐩樼偣鍗曠殑鏄庣粏閲嶅浜�");
                     }
                     checkOrderDetl = new InventoryCheckOrderDetl();
                     checkOrderDetl.setMatnr(nccScZkmxbWms.getWlbm());
@@ -196,12 +201,15 @@
                     inventoryCheckOrderDetlService.insert(checkOrderDetl);
                 }
                 nccScZkmxbWms.setWmsFlag(1);
-
+                param.setOrderNo(nccScZkmxbWms.getVbillcode());
             }
-            param.setOrderNo(string);
             param.setStatus("1");
             inventoryCheckOrderService.insert(param);
             nccCkPddWmsService.updateBatchById(wmsFlag);
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
         }
         return SUCCESS;
     }

--
Gitblit v1.9.1