From 0cdbbb60b9549be1c99ff7d5a37936dadac61649 Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期三, 27 三月 2024 10:50:30 +0800
Subject: [PATCH] AGV任务下发

---
 src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java          |   24 +++--
 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java    |   72 ++++++++----------
 src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java         |   15 ++-
 src/main/java/com/zy/asrs/service/AgvWrkMastService.java         |    2 
 src/main/java/com/zy/asrs/task/OrderSyncScheduler.java           |    2 
 src/main/java/com/zy/asrs/controller/AgvWrkMastController.java   |   53 ++++++------
 src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java |   51 ++++--------
 src/main/java/com/zy/asrs/entity/param/AgvTaskCreateParam.java   |   17 ++-
 8 files changed, 110 insertions(+), 126 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvWrkMastController.java b/src/main/java/com/zy/asrs/controller/AgvWrkMastController.java
index 56c60df..58aa710 100644
--- a/src/main/java/com/zy/asrs/controller/AgvWrkMastController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvWrkMastController.java
@@ -17,7 +17,6 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import java.io.IOException;
 import java.util.*;
 
 @RestController
@@ -158,30 +157,30 @@
         return R.ok();
     }
 
-    @RequestMapping(value = "/wrkMast/startWrk/auth")
-    @ManagerAuth(memo = "宸ヤ綔妗e紑濮嬩换鍔�")
-    public R startWrk(@RequestParam String param) throws IOException {
-        List<AgvWrkMast> agvWrkMastList = JSONArray.parseArray(param, AgvWrkMast.class);
-        if (Cools.isEmpty(agvWrkMastList)){
-            return R.error();
-        }
-        int startWrkCode = agvWrkMastService.startWrk(agvWrkMastList,"putaway");
-
-        int code = agvWrkMastService.containerMoveIn(agvWrkMastList);
-
-        if(code == 0){
-            agvWrkMastList.forEach(agvWrkMast -> {
-                //202.RCS鍙栬揣涓�
-                agvWrkMast.setWrkSts((long)202);
-                //淇敼AGV鍏ュ簱閫氱煡妗g姸鎬佸叆鍑虹姸鎬佷负Y
-                agvWaitPakinService.updateIoStatus(agvWrkMast.getWrkNo(),"Y");
-            });
-            agvWrkMastService.updateBatchById(agvWrkMastList);
-
-            return R.ok("浠诲姟鍚姩鎴愬姛");
-        }
-
-        return R.error("浠诲姟鍚姩澶辫触");
-
-    }
+//    @RequestMapping(value = "/wrkMast/startWrk/auth")
+//    @ManagerAuth(memo = "宸ヤ綔妗e紑濮嬩换鍔�")
+//    public R startWrk(@RequestParam String param) throws IOException {
+//        List<AgvWrkMast> agvWrkMastList = JSONArray.parseArray(param, AgvWrkMast.class);
+//        if (Cools.isEmpty(agvWrkMastList)){
+//            return R.error();
+//        }
+//        int startWrkCode = agvWrkMastService.startWrk(agvWrkMastList,"putaway");
+//
+//        int code = agvWrkMastService.containerMoveIn(agvWrkMastList);
+//
+//        if(code == 0){
+//            agvWrkMastList.forEach(agvWrkMast -> {
+//                //202.RCS鍙栬揣涓�
+//                agvWrkMast.setWrkSts((long)202);
+//                //淇敼AGV鍏ュ簱閫氱煡妗g姸鎬佸叆鍑虹姸鎬佷负Y
+//                agvWaitPakinService.updateIoStatus(agvWrkMast.getWrkNo(),"Y");
+//            });
+//            agvWrkMastService.updateBatchById(agvWrkMastList);
+//
+//            return R.ok("浠诲姟鍚姩鎴愬姛");
+//        }
+//
+//        return R.error("浠诲姟鍚姩澶辫触");
+//
+//    }
 }
diff --git a/src/main/java/com/zy/asrs/entity/param/AgvTaskCreateParam.java b/src/main/java/com/zy/asrs/entity/param/AgvTaskCreateParam.java
index 3591466..fc32cd3 100644
--- a/src/main/java/com/zy/asrs/entity/param/AgvTaskCreateParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/AgvTaskCreateParam.java
@@ -13,17 +13,20 @@
 
     private static final long serialVersionUID = 1L;
 
