From 70222363069fa0b8a87491b498b92f22006c2d89 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期二, 06 一月 2026 16:03:47 +0800
Subject: [PATCH] 添加台机管理

---
 src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java |   64 ++++++++++++++++++++++++++------
 1 files changed, 52 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
index 9d53d60..11553ef 100644
--- a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
@@ -2,16 +2,14 @@
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
 import com.core.common.DateUtils;
 import com.core.exception.CoolException;
-import com.zy.asrs.entity.DocType;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.entity.OrderDetl;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.service.DocTypeService;
-import com.zy.asrs.service.OrderDetlService;
-import com.zy.asrs.service.OrderService;
+import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.param.CombParam;
+import com.zy.asrs.service.*;
+import com.zy.asrs.service.impl.MatServiceImpl;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
 import com.zy.asrs.utils.OrderInAndOutUtil;
@@ -21,13 +19,16 @@
 import com.zy.common.model.MesPakoutParam;
 import com.zy.common.utils.HttpHandler;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jdbc.core.JdbcTemplate;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * Created by vincent on 2020/7/7
@@ -46,6 +47,17 @@
     private ApiLogService apiLogService;
     @Autowired
     private DocTypeService docTypeService;
+    @Autowired
+    private MobileService mobileService;
+    @Autowired
+    private WaitPakinService waitPakinService;
+    @Autowired
+    private OrderPakinService orderPakinService;
+    @Autowired
+    private OrderDetlPakinService orderDetlPakinService;
+    @Autowired
+    private MatService matService;
+
 
     @Transactional
     public ReturnT<String> startOrderIssuedOnceMore(Order order) {
@@ -122,11 +134,39 @@
             orderDetl.setWorkQty(0D);
             OrderInAndOutUtil.insertOrderDetl(order.getPakinPakoutStatus$(),order,orderDetl);
         }
-
-        //鍗曟嵁鐢熸垚瀹屾瘯鍚庯紝鐢熸垚鍏ュ簱缁勬墭妗c�備笉闇�瑕佸啀缁勬墭
-
-
-
+        OrderPakin pakinOrder = orderPakinService.selectOne(new EntityWrapper<OrderPakin>().eq("order_no", order.getOrderNo()));
+            if (Objects.isNull(pakinOrder)){
+                return FAIL.setMsg("鍏ュ簱鍗曟嵁涓嶅瓨鍦紒锛侊紒");
+            }
+        //濡傛灉涓哄叆搴撳崟 PakinPakoutStatus = 1锛屽崟鎹敓鎴愬畬姣曞悗锛岀敓鎴愬叆搴撶粍鎵樻。銆�
+        if (pakinOrder.getPakinPakoutStatus().equals(1)){
+            List<OrderDetlPakin> pakinOrderDetls = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>().eq("order_id", pakinOrder.getId()));
+            if (!Objects.isNull(pakinOrderDetls) && !pakinOrderDetls.isEmpty()) {
+                pakinOrderDetls.forEach(orderDetl -> {
+                    WaitPakin waitPakin = new WaitPakin();
+                    BeanUtils.copyProperties(orderDetl, waitPakin);
+                    Mat matnr = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", orderDetl.getMatnr()));
+                    if (Objects.isNull(matnr)){
+                        throw new CoolException(orderDetl.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
+                    }
+                    if (!Objects.isNull(orderDetl.getBarcode()) && !orderDetl.getBarcode().isEmpty()) {
+                        waitPakin.setBarcode(orderDetl.getBarcode());
+                        waitPakin.setZpallet(orderDetl.getBarcode());
+                    }
+                    waitPakin.setOrderId(pakinOrder.getId());
+                    waitPakin.setOrderNo(pakinOrder.getOrderNo());
+                    waitPakin.setIoStatus("N");
+                    waitPakin.setStatus("Y");
+                    waitPakin.setAppeTime(new Date());
+                    waitPakin.setModiTime(new Date());
+                    if (!waitPakinService.insert(waitPakin)) {
+                        throw new CoolException("缁勬墭妗d繚瀛樺け璐ワ紒锛�");
+                    }
+                });
+            } else {
+                throw new CoolException("鍏ュ簱鍗曟嵁鏄庣粏涓嶅瓨鍦紒锛侊紒");
+            }
+        }
         // 淇敼璁㈠崟鐘舵�� 1.鏈綔涓� ===>> 2.浣滀笟涓�
         if (!orderService.updateSettle(order.getId(), 2L, null)) {
             throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");

--
Gitblit v1.9.1