From 2b72251421b15984711107e6aa061a36562d9d87 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期一, 24 十一月 2025 13:59:47 +0800
Subject: [PATCH] #pda接口

---
 src/main/java/com/zy/asrs/controller/OpenController.java |  136 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 133 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index ef22698..e378cb2 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -243,13 +243,23 @@
         if (Cools.isEmpty(param.getUpc())) {
             return R.error("UPC[upc]涓嶈兘涓虹┖");
         }
-        if (Cools.isEmpty(param.getSupplier())) {
-            return R.error("璐ф簮[supplier]涓嶈兘涓虹┖");
+        if (Cools.isEmpty(param.getItem())) {
+            return R.error("UPC[item]涓嶈兘涓虹┖");
         }
+//        if (Cools.isEmpty(param.getSupplier())) {
+//            return R.error("璐ф簮[supplier]涓嶈兘涓虹┖");
+//        }
         if (Cools.isEmpty(param.getStaNo())) {
             return R.error("鍒嗘嫞鐐逛綅[staNo]涓嶈兘涓虹┖");
         }
-        openService.taskArmReport(param);
+        if (Cools.isEmpty(param.getBindingTags())) {
+            return R.error("鍒嗘嫞缁戝畾绫诲埆[bindingTags]涓嶈兘涓虹┖");
+        }
+        try{
+            openService.taskArmReport(param);
+        } catch (Exception e){
+            return R.error(e.getMessage()).add(e.getMessage());
+        }
         return R.ok();
     }
 
@@ -303,6 +313,9 @@
         }
         if (Cools.isEmpty(param.getId())) {
             return R.error("鍗曟嵁缂栧彿[order_id]涓嶈兘涓虹┖");
+        }
+        if (Integer.parseInt(param.getId())<2){
+            return R.ok().add("鏉ユ枡鍙g┖闂村浣嶆垚鍔�");
         }
         if (Cools.isEmpty(param.getType())) {
             return R.error("瀹汉鍨嬪彿[pick_num]涓嶈兘涓虹┖");
@@ -364,4 +377,121 @@
         return R.ok();
     }
 
+
+
+    /**
+     * 鏄惁瀛樺湪鍚庣画鎵樼洏
+     */
+    @PostMapping("/arm/task/order_sign")
+    @AppAuth(memo = "鏄惁瀛樺湪鍚庣画鎵樼洏")
+    public synchronized R TaskArmWorkOrderSign(@RequestHeader(required = false) String appkey,
+                                                 @RequestBody OrderArmEndParam param,
+                                                 HttpServletRequest request) {
+        auth(appkey, param, request);
+        if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        if (Cools.isEmpty(param.getArm_no())) {
+            return R.error("鏈烘鑷傜紪鍙穂Arm_no]涓嶈兘涓虹┖");
+        }
+        if (Cools.isEmpty(param.getOrder_id())) {
+            return R.error("鍗曟嵁缂栧彿[order_id]涓嶈兘涓虹┖");
+        }
+        try{
+            param.OrderIdTwo(sign_arm_order,sign_arm_sku);
+        } catch (Exception e){
+            return R.error("鍗曟嵁缂栧彿[order_id]浠� "+sign_arm_sku+" 涓� "+sign_arm_order+" 浣滀负鎷嗗垎鏍囪鎷嗗垎澶辫触锛侊紒锛�");
+        }
+
+        boolean taskArmWorkOrderSign = openService.TaskArmWorkOrderSign(param);
+        return R.ok().add(taskArmWorkOrderSign);
+    }
+
+
+    /**
+     * AGV涓婃姤鎺ユ敹
+     */
+    @PostMapping("/agv/task/v1/agvCallback")
+//    @AppAuth(memo = "AGV涓婃姤鎺ユ敹")
+    public synchronized R TaskAgvReport(@RequestHeader(required = false) String appkey,
+                                        @RequestBody TaskAgvReportParam param,
+                                        HttpServletRequest request) {
+        auth(appkey, param, request);
+        if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        if (Cools.isEmpty(param.getReqCode())) {
+            return R.error("WMS浠诲姟鍙穂reqCode]涓嶈兘涓虹┖");
+        }
+        String reqCode = param.getReqCode();
+        String[] split = reqCode.split("-");
+        param.setTaskNo(Integer.parseInt(split[0]));
+//        if (Cools.isEmpty(param.getTimestamp())) {
+//            return R.error("RGV浠诲姟鍙穂timestamp]涓嶈兘涓虹┖");
+//        }
+        boolean taskAgvReport = openService.TaskAgvReport(param);
+        if (taskAgvReport){
+            return R.ok();
+        }
+        return R.error("浠诲姟鍙蜂笉瀛樺湪");
+    }
+
+    /**
+     * PDA鍒涘缓AGV浠诲姟
+     */
+    @PostMapping("/agv/task/v1/createTask")
+    @AppAuth(memo = "PDA鍒涘缓AGV浠诲姟")
+    public synchronized R TaskAgvCreate(@RequestHeader(required = false) String appkey,
+                                        @RequestBody TaskAgvCreateParam param,
+                                        HttpServletRequest request) {
+        auth(appkey, param, request);
+        if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        boolean taskAgvCreate = openService.taskAgvCreate(param);
+        if (taskAgvCreate){
+            return R.ok();
+        }
+        return R.error("浠诲姟鍙蜂笉瀛樺湪");
+    }
+
+    /**
+     * PDA鑾峰彇AGV搴撲綅
+     */
+    @PostMapping("/agv/loc/v1/getLocList")
+    @AppAuth(memo = "PDA妫�绱GV搴撲綅")
+    public synchronized R GetAgvLocList(@RequestHeader(required = false) String appkey,
+                                        @RequestBody AgvLocListParam param,
+                                        HttpServletRequest request) {
+        auth(appkey, param, request);
+
+        if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        List<AgvLocListDetlParam> list = openService.getAgvLocList(param);
+        if (!list.isEmpty()) {
+            return R.ok(list);
+        }
+        return R.error("搴撲綅涓嶅瓨鍦ㄦ垨鏃犳槑缁�");
+    }
+
+    /**
+     * PDA缁戝畾瑙g粦
+     */
+    @PostMapping("/agv/bindCtnrAndBin/v1")
+    @AppAuth(memo = "PDA缁戝畾涓庤В缁�")
+    public synchronized R bindCtnrAndBin(@RequestHeader(required = false) String appkey,
+                                        @RequestBody bindCtnrAndBinParam param,
+                                        HttpServletRequest request) {
+        auth(appkey, param, request);
+        if (Cools.isEmpty(param)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        boolean bindCtnrAndBin = openService.bindCtnrAndBin(param);
+        if (bindCtnrAndBin) {
+            return R.ok();
+        }
+        return R.error("搴撲綅涓嶅瓨鍦ㄦ垨鏃犳槑缁�");
+    }
+
 }

--
Gitblit v1.9.1