-    //浠诲姟绫诲瀷  putaway锛氫笂鏋�; carry锛氭惉杩愶紝缁熸寚鍑哄簱銆佺Щ搴撱�佺偣鍒扮偣鎼繍绛�; scan锛氭壂鎻忕洏鐐�; weight锛氱О閲嶇洏鐐�; rfid锛歳fid鐩樼偣
-    private String taskType;
+    //浠诲姟鍙�
+    private String reqCode;
 
-    //浠诲姟缁�
-    private String taskGroupCode;
+    //浠诲姟绫诲瀷
+    private String taskTyp;
 
-    //浠诲姟缁勪紭鍏堢骇
-    private int groupPriority;
+//    //浠诲姟缁�
+//    private String taskGroupCode;
+//
+//    //浠诲姟缁勪紭鍏堢骇
+//    private int groupPriority;
 
     //浠诲姟鍒楄〃
-    private List<AgvTaskParam> tasks;
+    private List<AgvTaskParam> positionCodePath;
 }
 
 
diff --git a/src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java b/src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java
index c311939..29e036e 100644
--- a/src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/AgvTaskParam.java
@@ -4,10 +4,13 @@
 
 @Data
 public class AgvTaskParam {
-    //涓氬姟浠诲姟鍙�
-    private String taskCode;
-    //浠诲姟浼樺厛绾�
-    private int taskPriority;
-    //浠诲姟鎻忚堪
-    private AgvTaskkDescribeParam taskDescribe;
+    //浣嶇疆缂栧彿
+    private String positionCode;
+    //浣嶇疆绫诲瀷璇存槑 00琛ㄧず浣嶇疆缂栧彿
+    private String type;
+
+    public AgvTaskParam(String positionCode){
+        this.positionCode = positionCode;
+        this.type = "00";
+    }
 }
diff --git a/src/main/java/com/zy/asrs/service/AgvWrkMastService.java b/src/main/java/com/zy/asrs/service/AgvWrkMastService.java
index 0aca706..09d993d 100644
--- a/src/main/java/com/zy/asrs/service/AgvWrkMastService.java
+++ b/src/main/java/com/zy/asrs/service/AgvWrkMastService.java
@@ -10,7 +10,7 @@
 
     public void updateWrkStsByWrkNo(int wrkNo, long wrkSts);
 
-    public int startWrk(List<AgvWrkMast> agvWrkMastList, String taskType) throws IOException;
+    public int startWrk(AgvWrkMast agvWrkMast) throws IOException;
 
     public int containerMoveIn(List<AgvWrkMast> agvWrkMastList) throws IOException;
 
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
index 964f52f..65fc736 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -10,7 +10,6 @@
 import com.zy.asrs.entity.AgvWrkMast;
 import com.zy.asrs.entity.param.AgvTaskCreateParam;
 import com.zy.asrs.entity.param.AgvTaskParam;
-import com.zy.asrs.entity.param.AgvTaskkDescribeParam;
 import com.zy.asrs.mapper.AgvWrkMastMapper;
 import com.zy.asrs.service.*;
 import com.zy.common.utils.HttpHandler;
@@ -20,11 +19,7 @@
 import org.springframework.stereotype.Service;
 
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
+import java.util.*;
 
 @Service
 @Slf4j
@@ -72,12 +67,12 @@
         return true;
     }
 
-    public int startWrk(List<AgvWrkMast> agvWrkMastList, String taskType) throws IOException {
+    public int startWrk(AgvWrkMast agvWrkMast) throws IOException {
 
         AgvTaskCreateParam agvTaskCreateParam = new AgvTaskCreateParam();
-        agvTaskCreateParam.setTaskType(taskType);
+        //agvTaskCreateParam.setTaskType(taskType);
 
-        getRequestParam(agvTaskCreateParam,agvWrkMastList);
+        getRequestParam(agvTaskCreateParam,agvWrkMast);
 
         return doHttpRequest(agvTaskCreateParam,"鎼繍浠诲姟涓嬪彂",url, taskCreatePath,null,"127.0.0.1");
 
@@ -161,35 +156,23 @@
         }
     }
 
