From aa0c2969838c2a794d9a45da7d4b67c5f6cb70a5 Mon Sep 17 00:00:00 2001
From: chen.llin <1442464845@qq.comm>
Date: 星期四, 01 一月 2026 15:23:13 +0800
Subject: [PATCH] AGV回调

---
 src/main/java/com/zy/asrs/controller/OpenController.java |  123 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 113 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 28c0cba..d52fdc8 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -4,18 +4,31 @@
 import com.core.annotations.AppAuth;
 import com.core.common.*;
 import com.core.exception.CoolException;
-import com.zy.asrs.entity.param.*;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.zy.asrs.entity.AgvCallbackDto;
+import com.zy.asrs.entity.LocDetl;
+import com.zy.asrs.entity.param.MatSyncParam;
+import com.zy.asrs.entity.param.OpenLocDetlQueryParam;
+import com.zy.asrs.entity.param.OpenOrderCompleteParam;
+import com.zy.asrs.entity.param.OpenOrderPakinParam;
+import com.zy.asrs.entity.param.OpenOrderPakoutParam;
+import com.zy.asrs.service.LocDetlService;
 import com.zy.asrs.service.OpenService;
 import com.zy.common.model.DetlDto;
+import com.zy.common.model.MesPakinParam;
+import com.zy.common.model.MesPakoutParam;
 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.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  * Created by vincent on 2022/4/8
@@ -33,13 +46,70 @@
     @Autowired
     private OpenService openService;
 
