From 45d602719964509214d06ec5173f23e5307d5dfe Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期二, 16 四月 2024 12:24:10 +0800
Subject: [PATCH] 无空库位时,不做空板入库操作

---
 src/main/java/com/zy/asrs/controller/AgvOpenController.java |  170 ++++++++++++--------------------------------------------
 1 files changed, 37 insertions(+), 133 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvOpenController.java b/src/main/java/com/zy/asrs/controller/AgvOpenController.java
index 85395c6..89fb7e1 100644
--- a/src/main/java/com/zy/asrs/controller/AgvOpenController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvOpenController.java
@@ -26,6 +26,7 @@
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.util.EnumSet;
+import java.util.Map;
 
 /**
  * 涓婃姤浜嬩欢绫诲瀷锛坋ventType锛夛細
@@ -59,7 +60,7 @@
 
         apiLogService.save(
                 "ESS浠诲姟鍥炶皟",
-                "/tzskwms/agv/task/event/status",
+                "/phyzwms/agv/task/event/status",
                 null,
                 null,
                 JSON.toJSONString(JSONObject.toJSONString(param)),
@@ -77,17 +78,16 @@
         }
         AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", wrkNo));
         if(Cools.isEmpty(agvWrkMast)){
-            return R.error("浠诲姟缂栧彿閿欒");
+            agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("barcode",param.getPodCode()));
+            if (Cools.isEmpty(agvWrkMast)){
+                return R.error("浠诲姟缂栧彿閿欒");
+            }
         }
 
-//        if(!checkParam(param,agvWrkMast)){
-//            return R.error("浠诲姟鍙傛暟涓庡伐浣滄。鍙傛暟涓嶇鍚�");
-//        }
-
-        AgvTask agvTask = AgvTask.valueOf(param.getEventType());
+        AgvTask agvTask = AgvTask.valueOf(param.getMethod());
         Class<AgvTask> clz = AgvTask.class;
         try {
-            Method method = clz.getDeclaredMethod(param.getStatus(), AgvWrkMast.class, AgvTaskCallBackParam.class);
+            Method method = clz.getDeclaredMethod("success", AgvWrkMast.class, AgvTaskCallBackParam.class);
             method.invoke(agvTask,agvWrkMast,param);
         } catch (NoSuchMethodException e) {
             return R.error("浠诲姟鐘舵�乻tatus鍙傛暟鏈夎");
@@ -101,190 +101,94 @@
         return R.ok();
     }
 
-    private boolean checkParam(AgvTaskCallBackParam param, AgvWrkMast agvWrkMast){
-        if(!agvWrkMast.getLocNo().equals(param.getLocationCode())){
-            return false;
-        }
-        if(!agvWrkMast.getSourceLocNo().equals(param.getStationCode())){
-            return false;
-        }
-        return true;
-    }
+    @PostMapping("/conveyor/loadContainerFinish ")
+    @AppAuth(memo = "鍙栧鍣ㄥ畬鎴愰�氱煡")
+    public R loadContainerFinish(@RequestBody Map<String,Object> params){
 
+        return R.ok();
+    }
 }
 
 enum AgvTask{
 
     /**
-     * 涓婃姤浠诲姟鐘舵��
+     * 涓婃姤浠诲姟瀹屾垚
      */
-    task{
+    end{
         @Transactional
         public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
             //淇敼AGV宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负205.宸ヤ綔瀹屾垚
-            agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),205);
+            agvWrkMast.setWrkSts(205L);
 
             //鍑哄簱浠诲姟 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 107.鐩樼偣鍑哄簱
             if(agvWrkMast.getIoType() == 101 || agvWrkMast.getIoType() == 103 || agvWrkMast.getIoType() == 107){
                 //淇敼鍑哄簱绔欑偣鐘舵��
-                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode());
+                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
             }
             //鍑哄簱浠诲姟 110.绌烘澘鍑哄簱
             if(agvWrkMast.getIoType() == 110){
-                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode());
+                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                agvWrkMast.setWrkSts(206L);
             }
-        }
-
-        public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
+            agvWrkMastService.updateById(agvWrkMast);
         }
     },
     /**
-     * 涓婃姤浠诲姟鍒嗛厤缁欐満鍣ㄤ汉
+     * 浠诲姟寮�濮�
      */
-    task_allocated{
+    start{
         @Transactional
         public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
+            //淇敼AGV宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负203.浠诲姟寮�濮�
+            agvWrkMast.setWrkSts(203L);
+            agvWrkMastService.updateById(agvWrkMast);
         }
     },
     /**
-     * 涓婃姤鍙栫鐘舵��
+     * 璧板嚭鍌ㄤ綅鐘舵��
      */
-    tote_load{
+    outbin{
         @Transactional
         public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
 
             //鍏ュ簱浠诲姟 || 鎷f枡鍏ュ簱浠诲姟 ||鐩樼偣鍐嶅叆搴� ||绌烘澘鍏ュ簱
             if(agvWrkMast.getIoType() == 1 || agvWrkMast.getIoType() == 53 || agvWrkMast.getIoType() == 57 || agvWrkMast.getIoType() == 10){
                 //淇敼婧愮珯鐐圭姸鎬佷负O.绌猴紝浠ュ強瑙g粦鎵樼洏鏉$爜
-                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","");
+                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",null);
             }
 
             //淇敼AGV宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负203.RCS鏀捐揣涓�
-            agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),203);
-
-
+            agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),204);
 
         }
 
-        public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
     },
     /**
      * 涓婃姤鏀剧鐘舵��
      */
-    tote_unload{
+    cancel{
         @Transactional
         public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-            //淇敼宸ヤ綔妗g姸鎬佷负204.鏀捐揣瀹屾垚
-            agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),204);
-        }
 
-        public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
 
         }
 
-        public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
     },
-    robot_reach{
+    apply{
         @Transactional
         public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-    },
-    weight{
-        @Transactional
-        public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-    },
-    rfid{
-        @Transactional
-        public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-
-        }
-
-        public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
 
         }
     };
 
     //浠诲姟鐘舵�佷负鎴愬姛
     public abstract void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param);
-    //浠诲姟鐘舵�佷负澶辫触
-    public abstract void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param);
-    //浠诲姟鐘舵�佷负鍙栨秷
-    public abstract void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param);
-    //浠诲姟鐘舵�佷负鎸傝捣
-    public abstract void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param);
+//    //浠诲姟鐘舵�佷负澶辫触
+//    public abstract void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param);
+//    //浠诲姟鐘舵�佷负鍙栨秷
+//    public abstract void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param);
+//    //浠诲姟鐘舵�佷负鎸傝捣
+//    public abstract void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param);
 
     @Setter
     AgvBasDevpService agvBasDevpService;

--
Gitblit v1.9.1