From ce34a29ce04ce600c8837cdc215a90500f24d323 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 11 十二月 2025 08:55:51 +0800
Subject: [PATCH] #AGV

---
 src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java |   44 +++++++-------
 src/main/java/com/zy/asrs/controller/OpenController.java           |   62 +++++++++++++++++++-
 src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java           |   14 ++++
 src/main/java/com/zy/asrs/service/impl/OrderPakinServiceImpl.java  |   44 +++++++-------
 4 files changed, 117 insertions(+), 47 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 85fe6ad..0225ee2 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -1,21 +1,25 @@
 package com.zy.asrs.controller;
 
 import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.annotations.AppAuth;
 import com.core.common.*;
 import com.core.exception.CoolException;
+import com.zy.asrs.entity.Task;
+import com.zy.asrs.entity.WrkMast;
 import com.zy.asrs.entity.param.*;
 import com.zy.asrs.service.OpenService;
+import com.zy.asrs.service.TaskService;
+import com.zy.asrs.service.WrkMastService;
 import com.zy.common.model.DetlDto;
 import com.zy.common.web.BaseController;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+
 import javax.servlet.http.HttpServletRequest;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
 /**
  * Created by vincent on 2022/4/8
@@ -33,6 +37,58 @@
     @Autowired
     private OpenService openService;
 
+    @Autowired
+    private TaskService taskService;
+
+
+
+    @PostMapping("/agvPickupComplete/agvCallback")
+    @AppAuth(memo = "AGV鍙栬揣瀹屾垚鎺ュ彛")
+    public Map<String, Object> agvPickupComplete(@RequestBody AgvTaskParam agvTaskParam, HttpServletRequest request) {
+        //        DecimalFormat df = new DecimalFormat("0000");
+        //        String wrkNo = "Ctu"+df.format(param.getWrkNo())+date.getTime()/1000;
+        String wrkNo = agvTaskParam.getTaskCode().substring(3,7);
+        Task task = taskService.selectOne(new EntityWrapper<Task>().eq("wrk_no", Integer.parseInt(wrkNo)));
+        if (Cools.isEmpty(task)) {
+            log.error("鏈煡璇㈠埌浠诲姟鍙峰搴旂殑鏁版嵁");
+        }
+        task.setWrkSts(0L);
+        taskService.updateById(task);
+
+        HashMap<String, Object> map = new HashMap<>();
+        map.put("code","0");
+        map.put("message","鎴愬姛");
+        map.put("reqCode", "");
+        log.info("agv璇锋眰鍙栬揣瀹屾垚锛寃ms浠诲姟鍙�:"+ JSON.toJSONString(agvTaskParam));
+        return map;
+
+    }
+
+    @PostMapping("/agvTaskComplete/agvCallback")
+    @AppAuth(memo = "AGV鏀捐揣瀹屾垚鎺ュ彛")
+    public Map<String, Object> agvTaskComplete(@RequestBody AgvTaskParam agvTaskParam,HttpServletRequest request) {
+        HashMap<String, Object> map = new HashMap<>();
+        String wrkNo = agvTaskParam.getTaskCode().substring(3,7);
+        Task task = taskService.selectOne(new EntityWrapper<Task>().eq("wrk_no", Integer.parseInt(wrkNo)));
+        if (Cools.isEmpty(task)) {
+            log.error("鏈煡璇㈠埌浠诲姟鍙峰搴旂殑鏁版嵁");
+        }
+
+        taskService.updateById(task);
+        if (task.getIoType() < 100 ){
+            task.setWrkSts(4L);
+        }else {
+            task.setWrkSts(14L);
+        }
+
+        taskService.updateById(task);
+
+        map.put("code","0");
+        map.put("message","鎴愬姛");
+        map.put("reqCode", "");
+        return map;
+    }
+
     @PostMapping("/order/matSync/default/v2")
 //    @AppAuth(memo = "鍟嗗搧淇℃伅鍚屾鎺ュ彛")
     public synchronized R syncMatInfoV2(@RequestHeader(required = false) String appkey,
diff --git a/src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java b/src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java
new file mode 100644
index 0000000..4f81a97
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java
@@ -0,0 +1,14 @@
+package com.zy.asrs.entity.param;
+
+import lombok.Data;
+
+@Data
+public class AgvTaskParam {
+    private String taskCode;
+    private String ctnrCode;
+    private String stgBinCode;
+
+
+
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderPakinServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderPakinServiceImpl.java
index 62815ea..9127c7f 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderPakinServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderPakinServiceImpl.java
@@ -81,28 +81,28 @@
         }
         if (complete) {
             // 鍑哄簱璁㈠崟閲嶆柊鏁寸悊鏄庣粏
-            DocType docType = docTypeService.selectById(order.getDocType());
-            if (null != docType && docType.getPakout() == 1) {
-                if (!orderDetlService.delete(new EntityWrapper<OrderDetlPakin>().eq("order_id", order.getId()))) {
-                    throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
-                }
-                List<WrkDetl> wrkDetls = wrkDetlService.selectAndLogByOrderNo(orderNo);
-                for (WrkDetl wrkDetl : wrkDetls) {
-                    OrderDetlPakin orderDetl = new OrderDetlPakin();
-                    orderDetl.sync(wrkDetl);
-                    orderDetl.setQty(orderDetl.getAnfme());
-                    orderDetl.setOrderId(order.getId());
-                    orderDetl.setOrderNo(orderNo);
-                    orderDetl.setStatus(1);
-                    orderDetl.setCreateTime(order.getCreateTime());
-                    orderDetl.setCreateBy(order.getCreateBy());
-                    orderDetl.setUpdateTime(order.getUpdateTime());
-                    orderDetl.setUpdateBy(order.getUpdateBy());
-                    if (!orderDetlService.insert(orderDetl)) {
-                        throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
-                    }
-                }
-            }
+//            DocType docType = docTypeService.selectById(order.getDocType());
+//            if (null != docType && docType.getPakout() == 1) {
+//                if (!orderDetlService.delete(new EntityWrapper<OrderDetlPakin>().eq("order_id", order.getId()))) {
+//                    throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
+//                }
+//                List<WrkDetl> wrkDetls = wrkDetlService.selectAndLogByOrderNo(orderNo);
+//                for (WrkDetl wrkDetl : wrkDetls) {
+//                    OrderDetlPakin orderDetl = new OrderDetlPakin();
+//                    orderDetl.sync(wrkDetl);
+//                    orderDetl.setQty(orderDetl.getAnfme());
+//                    orderDetl.setOrderId(order.getId());
+//                    orderDetl.setOrderNo(orderNo);
+//                    orderDetl.setStatus(1);
+//                    orderDetl.setCreateTime(order.getCreateTime());
+//                    orderDetl.setCreateBy(order.getCreateBy());
+//                    orderDetl.setUpdateTime(order.getUpdateTime());
+//                    orderDetl.setUpdateBy(order.getUpdateBy());
+//                    if (!orderDetlService.insert(orderDetl)) {
+//                        throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
+//                    }
+//                }
+//            }
 
             if (!this.updateSettle(order.getId(), 4L, null)) {
                 throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�");
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java
index a541308..2a1e4e7 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java
@@ -81,28 +81,28 @@
         }
         if (complete) {
             // 鍑哄簱璁㈠崟閲嶆柊鏁寸悊鏄庣粏
-            DocType docType = docTypeService.selectById(order.getDocType());
-            if (null != docType && docType.getPakout() == 1) {
-                if (!orderDetlService.delete(new EntityWrapper<OrderDetlPakout>().eq("order_id", order.getId()))) {
-                    throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
-                }
-                List<WrkDetl> wrkDetls = wrkDetlService.selectAndLogByOrderNo(orderNo);
-                for (WrkDetl wrkDetl : wrkDetls) {
-                    OrderDetlPakout orderDetl = new OrderDetlPakout();
-                    orderDetl.sync(wrkDetl);
-                    orderDetl.setQty(orderDetl.getAnfme());
-                    orderDetl.setOrderId(order.getId());
-                    orderDetl.setOrderNo(orderNo);
-                    orderDetl.setStatus(1);
-                    orderDetl.setCreateTime(order.getCreateTime());
-                    orderDetl.setCreateBy(order.getCreateBy());
-                    orderDetl.setUpdateTime(order.getUpdateTime());
-                    orderDetl.setUpdateBy(order.getUpdateBy());
-                    if (!orderDetlService.insert(orderDetl)) {
-                        throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
-                    }
-                }
-            }
+//            DocType docType = docTypeService.selectById(order.getDocType());
+//            if (null != docType && docType.getPakout() == 1) {
+//                if (!orderDetlService.delete(new EntityWrapper<OrderDetlPakout>().eq("order_id", order.getId()))) {
+//                    throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
+//                }
+//                List<WrkDetl> wrkDetls = wrkDetlService.selectAndLogByOrderNo(orderNo);
+//                for (WrkDetl wrkDetl : wrkDetls) {
+//                    OrderDetlPakout orderDetl = new OrderDetlPakout();
+//                    orderDetl.sync(wrkDetl);
+//                    orderDetl.setQty(orderDetl.getAnfme());
+//                    orderDetl.setOrderId(order.getId());
+//                    orderDetl.setOrderNo(orderNo);
+//                    orderDetl.setStatus(1);
+//                    orderDetl.setCreateTime(order.getCreateTime());
+//                    orderDetl.setCreateBy(order.getCreateBy());
+//                    orderDetl.setUpdateTime(order.getUpdateTime());
+//                    orderDetl.setUpdateBy(order.getUpdateBy());
+//                    if (!orderDetlService.insert(orderDetl)) {
+//                        throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
+//                    }
+//                }
+//            }
 
             if (!this.updateSettle(order.getId(), 4L, null)) {
                 throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�");

--
Gitblit v1.9.1