-    private void getRequestParam(AgvTaskCreateParam agvTaskCreateParam,List<AgvWrkMast> agvWrkMastList){
-        List<AgvTaskParam> agvTaskParamList = agvWrkMastList.stream().map(agvWrkMast -> {
-            AgvTaskParam agvTaskParam = new AgvTaskParam();
-            AgvTaskkDescribeParam agvTaskkDescribeParam = new AgvTaskkDescribeParam();
-            agvTaskParam.setTaskDescribe(agvTaskkDescribeParam);
-            //AgvTaskParam
-            if(agvWrkMast.getIoType() == 53 || agvWrkMast.getIoType() == 57){
-                agvTaskParam.setTaskCode(-agvWrkMast.getWrkNo() + "");
-            }else{
-                agvTaskParam.setTaskCode(agvWrkMast.getWrkNo() + "");
-            }
+    private void getRequestParam(AgvTaskCreateParam agvTaskCreateParam,AgvWrkMast agvWrkMast){
 
-            agvTaskParam.setTaskPriority(agvWrkMast.getIoPri().intValue());
+        List<AgvTaskParam> agvTaskParamList = Arrays.asList(
+                //璧峰浣�
+                new AgvTaskParam(agvWrkMast.getSourceLocNo()),
+                //鐩爣浣�
+                new AgvTaskParam(agvWrkMast.getLocNo()));
 
-            //AgvTaskkDescribeParam
-            if(agvWrkMast.getSourceLocNo().contains("CS") || agvWrkMast.getSourceLocNo().contains("SK")){
-                agvTaskkDescribeParam.setFromLocationCode(agvWrkMast.getSourceLocNo());
-            }
+//        //璧峰浣�
+//        agvTaskParamList.add(new AgvTaskParam(agvWrkMast.getSourceLocNo()));
+//        //鐩爣浣�
+//        agvTaskParamList.add(new AgvTaskParam(agvWrkMast.getLocNo()));
 
-            if(agvWrkMast.getLocNo().contains("SK")){
-                agvTaskkDescribeParam.setToLocationCode(agvWrkMast.getLocNo());
-            }else {
-                agvTaskkDescribeParam.setToStationCode(agvWrkMast.getLocNo());
-            }
-            agvTaskkDescribeParam.setContainerCode(agvWrkMast.getBarcode());
-            return agvTaskParam;
-        }).collect(Collectors.toList());
+        agvTaskCreateParam.setReqCode(agvWrkMast.getWrkNo().toString());
+        agvTaskCreateParam.setTaskTyp("F01");
+        agvTaskCreateParam.setPositionCodePath(agvTaskParamList);
 
-        agvTaskCreateParam.setTasks(agvTaskParamList);
     }
 
     private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip){
diff --git a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
index 3a0a601..4f425b5 100644
--- a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -86,11 +86,13 @@
                 .or().eq("io_type", 57)).getRecords();
 
         if(!Cools.isEmpty(agvWrkMastList)){
-            try {
-                ReturnT<String> returnT = agvWrkMastHandler.startPutWayWrk(agvWrkMastList);
-            } catch (IOException e) {
-                log.error(e.getMessage());
-            }
+            agvWrkMastList.forEach(agvWrkMast -> {
+                try {
+                    agvWrkMastHandler.startPutWayWrk(agvWrkMast);
+                } catch (IOException e) {
+                    log.error(e.getMessage());
+                }
+            });
         }
     }
 
@@ -111,11 +113,13 @@
                         .or().eq("io_type", 107)).getRecords();
 
         if(!Cools.isEmpty(agvWrkMastList)){
-            try {
-                ReturnT<String> returnT = agvWrkMastHandler.startCarryWrk(agvWrkMastList);
-            } catch (IOException e) {
-                log.error(e.getMessage());
-            }
+            agvWrkMastList.forEach(agvWrkMast -> {
+                try {
+                    agvWrkMastHandler.startPutWayWrk(agvWrkMast);
+                } catch (IOException e) {
+                    log.error(e.getMessage());
+                }
+            });
         }
     }
 
diff --git a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
index 84bfaa1..db31a00 100644
--- a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
+++ b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
@@ -39,7 +39,7 @@
         }
     }
 
-    @Scheduled(cron = "0/5 * * * * ? ")
+    //@Scheduled(cron = "0/5 * * * * ? ")
     @Async("orderThreadPool")
     public void completeAndReport(){
         String erpReport = Parameter.get().getErpReport();
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index 0134534..9ecfc10 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -146,55 +146,47 @@
     }
 
     @Transactional
