From 21357f1d42f995e11e99a12a5f225fe6442b9ad1 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期三, 08 一月 2025 13:05:09 +0800
Subject: [PATCH] 优化定时任务及日志输出,调整订单同步逻辑

---
 src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java |    4 +-
 src/main/java/com/zy/asrs/controller/OpenController.java          |   40 ++++++++++++++++++--
 src/main/java/com/zy/asrs/task/OrderSyncScheduler.java            |    6 ++-
 src/main/java/com/zy/asrs/task/AgvWarnScheduler.java              |    2 
 src/main/java/com/zy/asrs/task/ReportDataScheduler.java           |    2 -
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java       |   11 ++---
 6 files changed, 48 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index d930b2e..12294d2 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -1,15 +1,19 @@
 package com.zy.asrs.controller;
 
 import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.annotations.AppAuth;
 import com.core.common.BaseRes;
 import com.core.common.Cools;
 import com.core.common.R;
 import com.core.exception.CoolException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.zy.asrs.entity.ApiLog;
 import com.zy.asrs.entity.param.CheckParam;
 import com.zy.asrs.entity.param.MatSyncParam;
 import com.zy.asrs.entity.param.OrderProdSyncParam;
 import com.zy.asrs.entity.param.OrderSyncParam;
+import com.zy.asrs.service.ApiLogService;
 import com.zy.asrs.service.OpenService;
 import com.zy.common.utils.Synchro;
 import com.zy.common.web.BaseController;
@@ -18,7 +22,9 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -38,6 +44,11 @@
 
     @Autowired
     private OpenService openService;