-    @PostMapping("/order/matSync/default/v1")
-    @AppAuth(memo = "鍟嗗搧淇℃伅鍚屾鎺ュ彛")
-    public synchronized R syncMatInfo(@RequestHeader(required = false) String appkey,
-                                      @RequestBody(required = false) MatSyncParam param,
-                                      HttpServletRequest request){
+    @Resource
+    private LocDetlService locDetlService;
+
+    @PostMapping("/api/agv_callback")
+    @AppAuth(memo = "agv浠诲姟鍥炶皟")
+    public synchronized R agvCallback(@RequestHeader(required = false) String appkey,
+                                      @RequestBody(required = false) AgvCallbackDto param,
+                                      HttpServletRequest request) {
+
+        auth(appkey, param, request);
+
+        return openService.agvCallback(param);
+    }
+
+    // 鍏ュ簱瀹屾垚涓婃姤娴嬭瘯鎺ュ彛
+    @PostMapping("/inOrderFinishReport")
+    public synchronized R inOrderFinishReport(@RequestHeader(required = false) String appkey,
+                                        @RequestBody(required = false) MesPakinParam param,
+                                        HttpServletRequest request) {
+        return R.ok();
+    }
+
+    // 鍑哄簱瀹屾垚涓婃姤娴嬭瘯鎺ュ彛
+    @PostMapping("/outOrderFinishReport")
+    public synchronized R outOrderFinishReport(@RequestHeader(required = false) String appkey,
+                                        @RequestBody(required = false) MesPakoutParam param,
+                                        HttpServletRequest request) {
+        return R.ok();
+    }
+
+    //鍛煎彨agv娴嬭瘯鎺ュ彛
+    @PostMapping("/api/entity/create/one")
+    @AppAuth(memo = "鍛煎彨agv娴嬭瘯鎺ュ彛")
+    public synchronized R create(@RequestHeader(required = false) String appkey,
+                                               @RequestBody(required = false) MesPakoutParam param,
+                                               HttpServletRequest request) {
+        return R.ok();
+    }
+
+    @PostMapping("/order/matSync/default/v2")
+//    @AppAuth(memo = "鍟嗗搧淇℃伅鍚屾鎺ュ彛")
+    public synchronized R syncMatInfoV2(@RequestHeader(required = false) String appkey,
+                                        @RequestBody(required = false) MatSyncParam.MatParam param,
+                                        HttpServletRequest request) {
+
         auth(appkey, param, request);
         if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        MatSyncParam matSyncParam = new MatSyncParam();
+        List<MatSyncParam.MatParam> objects = new ArrayList<>();
+        objects.add(param);
+        matSyncParam.matDetails = objects;
+        openService.syncMat(matSyncParam);
+        return R.ok();
+    }
+
+    @PostMapping("/order/matSync/default/v1")
+    @AppAuth(memo = "鐗╂枡淇℃伅鍚屾")
+    public synchronized R syncMatInfo(@RequestHeader(required = false) String appkey,
+                                      @RequestBody(required = false) MatSyncParam param,
+                                      HttpServletRequest request) {
+        auth(appkey, param, request);
+        if (Cools.isEmpty(param,param.getMatDetails())) {
             return R.parse(BaseRes.PARAM);
         }
         openService.syncMat(param);
@@ -67,6 +137,7 @@
      * 娣诲姞鍏ュ簱鍗�
      */
     @PostMapping("/order/pakin/default/v1")
+    @AppAuth(memo = "鍏ュ簱鍗曟嵁涓嬪彂")
     public synchronized R pakinOrderCreate(@RequestHeader(required = false) String appkey,
                                            @RequestBody OpenOrderPakinParam param,
                                            HttpServletRequest request) {
@@ -83,6 +154,9 @@
         if (Cools.isEmpty(param.getOrderDetails())) {
             return R.error("鍗曟嵁鏄庣粏[orderDetails]涓嶈兘涓虹┖");
         }
+        if (!param.getOptType().equals("delete") && Cools.isEmpty(param.getOrderDetails())) {
+            return R.error("鍗曟嵁鏄庣粏[orderDetails]涓嶈兘涓虹┖");
+        }
         openService.pakinOrderCreate(param);
         return R.ok();
     }
@@ -90,7 +164,7 @@
     /**
      * 鍏ュ簱鍗曞洖鍐�
      */
-    @PostMapping("/order/pakin/complete/default/v1")
+//    @PostMapping("/order/pakin/complete/default/v1")
     public synchronized R orderPakinComplete(@RequestHeader(required = false) String appkey,
                                              @RequestBody(required = false) OpenOrderCompleteParam param,
                                              HttpServletRequest request) {
@@ -102,7 +176,7 @@
      * 娣诲姞鍑哄簱鍗�
      */
     @PostMapping("/order/pakout/default/v1")
-    @AppAuth(memo = "娣诲姞璁㈠崟鍑哄簱")
+    @AppAuth(memo = "鍑哄簱鍗曟嵁涓嬪彂")
     public synchronized R pakoutOrderCreate(@RequestHeader(required = false) String appkey,
                                             @RequestBody OpenOrderPakoutParam param,
                                             HttpServletRequest request) {
@@ -119,6 +193,9 @@
         if (Cools.isEmpty(param.getOrderDetails())) {
             return R.error("鍗曟嵁鏄庣粏[orderDetails]涓嶈兘涓虹┖");
         }
+        if (!param.getOptType().equals("delete") && Cools.isEmpty(param.getOrderDetails())) {
+            return R.error("鍗曟嵁鏄庣粏[orderDetails]涓嶈兘涓虹┖");
+        }
         openService.pakoutOrderCreate(param);
         return R.ok();
     }
@@ -126,7 +203,7 @@
     /**
      * 鍑哄簱鍗曞洖鍐�
      */
-    @PostMapping("/order/pakout/complete/default/v1")
+//    @PostMapping("/order/pakout/complete/default/v1")
     public synchronized R orderPakoutComplete(@RequestHeader(required = false) String appkey,
                                               @RequestBody(required = false) OpenOrderCompleteParam param,
                                               HttpServletRequest request) {
@@ -145,8 +222,34 @@
         return R.ok().add(openService.queryStock());
     }
 
+    /**
+     * 搴撳瓨鏄庣粏鏌ヨ
+     */
+    @PostMapping("/locDetl/list/default/v1")
+    @AppAuth(memo = "搴撳瓨鏄庣粏鏌ヨ")
+    public R queryLocDetlList(@RequestHeader(required = false) String appkey,
+                              @RequestBody OpenLocDetlQueryParam param,
+                              HttpServletRequest request) {
+        auth(appkey, param, request);
+        if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        EntityWrapper<LocDetl> wrapper = new EntityWrapper<>();
+        Map<String, Object> paramMap = param.toQueryMap();
+        excludeTrash(paramMap);
+        param.convertToWrapper(wrapper);
+        allLike(LocDetl.class, paramMap.keySet(), wrapper, param.getCondition());
+        if (!Cools.isEmpty(param.getOrderByField())) {
+            wrapper.orderBy(humpToLine(param.getOrderByField()), "asc".equals(param.getOrderByType()));
+        }
+        Integer curr = param.getCurr() != null ? param.getCurr() : 1;
+        Integer limit = param.getLimit() != null ? param.getLimit() : 10;
+        return R.ok(locDetlService.selectPage(new Page<>(curr, limit), wrapper));
+    }
+
+
     private void auth(String appkey, Object obj, HttpServletRequest request) {
-        log.info("{}鎺ュ彛琚闂紱appkey:{}锛涜姹傛暟鎹細{}", "open/sensorType/list/auth/v1", appkey, JSON.toJSONString(obj));
+        log.info("{}鎺ュ彛琚闂紱appkey:{}锛涜姹傛暟鎹細{}", request.getRequestURI(), appkey, JSON.toJSONString(obj));
         request.setAttribute("cache", obj);
         if (!auth) {
             return;

--
Gitblit v1.9.1