-    public ReturnT<String> startPutWayWrk(List<AgvWrkMast> agvWrkMastList) throws IOException {
+    public ReturnT<String> startPutWayWrk(AgvWrkMast agvWrkMast) throws IOException {
 
         //涓嬪彂浠诲姟
-        int startWrkCode = agvWrkMastService.startWrk(agvWrkMastList,"putaway");
+        int startWrkCode = agvWrkMastService.startWrk(agvWrkMast);
         if(startWrkCode != 0){
             throw new CoolException("浠诲姟涓嬪彂澶辫触");
         }
 
-        //涓嬪彂瀹瑰櫒鍏ュ満鎸囦护 锛堢紦瀛樿揣鏋讹級
-        int code = agvWrkMastService.containerMoveIn(agvWrkMastList);
-
-        if(code == 0){
-            for(AgvWrkMast agvWrkMast : agvWrkMastList){
-                //202.RCS鍙栬揣涓�
-                agvWrkMast.setWrkSts(202L);
-                agvWrkMastService.updateById(agvWrkMast);
-                if(agvWrkMast.getIoType() == 1){
-                    //淇敼AGV鍏ュ簱閫氱煡妗g姸鎬佸叆鍑虹姸鎬佷负Y
-                    agvWaitPakinService.updateIoStatus(agvWrkMast.getWrkNo(),"Y");
-                }
-            }
-            return SUCCESS;
+        agvWrkMast.setWrkSts(202L);
+        agvWrkMastService.updateById(agvWrkMast);
+        if(agvWrkMast.getIoType() == 1){
+            //淇敼AGV鍏ュ簱閫氱煡妗g姸鎬佸叆鍑虹姸鎬佷负Y
+            agvWaitPakinService.updateIoStatus(agvWrkMast.getWrkNo(),"Y");
         }
-        return FAIL;
+        return SUCCESS;
+
     }
 
-    @Transactional
-    public ReturnT<String> startCarryWrk(List<AgvWrkMast> agvWrkMastList) throws IOException {
-        //log.info(agvWrkMastList.toString());
-        //浠诲姟杩囨护锛岃繃婊ゆ帀宸插瓨鍦ㄧ浉鍚岀洰鏍囧簱浣嶇殑宸ヤ綔妗�
-        //agvWrkMastList = filter(agvWrkMastList);
-        int code = agvWrkMastService.startWrk(agvWrkMastList,"carry");
-        //log.info(agvWrkMastList.toString());
-        if (Cools.isEmpty(agvWrkMastList)){
-            return SUCCESS;
-        }
-        if(code == 0){
-            agvWrkMastList.forEach(agvWrkMast -> {
-                //202.RCS鍙栬揣涓�
-                agvWrkMast.setWrkSts(202L);
-                agvWrkMastService.updateById(agvWrkMast);
-            });
-            //agvWrkMastService.updateBatchById(agvWrkMastList);
-
-            return SUCCESS;
-        }
-
-        return FAIL;
-    }
+//    @Transactional
+//    public ReturnT<String> startCarryWrk(AgvWrkMast agvWrkMast) throws IOException {
+//        //log.info(agvWrkMastList.toString());
+//        //浠诲姟杩囨护锛岃繃婊ゆ帀宸插瓨鍦ㄧ浉鍚岀洰鏍囧簱浣嶇殑宸ヤ綔妗�
+//        //agvWrkMastList = filter(agvWrkMastList);
+//        int code = agvWrkMastService.startWrk(agvWrkMast);
+//        //log.info(agvWrkMastList.toString());
+//        if (Cools.isEmpty(agvWrkMastList)){
+//            return SUCCESS;
+//        }
+//        if(code == 0){
+//            agvWrkMastList.forEach(agvWrkMast -> {
+//                //202.RCS鍙栬揣涓�
+//                agvWrkMast.setWrkSts(202L);
+//                agvWrkMastService.updateById(agvWrkMast);
+//            });
+//            //agvWrkMastService.updateBatchById(agvWrkMastList);
+//
+//            return SUCCESS;
+//        }
+//
+//        return FAIL;
+//    }
 
     @Synchronized
     @Transactional

--
Gitblit v1.9.1