From f7359e4c48b19293798798f8226463519bcdd659 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期四, 19 十二月 2024 11:08:56 +0800
Subject: [PATCH] 优化AGV工作处理及上报逻辑

---
 src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java |   16 ++++++++++------
 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java |   30 ++++++++++++++++++++----------
 src/main/java/com/zy/asrs/task/ReportDataScheduler.java       |    3 +--
 3 files changed, 31 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/ReportDataScheduler.java b/src/main/java/com/zy/asrs/task/ReportDataScheduler.java
index 3e25641..a788232 100644
--- a/src/main/java/com/zy/asrs/task/ReportDataScheduler.java
+++ b/src/main/java/com/zy/asrs/task/ReportDataScheduler.java
@@ -59,13 +59,12 @@
 
 
     @Scheduled(fixedDelay = 5000)
-    @Async("reportThreadPool")
     public void execute() {
         log.info("瀹氭椂浠诲姟寮�濮嬫墽琛�");
         if (!flag) {
             return;
         }
-        Page<ReportData> objectPage = new Page<>(1, 1000);
+        Page<ReportData> objectPage = new Page<>(1, 100);
         Page<ReportData> reportData = reportDataService.selectPage(objectPage, new EntityWrapper<ReportData>().orderBy("create_time", false));
         if (reportData != null && !Cools.isEmpty(reportData.getRecords())) {
             Map<String, Object> mesTokenInfo = getMesTokenInfo();
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 61f6a6f..7ff5102 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -43,9 +43,9 @@
     //绉诲簱绫诲瀷鏁扮粍
     private static final List<Integer> MOVE_TYPE_List = new ArrayList<Integer>() {{
         add(11);
-        add(101);
         add(12);
-        add(53);
+        //add(53);
+        add(101);
         add(103);
         add(108);
         add(111);
@@ -135,6 +135,23 @@
             }
 
 
+            Integer pltType = agvWrkMast.getPltType();
+            if (Cools.isEmpty(pltType) && !Cools.isEmpty(agvWrkMast.getLocNo())) {
+                AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo());
+                if (agvLocMast != null) {
+                    pltType = agvLocMast.getPltType();
+                } else {
+                    if (!Cools.isEmpty(agvWrkMast.getSourceLocNo())) {
+                        agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo());
+                        if (agvLocMast != null) {
+                            pltType = agvLocMast.getPltType();
+                        }
+                    }
+                }
+            }
+            if (Cools.isEmpty(agvWrkMast.getPltType())) {
+                agvWrkMast.setPltType(pltType);
+            }
             agvWrkMast.setModiTime(new Date());
             //淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
             agvWrkMast.setWrkSts(207L);
@@ -336,13 +353,7 @@
 //                }
 //                agvWrkMastService.updateById(agvWrkMast);
 //            }
-            Integer pltType = agvWrkMast.getPltType();
-            if (Cools.isEmpty(pltType) && !Cools.isEmpty(agvWrkMast.getLocNo())) {
-                AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo());
-                if (agvLocMast != null) {
-                    pltType = agvLocMast.getPltType();
-                }
-            }
+
             if (!isJSON(orderNo)) {
                 //妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
                 orderService.checkComplete(orderNo, pltType);
@@ -733,7 +744,6 @@
         }
 
     }
-
 
 
     private void reportMesPakinOrder(AgvWrkMast agvWrkMast, List<AgvWrkDetl> agvWrkDetls) {
diff --git a/src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java b/src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java
index 139d6f1..58d15b1 100644
--- a/src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java
@@ -76,19 +76,23 @@
                     mesPath = orderReportPath;
                     break;
             }
-            doHttpRequest(data.getReportJson(), mesTokenInfo, data.getMemo(), url, mesPath, null, "127.0.0.1");
-            reportDataService.deleteById(data.getId());
             ReportDataLog reportDataLog = new ReportDataLog();
+            String fail = null;
+            if (!doHttpRequest(data.getReportJson(), mesTokenInfo, data.getMemo(), url, mesPath, null, "127.0.0.1")) {
+                fail = "fail";
+            }
+            reportDataService.deleteById(data.getId());
             BeanUtil.copyProperties(data, reportDataLog);
             reportDataLog.setReportTime(new Date());
             reportDataLog.setReportDataId(data.getId());
+            reportDataLog.setThreeCode(fail);
             reportDataLogService.insert(reportDataLog);
         }
         return SUCCESS;
     }
 
 
-    private JSONObject doHttpRequest(String requestParam, Map<String, Object> headParam, String namespace, String url, String path, String appkey, String ip) {
+    private Boolean doHttpRequest(String requestParam, Map<String, Object> headParam, String namespace, String url, String path, String appkey, String ip) {
         String response = "";
         boolean success = false;
 
@@ -102,14 +106,14 @@
                 throw new CoolException("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭�:" + jsonObject);
             }
             success = true;
-            return jsonObject;
+            return true;
 
         } catch (Exception e) {
             log.error(e.getMessage());
-            throw new CoolException(e.getMessage());
+            //throw new CoolException(e.getMessage());
         } finally {
             apiLogService.save(namespace, url + path, appkey, ip, requestParam, response, success);
         }
-
+        return false;
     }
 }

--
Gitblit v1.9.1