From 9e716d318206beaad9a0c8e298eac20f1e63800f Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期三, 16 七月 2025 13:16:43 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java |   79 +++++++++++++++++++++++++++------------
 1 files changed, 54 insertions(+), 25 deletions(-)

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 2dd3437..04efe68 100644
--- a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
+++ b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
@@ -8,10 +8,7 @@
 import com.zy.asrs.entity.Mat;
 import com.zy.asrs.entity.param.OpenOrderPakinParam;
 import com.zy.asrs.entity.param.OpenOrderPakoutParam;
-import com.zy.asrs.service.InventoryCheckOrderDetlService;
-import com.zy.asrs.service.InventoryCheckOrderService;
-import com.zy.asrs.service.MatService;
-import com.zy.asrs.service.OpenService;
+import com.zy.asrs.service.*;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
 import com.zy.common.model.DetlDto;
@@ -58,6 +55,8 @@
 
     @Autowired
     private OpenService openService;
+    @Autowired
+    private StoreTypeService storeTypeService;
 
     /**
      * 鍙戣揣
@@ -67,9 +66,14 @@
     @Transactional
     public ReturnT<String> start1(List<NccSaleXsfhmxWms> wmsFlag) {
         try {
+            List<String> ids = storeTypeService.listOwn();
             HashMap<String, List<NccSaleXsfhmxWms>> map = new HashMap<>();
             List<NccSaleXsfhmxWms> fenzu;
             for (NccSaleXsfhmxWms wms : wmsFlag) {
+                if(!ids.contains(wms.getFhckbm())){
+                    continue;
+                }
+
                 if (map.get(wms.getFhckbm()) == null) {
                     fenzu = new ArrayList<>();
                     fenzu.add(wms);
@@ -102,6 +106,7 @@
                     nccSaleXsfhmxWms.setWmsFlag(1);
                     param.setOrderNo(nccSaleXsfhmxWms.getVbillcode() + "-" + size);
                     param.setCstmrName(nccSaleXsfhmxWms.getKhmc());
+                    param.setKpCstmrName(nccSaleXsfhmxWms.getKpkhmc());
                 }
                 param.setOrderDetails(orderDetails);
                 openService.pakoutOrderCreate(param);
@@ -320,28 +325,52 @@
     @Transactional
     public ReturnT<String> start5(List<NccSaleDbddWms> wmsFlag) {
         try {
-            OpenOrderPakoutParam param = new OpenOrderPakoutParam();
-            param.setOrderType("闆嗗洟鍐呴儴璋冩嫧");
-            DetlDto detlDto;
-            List<DetlDto> orderDetails = new ArrayList<>();
-            long i = 1;
-            for (NccSaleDbddWms nccCgCgdhdWms : wmsFlag) {
-                log.info("nccCgCgdhdWms鏁版嵁:{}", JSONObject.toJSON(nccCgCgdhdWms));
-                detlDto = new DetlDto();
-                detlDto.setMatnr(nccCgCgdhdWms.getWlbm());
-                detlDto.setAnfme(nccCgCgdhdWms.getZsl().doubleValue());
-                detlDto.setWeight(nccCgCgdhdWms.getFsl().doubleValue());
-                detlDto.setBatch(nccCgCgdhdWms.getVbatchcode());
-                detlDto.setLineNumber(i);
-                detlDto.setRemark(JSONObject.toJSONString(nccCgCgdhdWms));
-                orderDetails.add(detlDto);
-                i++;
-                nccCgCgdhdWms.setWmsFlag(1);
-                param.setOrderNo(nccCgCgdhdWms.getVbillcode());
+            List<String> ids = storeTypeService.listOwn();
+            HashMap<String, List<NccSaleDbddWms>> map = new HashMap<>();
+            List<NccSaleDbddWms> fenzu;
+            for (NccSaleDbddWms wms : wmsFlag) {
+                if(!ids.contains(wms.getDcckbm())){
+                    continue;
+                }
+
+                if (map.get(wms.getDcckbm()) == null) {
+                    fenzu = new ArrayList<>();
+                    fenzu.add(wms);
+                    map.put(wms.getDcckbm(), fenzu);
+                } else {
+                    fenzu = map.get(wms.getDcckbm());
+                    fenzu.add(wms);
+                    map.put(wms.getDcckbm(), fenzu);
+                }
             }
-            param.setOrderDetails(orderDetails);
-            openService.pakoutOrderCreate(param);
-            nccSaleDbddWmsService.updateBatchById(wmsFlag);
+            int size = 1;
+            for (String key : map.keySet()) {
+                OpenOrderPakoutParam param = new OpenOrderPakoutParam();
+                param.setOrderType("闆嗗洟鍐呴儴璋冩嫧");
+                DetlDto detlDto;
+                List<DetlDto> orderDetails = new ArrayList<>();
+                long i = 1;
+                for (NccSaleDbddWms nccSaleDbddWms : map.get(key)) {
+                    log.info("nccSaleDbddWms鏁版嵁:{}", JSONObject.toJSON(nccSaleDbddWms));
+                    detlDto = new DetlDto();
+                    detlDto.setMatnr(nccSaleDbddWms.getWlbm());
+                    detlDto.setAnfme(nccSaleDbddWms.getZsl().doubleValue());
+                    detlDto.setWeight(nccSaleDbddWms.getFsl().doubleValue());
+                    detlDto.setBatch(nccSaleDbddWms.getVbatchcode());
+                    detlDto.setLineNumber(i);
+                    detlDto.setRemark(JSONObject.toJSONString(nccSaleDbddWms));
+                    detlDto.setStandby1(nccSaleDbddWms.getDcckbm());
+                    orderDetails.add(detlDto);
+                    i++;
+                    param.setOrderNo(nccSaleDbddWms.getVbillcode() + "-" + size);
+                    param.setCstmrName(nccSaleDbddWms.getDrkczzmc());
+                    nccSaleDbddWms.setWmsFlag(1);
+                }
+                param.setOrderDetails(orderDetails);
+                openService.pakoutOrderCreate(param);
+                nccSaleDbddWmsService.updateBatchById(map.get(key));
+                size++;
+            }
         } catch (Exception e) {
             e.printStackTrace();
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

--
Gitblit v1.9.1