+
+
+    @Autowired
+    private ApiLogService apiLogService;
+
 
     /**
      * 搴撳瓨缁熻
@@ -69,7 +80,7 @@
 
 
     private void auth(String appkey, Object obj, HttpServletRequest request) {
-        log.info("{}鎺ュ彛琚闂紱appkey:{}锛涜姹傛暟鎹細{}", "open/sensorType/list/auth/v1", appkey, JSON.toJSONString(obj));
+        //log.info("{}鎺ュ彛琚闂紱appkey:{}锛涜姹傛暟鎹細{}", "open/sensorType/list/auth/v1", appkey, JSON.toJSONString(obj));
         request.setAttribute("cache", obj);
         if (!auth) {
             return;
@@ -107,7 +118,7 @@
     public synchronized R orderPakin(@RequestHeader(required = false) String appkey,
                                      @RequestBody Map<String, Object> map,
                                      HttpServletRequest request) {
-        log.info("鐢熸垚鍏ュ簱鍗曟嵁,{}", JSON.toJSONString(map));
+        //log.info("鐢熸垚鍏ュ簱鍗曟嵁,{}", JSON.toJSONString(map));
         OrderProdSyncParam param = JSON.parseObject(JSON.toJSONString(map), OrderProdSyncParam.class);
         auth(appkey, param, request);
         if (Cools.isEmpty(param)) {
@@ -184,7 +195,7 @@
     @AppAuth(memo = "鍚屾宸ュ崟鍗曟嵁")
     public synchronized R orderPakout(@RequestHeader(required = false) String appkey,
                                       @RequestBody Map<String, Object> map) {
-        log.info("鍚屾宸ュ崟鍗曟嵁,{}", JSON.toJSONString(map));
+        //log.info("鍚屾宸ュ崟鍗曟嵁,{}", JSON.toJSONString(map));
         OrderProdSyncParam param = JSON.parseObject(JSON.toJSONString(map), OrderProdSyncParam.class);
         auth(appkey, param, request);
         if (Cools.isEmpty(param)) {
@@ -256,7 +267,7 @@
     public synchronized R orderPakin2(@RequestHeader(required = false) String appkey,
                                       @RequestBody Map<String, Object> map,
                                       HttpServletRequest request) {
-        log.info("鐢熸垚鍏ュ簱鍗曟嵁,{}", JSON.toJSONString(map));
+        //log.info("鐢熸垚鍏ュ簱鍗曟嵁,{}", JSON.toJSONString(map));
         OrderProdSyncParam param = JSON.parseObject(JSON.toJSONString(map), OrderProdSyncParam.class);
         auth(appkey, param, request);
         if (Cools.isEmpty(param)) {
@@ -465,4 +476,25 @@
 
         //return orderSyncParam;
     }
+
+//    @PostMapping("/order/add")
+//    public R re(@RequestHeader(required = false) String appkey,
+//                HttpServletRequest request) throws IOException {
+//        List<ApiLog> apiLogs = apiLogService.selectList(new EntityWrapper<ApiLog>().eq("url", "/phyzwms/open/asrs/order/pakin/default/v1").eq("response", "{\"msg\":\"鏈嶅姟鍣ㄩ敊璇痋",\"code\":500}").ge("create_time", "2025-01-06 00:00:00"));
+//        for (ApiLog apiLog : apiLogs) {
+//            Map<String, Object> param = new HashMap<>();
+//            ObjectMapper mapper = new ObjectMapper();
+//            if (!Cools.isEmpty(apiLog.getRequest())) {
+//                param = mapper.readValue(apiLog.getRequest(), Map.class);
+//                try {
+//                    orderPakin(appkey, param, request);
+//                } catch (Exception e) {
+//
+//                }
+//            }
+//        }
+//        return R.ok();
+//
+//    }
+
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java
index 18cb689..b815fa0 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java
@@ -56,10 +56,10 @@
         long flowId = snowflakeIdWorker.nextId();
         agvWrkDetls.stream().map(agvWrkDetl -> {
             AgvLocDetl agvLocDetl = new AgvLocDetl();
-            log.info("agvWrkDetl: " + agvLocDetl.getBarcode());
+            //log.info("agvWrkDetl: " + agvLocDetl.getBarcode());
             BeanUtils.copyProperties(agvWrkDetl, agvLocDetl);
             agvLocDetl.setLocNo(locNo);
-            log.info("zc娣诲姞搴撳瓨鏃ュ織:{}", JSON.toJSON(agvLocDetl));
+            //log.info("zc娣诲姞搴撳瓨鏃ュ織:{}", JSON.toJSON(agvLocDetl));
             this.insert(agvLocDetl);
             // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
             OrderDetl orderDetl = orderDetlService.selectItem(agvWrkDetl.getOrderNo(), agvWrkDetl.getMatnr(), agvWrkDetl.getBatch(), agvWrkDetl.getThreeCode());
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 6044ed0..daac737 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -1,5 +1,6 @@
 package com.zy.asrs.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.BaseRes;
 import com.core.common.Cools;
@@ -24,9 +25,7 @@
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -886,11 +885,11 @@
         }
         Date now = new Date();
         Order order = orderMapping(param, now, pakin, docName);
-        StringBuffer tel = new StringBuffer();
+        Set<String> set = new HashSet<>();
         for (OrderSyncParam.OrderDetl child : param.getChildren()) {
-            tel.append(child.getCDefine22()).append(";");
+            set.add(child.getCDefine22());
         }
-        order.setTel(tel.toString());
+        order.setTel(JSON.toJSONString(set));
         orderService.insert(order);
         param.getChildren().forEach(od -> {
             OrderDetl orderDetl = orderDetlMapping(order, od, now);
diff --git a/src/main/java/com/zy/asrs/task/AgvWarnScheduler.java b/src/main/java/com/zy/asrs/task/AgvWarnScheduler.java
index c242ad2..3dbc5f2 100644
--- a/src/main/java/com/zy/asrs/task/AgvWarnScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AgvWarnScheduler.java
@@ -69,7 +69,7 @@
         for (AgvWarn agvWarn : agvWarnList) {
             Integer warnTime = getWarnTime(agvWarn.getTimes(), first.getValue(), second.getValue(), third.getValue());
             DateTime begin = DateUtil.parse(agvWarn.getBeginTime(), "yyyy-MM-dd HH:mm:ss");
-            if (DateUtil.offsetMinute(begin, warnTime).before(new Date())) {
+            if (DateUtil.offsetMinute(new Date(), -warnTime).after(begin)) {
                 buffer = new StringBuffer();
                 buffer.append(processRegion(agvs, agvWarn.getRobotCode()) + "[" + agvWarn.getRobotCode() + "]鍙稟GV灏忚溅鎶ヨ浜哱n");
                 buffer.append("鎶ヨ绫诲瀷锛�" + agvWarn.getWarnContent() + "\n");
diff --git a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
index f579f89..363bd55 100644
--- a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
+++ b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
@@ -50,7 +50,7 @@
     }
 
     //@Scheduled(cron = "0/5 * * * * ? ")
-    @Scheduled(fixedDelay = 5000)
+    @Scheduled(fixedDelay = 600000)
     //@Async("orderThreadPool")
     public void completeAndReport() {
         String erpReport = Parameter.get().getErpReport();
@@ -102,7 +102,9 @@
     public void completeOrder() {
         List<Order> orderList = orderService.selectList(new EntityWrapper<Order>().eq("settle", 2).isNotNull("plt_type"));
         orderList.forEach(order -> {
-            orderService.checkComplete(order.getOrderNo(), order.getPltType());
+            if (order.getPltType() != null) {
+                orderService.checkComplete(order.getOrderNo(), order.getPltType());
+            }
         });
     }
 
diff --git a/src/main/java/com/zy/asrs/task/ReportDataScheduler.java b/src/main/java/com/zy/asrs/task/ReportDataScheduler.java
index 84cd5cb..a7e968c 100644
--- a/src/main/java/com/zy/asrs/task/ReportDataScheduler.java
+++ b/src/main/java/com/zy/asrs/task/ReportDataScheduler.java
@@ -62,7 +62,6 @@
 
     @Scheduled(fixedDelay = 30000)
     public void execute() {
-        log.info("瀹氭椂浠诲姟寮�濮嬫墽琛�");
         if (!flag) {
             return;
         }
@@ -78,7 +77,6 @@
                 }
             }
         }
-        log.info("瀹氭椂浠诲姟缁撴潫鎵ц");
     }
 
     //鑾峰彇mes token淇℃伅

--
Gitblit v1.9.1