From 1ce8c694a364916fa45c60cabedb7a9215003055 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期四, 19 三月 2026 13:41:31 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneBuilder.java                |   11 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/floyd/FloydNavigateService.java |    5 
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java             |    7 
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvCmdService.java              |    9 +
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainLockWrapService.java        |   11 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java            |   11 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java             |   25 ++--
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java                |   71 +++++++-------
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java   |   15 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java             |   58 +++++-----
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PathQueueConsumer.java          |   13 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/GuaranteeRuntimeService.java    |   12 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java        |   17 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java              |   17 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java                 |    5 
 15 files changed, 150 insertions(+), 137 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvCmdService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvCmdService.java
index e383d6f..a3108b8 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvCmdService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvCmdService.java
@@ -16,6 +16,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import com.zy.acs.common.utils.News;
 
 import java.util.concurrent.TimeoutException;
 
@@ -36,7 +37,7 @@
     public BaseResult<?> executeAgvActionCmd(AgvAction agvAction) {
 
         // todo 1: 璁板綍鏃ュ織 2锛氬彂閫佷换鍔�  3锛氬悓姝ュ搷搴�
-//        log.info(JSON.toJSONString(agvAction));
+//        News.info(JSON.toJSONString(agvAction));
 
         String serialNo = agvAction.getSerialNo();
 
@@ -50,7 +51,7 @@
     public BaseResult<?> executeAgvCommand(AgvCommand agvCommand) {
 
         // todo 1: 璁板綍鏃ュ織 2锛氬彂閫佷换鍔�  3锛氬悓姝ュ搷搴�
-        log.info(JSON.toJSONString(agvCommand));
+        News.info(JSON.toJSONString(agvCommand));
 
         String serialNo = agvCommand.getSerialNo();
 
@@ -70,7 +71,7 @@
                 return BaseResult.error();
             }
         } catch (TimeoutException e){
-            log.error("AgvCmdService.requestProcess", e);
+            News.error("AgvCmdService.requestProcess", e);
             return BaseResult.error();
         }
     }
@@ -99,4 +100,4 @@
         throw new TimeoutException();
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java
index ed9cf97..2f62b40 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java
@@ -19,6 +19,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
+import com.zy.acs.common.utils.News;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -65,7 +66,7 @@
 
         Long agvId = agvService.getAgvId(protocol.getAgvNo());
         if (null == agvId) {
-            log.warn("Agv [{}] 灏氭湭閴存潈 锛侊紒锛�", protocol.getAgvNo());
+            News.warn("Agv [{}] 灏氭湭閴存潈 锛侊紒锛�", protocol.getAgvNo());
             return;
         }
         AgvDetail detail = agvDetailService.selectByAgvId(agvId);
@@ -73,7 +74,7 @@
             detail = new AgvDetail();
             detail.setAgvId(agvId);
             if (!agvDetailService.save(detail)) {
-                log.error("Agv [{}] 璇︽儏鏇存柊澶辫触 锛侊紒锛�", protocol.getAgvNo());
+                News.error("Agv [{}] 璇︽儏鏇存柊澶辫触 锛侊紒锛�", protocol.getAgvNo());
                 return;
             }
         }
@@ -95,7 +96,7 @@
             this.sync(agv_12_up, detail);
 //            redis.setObject(RedisConstant.DIGITAL_AGV_FLAG, agv.getUuid(), agv_12_up);
             if (PRINT_LOG) {
-                log.info("Agv [{}] 鏈夌爜瀹炴椂鏁版嵁鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_12_up));
+                News.info("Agv [{}] 鏈夌爜瀹炴椂鏁版嵁鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_12_up));
             }
         }
         // 鏃犵爜瀹炴椂鏁版嵁鍖�
@@ -105,7 +106,7 @@
             this.sync(agv_13_up, detail);
 //            redis.setObject(RedisConstant.DIGITAL_AGV_FLAG, agv.getUuid(), agv_13_up);
             if (PRINT_LOG) {
-                log.info("Agv [{}] 鏃犵爜瀹炴椂鏁版嵁鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_13_up));
+                News.info("Agv [{}] 鏃犵爜瀹炴椂鏁版嵁鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_13_up));
             }
         }
         // 蹇冭烦鍖�
@@ -113,20 +114,20 @@
             AGV_03_UP agv_03_up = (AGV_03_UP) msgBody;
             this.sync(agv_03_up, detail);
             if (PRINT_LOG) {
-                log.info("Agv [{}] 蹇冭烦鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_03_up));
+                News.info("Agv [{}] 蹇冭烦鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_03_up));
             }
         }
         // 鐧婚檰鍖�
         if (msgBody instanceof AGV_F0_UP) {
             AGV_F0_UP agv_f0_up = (AGV_F0_UP) msgBody;
             this.sync(agv_f0_up, detail);
-            log.info("Agv [{}] 鐧婚檰鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_f0_up));
+            News.info("Agv [{}] 鐧婚檰鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_f0_up));
         }
         // 鏁呴殰鏁版嵁鍖�
         if (msgBody instanceof AGV_04_UP) {
             AGV_04_UP agv_04_up = (AGV_04_UP) msgBody;
             AgvErrorType errorType = AgvErrorType.query(agv_04_up.getHexFaultId());
-            log.info("Agv [{}] 鏁呴殰鏁版嵁鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_04_up));
+            News.info("Agv [{}] 鏁呴殰鏁版嵁鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_04_up));
 
             // save
             faultProcessor.execute(new VehicleFaultDto<>(protocol.getAgvNo(), protocol.getTimestamp(), agv_04_up));
@@ -145,7 +146,7 @@
             }
         }
         if (!agvDetailService.updateById(detail)) {
-            log.error("Agv [{}] 璇︽儏鏇存柊澶辫触 锛侊紒锛�", protocol.getAgvNo());
+            News.error("Agv [{}] 璇︽儏鏇存柊澶辫触 锛侊紒锛�", protocol.getAgvNo());
         }
 
     }
@@ -160,10 +161,10 @@
             detail.setLastCode(null);
             detail.setPos(1);
 //            if (!agvDetailService.updatePosCode(detail.getId(), code.getId())) {
-//                log.error("Agv [{}] 鏇存柊瀹氫綅鏁版嵁澶辫触 锛侊紒锛�", agvService.getById(detail.getAgvId()).getUuid());
+//                News.error("Agv [{}] 鏇存柊瀹氫綅鏁版嵁澶辫触 锛侊紒锛�", agvService.getById(detail.getAgvId()).getUuid());
 //            }
         } else {
-            log.error("Agv [{}] 鏇存柊瀹氫綅鏁版嵁澶辫触 锛侊紒锛佷笂浼犳潯鐮侊細{}", agvService.getById(detail.getAgvId()).getUuid(), mesBody.getQrCode());
+            News.error("Agv [{}] 鏇存柊瀹氫綅鏁版嵁澶辫触 锛侊紒锛佷笂浼犳潯鐮侊細{}", agvService.getById(detail.getAgvId()).getUuid(), mesBody.getQrCode());
         }
 
         // 鍦伴潰鐮佸亸绉�
@@ -217,7 +218,7 @@
 
 
         } else {
-            log.error("Agv [{}] 鏇存柊瀹氫綅鏁版嵁澶辫触 锛侊紒锛佷笂浼犳潯鐮侊細{}", agvService.getById(detail.getAgvId()).getUuid(), mesBody.getQrCode());
+            News.error("Agv [{}] 鏇存柊瀹氫綅鏁版嵁澶辫触 锛侊紒锛佷笂浼犳潯鐮侊細{}", agvService.getById(detail.getAgvId()).getUuid(), mesBody.getQrCode());
         }
 
         detail.setStraightVal((double) mesBody.getStraightDirectionPosition());
@@ -281,4 +282,4 @@
 
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java
index 4763a54..9b5d35c 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java
@@ -15,6 +15,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import com.zy.acs.common.utils.News;
 
 import java.util.*;
 import java.util.stream.Collectors;
@@ -162,7 +163,7 @@
         List<String> availableAgvNos = this.getAvailableAgvNos(agvAreaDispatcher.getAgvIdsByTask(task), false);
 //        List<String> availableAgvNos = this.getAvailableAgvNos(null);
         if (Cools.isEmpty(availableAgvNos)) {
-//            log.warn("No available agv to assign the task[{}]", task.getSeqNum());
+//            News.warn("No available agv to assign the task[{}]", task.getSeqNum());
             return null;
         }
 
@@ -325,16 +326,16 @@
 
         // valid
         if (Cools.isEmpty(availableAgvNosByOriLane)) {
-            log.warn("No available agv to assign the task origin[{}]", task.getSeqNum());
+            News.warn("No available agv to assign the task origin[{}]", task.getSeqNum());
             return null;
         }
         if (Cools.isEmpty(availableAgvNosByDestLane)) {
-            log.warn("No available agv to assign the task destination[{}]", task.getSeqNum());
+            News.warn("No available agv to assign the task destination[{}]", task.getSeqNum());
             return null;
         }
         List<String> actualAvailableAgvNos = Cools.getIntersection(availableAgvNosByOriLane, availableAgvNosByDestLane);
         if (Cools.isEmpty(actualAvailableAgvNos)) {
-            log.warn("No available agv to assign the task[{}]", task.getSeqNum());
+            News.warn("No available agv to assign the task[{}]", task.getSeqNum());
             return null;
         }
 
@@ -526,4 +527,4 @@
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java
index 013b8bc..fde98c2 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java
@@ -26,6 +26,7 @@
 import org.springframework.core.io.ClassPathResource;
 import org.springframework.core.io.Resource;
 import org.springframework.stereotype.Component;
+import com.zy.acs.common.utils.News;
 
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
@@ -92,7 +93,7 @@
 
         try {
             if (!(lockAcquired = lock.tryLock(LOCK_TIMEOUT, TimeUnit.SECONDS))) {
-                log.warn("AvoidWaveCalculator execute fail, cause can not acquire lock ...");
+                News.warn("AvoidWaveCalculator execute fail, cause can not acquire lock ...");
                 return false;
             }
 
@@ -101,7 +102,7 @@
 
         } catch (Exception e) {
 
-            log.error(this.getClass().getSimpleName(), e);
+            News.error(this.getClass().getSimpleName(), e);
             return false;
         } finally {
 
@@ -111,14 +112,14 @@
 
             long during = System.currentTimeMillis() - startTime;
             if (during > 50) {
-                log.info("婊ゆ尝鍑芥暟鑺辫垂鏃堕棿涓猴細{}姣......", during);
+                News.info("婊ゆ尝鍑芥暟鑺辫垂鏃堕棿涓猴細{}姣......", during);
             }
         }
     }
 
 //    private boolean calcWaveScopeByPython(Integer lev, AgvModel agvModel) throws Exception {
 //        if (null == agvModel.getDiameter() || agvModel.getDiameter() <= 0) {
-//            log.warn("There is no diameter or diameter value was wrong...");
+//            News.warn("There is no diameter or diameter value was wrong...");
 //        }
 //
 //        // python
@@ -151,8 +152,8 @@
 //
 //        int exitCode = process.waitFor();
 //        if (exitCode != 0) {
-//            log.error("Python script exited with error code: {}", exitCode);
-//            log.error("python error:{}", builder.toString());
+//            News.error("Python script exited with error code: {}", exitCode);
+//            News.error("python error:{}", builder.toString());
 //            return false;
 //        }
 //        reader.close();
@@ -167,7 +168,7 @@
 //            return false;
 //        }
 //        if (!"1".equals(result)) {
-//            log.error("Failed to call python");
+//            News.error("Failed to call python");
 //            return false;
 //        }
 //
@@ -298,4 +299,4 @@
         this.singleThreadExecutor.shutdownNow();
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java
index 00eed5b..e453a9b 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/FaultProcessor.java
@@ -15,6 +15,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
+import com.zy.acs.common.utils.News;
 
 import java.util.Date;
 
@@ -57,12 +58,12 @@
             vehFaultRec.setProtocol(RadixTools.bytesToHexStr(agv_04_up.writeToBytes()));
 
             if (!vehFaultRecService.save(vehFaultRec)) {
-                log.error("{}鍙疯溅杈嗘晠闅滐紒璁板綍鏁呴殰淇℃伅澶辫触......", dto.getVehicle());
+                News.error("{}鍙疯溅杈嗘晠闅滐紒璁板綍鏁呴殰淇℃伅澶辫触......", dto.getVehicle());
             }
 
         } catch (Exception e) {
-            log.error("FaultProcessor", e);
+            News.error("FaultProcessor", e);
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/GuaranteeRuntimeService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/GuaranteeRuntimeService.java
index 3b8c2c3..ba553f3 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/GuaranteeRuntimeService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/GuaranteeRuntimeService.java
@@ -12,6 +12,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import com.zy.acs.common.utils.News;
 
 import java.time.LocalDateTime;
 import java.util.ArrayList;
@@ -37,7 +38,7 @@
     public void prepare(Guarantee plan, LocalDateTime targetTime) {
         int requiredCount = plan.getRequiredCount() == null ? 0 : plan.getRequiredCount();
         if (requiredCount <= 0) {
-            log.warn("Guarantee[{}] requiredCount is not configured, skip", plan.getName());
+            News.warn("Guarantee[{}] requiredCount is not configured, skip", plan.getName());
             return;
         }
         int minSoc = plan.getMinSoc();
@@ -63,7 +64,6 @@
             }
         }
         if (available >= requiredCount) {
-//            log.debug("Guarantee[{}] already has {} vehicles >= {}% SOC for {}", plan.getName(), available, minSoc, targetTime);
             return;
         }
         int shortage = requiredCount - available;   // 杩樺樊澶氬皯杈�
@@ -73,13 +73,13 @@
             if (scheduled >= shortage) {
                 break;
             }
-            log.info("Guarantee[{}] schedule AGV {} charging (soc={}%) for target {}",
+            News.info("Guarantee[{}] schedule AGV {} charging (soc={}%) for target {}",
                     plan.getName(), candidate.getAgv().getName(), candidate.getSoc(), targetTime);
             mainLockWrapService.buildMinorTask(candidate.getAgv().getId(), TaskTypeType.TO_CHARGE, null, null);
             scheduled++;
         }
         if (scheduled < shortage) {
-            log.warn("Guarantee[{}] still short of {} vehicles for {} (only {} idle low-soc AGVs)",
+            News.warn("Guarantee[{}] still short of {} vehicles for {} (only {} idle low-soc AGVs)",
                     plan.getName(), shortage - scheduled, targetTime, candidates.size());
         }
     }
@@ -128,7 +128,7 @@
             try {
                 wrapper.eq(Agv::getAgvModel, Long.valueOf(plan.getScopeValue()));
             } catch (NumberFormatException ignore) {
-                log.warn("Guarantee[{}] invalid scopeValue {}", plan.getName(), plan.getScopeValue());
+                News.warn("Guarantee[{}] invalid scopeValue {}", plan.getName(), plan.getScopeValue());
             }
         }
         return agvService.list(wrapper);
@@ -145,4 +145,4 @@
         }
 
     }
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneBuilder.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneBuilder.java
index 7f0c2a4..3549416 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneBuilder.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneBuilder.java
@@ -17,6 +17,7 @@
 import org.springframework.boot.context.event.ApplicationReadyEvent;
 import org.springframework.context.event.EventListener;
 import org.springframework.stereotype.Service;
+import com.zy.acs.common.utils.News;
 
 import java.security.MessageDigest;
 import java.security.NoSuchAlgorithmException;
@@ -105,7 +106,7 @@
             stopWatch.start();
             this.initLaneData();
             stopWatch.stop();
-            log.info("the rcs system calculated lane data which has spend {} millisecond......", stopWatch.getTime());
+            News.info("the rcs system calculated lane data which has spend {} millisecond......", stopWatch.getTime());
 
             if (!Cools.isEmpty(this.laneDtoList)) {
                 laneService.batchSaveByLaneDtoList(null, this.laneDtoList);
@@ -118,7 +119,7 @@
     }
 
     private void initLaneData() {
-        log.info("the rcs system is starting to initialize lane data...");
+        News.info("the rcs system is starting to initialize lane data...");
 
         List<Code> codeList = codeService.list(new LambdaQueryWrapper<Code>().eq(Code::getStatus, StatusType.ENABLE.val));
 
@@ -134,7 +135,7 @@
 
         this.generateLaneHash();
 
-        log.info("the lane data initialization has been completed in rcs system.");
+        News.info("the lane data initialization has been completed in rcs system.");
     }
 
     private void fillAdjacencyCodeMap(List<Code> codeList) {
@@ -421,7 +422,7 @@
         try {
             md = MessageDigest.getInstance("SHA-256");
         } catch (NoSuchAlgorithmException e) {
-            log.error("generateDigest", e);
+            News.error("generateDigest", e);
             throw new RuntimeException(e);
         }
         String combined = list.stream().sorted().collect(Collectors.joining(","));
@@ -435,7 +436,7 @@
     }
 
     public void generateLaneCodeIdx(Integer lev) {
-        log.info("There is initializing Lane CodeIdxMap......");
+        News.info("There is initializing Lane CodeIdxMap......");
         if (Cools.isEmpty(this.laneDtoList)) {
             return;
         }
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainLockWrapService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainLockWrapService.java
index 0021542..3cc735d 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainLockWrapService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainLockWrapService.java
@@ -9,6 +9,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
+import com.zy.acs.common.utils.News;
 
 import java.util.List;
 import java.util.concurrent.TimeUnit;
@@ -37,7 +38,7 @@
             mainService.buildMajorTask(agvId, taskList);
         } catch (Exception e) {
 
-            log.error("MainLockWrapService.buildMajorTask[task]", e);
+            News.error("MainLockWrapService.buildMajorTask[task]", e);
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
         } finally {
             if (lockAcquired) {
@@ -52,11 +53,11 @@
             if (!(lockAcquired = this.lock.tryLock(LOCK_TIMEOUT, TimeUnit.SECONDS))) {
                 throw new CoolException("failed to generate [minor task] actions, cause can not acquire lock ...");
             }
-//            log.info("buildMinorTask AGV[{}] lock time: {}", agv.getUuid(), System.currentTimeMillis());
+//            News.info("buildMinorTask AGV[{}] lock time: {}", agv.getUuid(), System.currentTimeMillis());
 
             return mainService.buildMinorTask(agvId, taskType, destination, jam);
         } catch (Exception e) {
-            log.error("MainLockWrapService.buildMinorTask[task]", e);
+            News.error("MainLockWrapService.buildMinorTask[task]", e);
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
 
             return false;
@@ -65,8 +66,8 @@
             if (lockAcquired) {
                 this.lock.unlock();
             }
-//            log.info("buildMinorTask AGV[{}] unlock time: {}", agv.getUuid(), System.currentTimeMillis());
+//            News.info("buildMinorTask AGV[{}] unlock time: {}", agv.getUuid(), System.currentTimeMillis());
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
index 33230e2..cde9b3d 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -34,6 +34,7 @@
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
+import com.zy.acs.common.utils.News;
 
 import java.util.*;
 import java.util.stream.Collectors;
@@ -241,7 +242,7 @@
                     bus.setBusSts(BusStsType.PROGRESS.val());
                     bus.setUpdateTime(now);
                     if (!busService.updateById(bus)) {
-                        log.error("Bus [{}] failed to Update 锛侊紒锛�", bus.getUuid());
+                        News.error("Bus [{}] failed to Update 锛侊紒锛�", bus.getUuid());
                     }
                 }
                 return;
@@ -289,7 +290,7 @@
                             currSeg.setState(SegmentStateType.INIT.toString());
                             currSeg.setUpdateTime(now);
                             if (!segmentService.updateById(currSeg)) {
-//                                log.error("Segment [{}] failed to update 锛侊紒锛�", currSeg.getGroupId() + " - " + currSeg.getSerial());
+//                                News.error("Segment [{}] failed to update 锛侊紒锛�", currSeg.getGroupId() + " - " + currSeg.getSerial());
                                 throw new CoolException("failed to update segment [" + currSeg.getGroupId() + "-" + currSeg.getSerial() + "] failed");
                             }
 
@@ -307,7 +308,7 @@
                             loadSeg.setCreateTime(now);
                             loadSeg.setUpdateTime(now);
                             if (!segmentService.save(loadSeg)) {
-//                                log.error("Segment [{}] failed to save 锛侊紒锛�", loadSeg.getTravelId() + " - " + loadSeg.getSerial());
+//                                News.error("Segment [{}] failed to save 锛侊紒锛�", loadSeg.getTravelId() + " - " + loadSeg.getSerial());
                                 throw new CoolException("failed to save segment [" + loadSeg.getGroupId() + "-" + loadSeg.getSerial() + "] failed");
                             }
 
@@ -431,7 +432,7 @@
                             placeSeg.setCreateTime(now);
                             placeSeg.setUpdateTime(now);
                             if (!segmentService.save(placeSeg)) {
-//                                log.error("Segment [{}] failed to save 锛侊紒锛�", placeSeg.getTravelId() + " - " + placeSeg.getSerial());
+//                                News.error("Segment [{}] failed to save 锛侊紒锛�", placeSeg.getTravelId() + " - " + placeSeg.getSerial());
                                 throw new CoolException("failed to save segment [" + placeSeg.getGroupId() + "-" + placeSeg.getSerial() + "] failed");
                             }
 
@@ -461,7 +462,7 @@
                             staReserveService.allocateCallBack(task, agvId);
                         });
 //                if (Cools.isEmpty(agvNo)) {
-////                    log.warn("Task[{}] has an issue锛� because it failed to check out agv which is idle...", task.getSeqNum());
+////                    News.warn("Task[{}] has an issue锛� because it failed to check out agv which is idle...", task.getSeqNum());
 //                    continue;
 //                }
 //                task.setAgvId(agvService.getAgvId(agvNo));
@@ -473,7 +474,7 @@
 //                }
             }
         } catch (Exception e) {
-            log.error("mainService.infuseAgvForTask", e);
+            News.error("mainService.infuseAgvForTask", e);
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
         }
     }
@@ -650,7 +651,7 @@
                     dropGroups.add(group);
                 } else {
                     // import tip: the list must only contain ORIGIN and DESTINATION
-                    log.error("the list must only contain ORIGIN and DESTINATION");
+                    News.error("the list must only contain ORIGIN and DESTINATION");
                 }
             }
 
@@ -726,7 +727,7 @@
 
         } catch (Exception e) {
 
-            log.error("mainService.buildMajorTask[task]", e);
+            News.error("mainService.buildMajorTask[task]", e);
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
         }
     }
@@ -763,7 +764,7 @@
                         endCode = codeService.getCacheById(funcSta.getCode());
                     }
                     if (null == endCode) {
-                        log.warn("AGV[{}] failed to search destination锛宼here hadn't any idle funSta锛孴askTypeType锛歿}", agvNo, taskType.toString());
+                        News.warn("AGV[{}] failed to search destination锛宼here hadn't any idle funSta锛孴askTypeType锛歿}", agvNo, taskType.toString());
                     }
                     break;
                 case MOVE:
@@ -869,7 +870,7 @@
                     destFuncSta.setState(FuncStaStateType.OCCUPIED.toString());
                     destFuncSta.setUpdateTime(now);
                     if (!funcStaService.updateById(destFuncSta)) {
-                        log.error("FuncSta [{}] failed to update 锛侊紒锛�", destFuncSta.getName());
+                        News.error("FuncSta [{}] failed to update 锛侊紒锛�", destFuncSta.getName());
                     }
                     break;
                 case MOVE:
@@ -880,7 +881,7 @@
 
             return true;
         } catch (Exception e) {
-            log.error("mainService.buildMinorTask[task]", e);
+            News.error("mainService.buildMinorTask[task]", e);
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
 
             return false;
@@ -1565,7 +1566,7 @@
             News.info("{}鍙稟gv鍔ㄤ綔缁勮瀹屾垚锛屾寚浠ゆ暟閲忥細{}", agvNo, newActionList.size());
             return pathTrace;
         } catch (Exception e) {
-            log.error("mainService.generateAction", e);
+            News.error("mainService.generateAction", e);
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
 
             if (!Cools.isEmpty(pathList)) {
@@ -1739,13 +1740,13 @@
 
             BaseResult<?> result = agvCmdService.executeAgvActionCmd(agvAction);
             if (result.success()) {
-                log.info("浠诲姟缁� [{}] 鍔ㄤ綔鎸囦护宸蹭笅鍙� ===>> 鎸囦护鏁伴噺锛歿}", actionGroupId, actionList.size());
+                News.info("浠诲姟缁� [{}] 鍔ㄤ綔鎸囦护宸蹭笅鍙� ===>> 鎸囦护鏁伴噺锛歿}", actionGroupId, actionList.size());
             } else {
-                log.error("浠诲姟缁� [{}] 鍔ㄤ綔鎸囦护涓嬪彂澶辫触 锛侊紒锛�", actionGroupId);
+                News.error("浠诲姟缁� [{}] 鍔ㄤ綔鎸囦护涓嬪彂澶辫触 锛侊紒锛�", actionGroupId);
                 throw new CoolException("浠诲姟缁� [{" + actionGroupId + "}] 鍔ㄤ綔鎸囦护涓嬪彂澶辫触 锛侊紒锛�");
             }
         } catch (Exception e) {
-            log.error("mainService.publishAction", e);
+            News.error("mainService.publishAction", e);
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
         }
 
@@ -1757,7 +1758,7 @@
 
         Agv agv = agvService.selectByUuid(protocol.getAgvNo());
         if (null == agv) {
-            log.warn("Agv [{}] 灏氭湭閴存潈 锛侊紒锛�", protocol.getAgvNo());
+            News.warn("Agv [{}] 灏氭湭閴存潈 锛侊紒锛�", protocol.getAgvNo());
             return;
         }
 
@@ -1769,7 +1770,7 @@
             AGV_11_UP agv_11_up = (AGV_11_UP) msgBody;
             String serialNo = agv_11_up.getSerialNo();
 
-            log.info("Agv [{}] 鍔ㄤ綔瀹屾垚鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_11_up));
+            News.info("Agv [{}] 鍔ㄤ綔瀹屾垚鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_11_up));
 
             // 鍏ュ簱鏀捐揣
             if (agv_11_up.getCompleteType().equals(AgvCompleteType.RELEASE_FROM_SHELVES_COMPLETE)) {
@@ -1777,7 +1778,7 @@
 
                 Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getBarcode, String.valueOf(Integer.parseInt(agv_11_up.getLocCode()))));
                 if (null == loc) {
-                    log.warn("Agv [{}] 涓婃姤寰�璐ф灦鏀捐揣瀹屾垚鏃讹紝搴撲綅鐮乕{}]鏃犳晥銆�", protocol.getAgvNo(), agv_11_up.getLocCode());
+                    News.warn("Agv [{}] 涓婃姤寰�璐ф灦鏀捐揣瀹屾垚鏃讹紝搴撲綅鐮乕{}]鏃犳晥銆�", protocol.getAgvNo(), agv_11_up.getLocCode());
                 } else {
                     List<Long> taskIds = actionService.selectTaskIdsByGroupId(serialNo);
                     for (Long taskId : taskIds) {
@@ -1795,7 +1796,7 @@
                                 action.setEndTime(now);
                                 action.setUpdateTime(now);
                                 if (!actionService.updateById(action)) {
-                                    log.error("Action [{}] 鏇存柊澶辫触 锛侊紒锛�", action.getPriority() + " - " + action.getName());
+                                    News.error("Action [{}] 鏇存柊澶辫触 锛侊紒锛�", action.getPriority() + " - " + action.getName());
                                 }
                             }
 
@@ -1810,7 +1811,7 @@
 
                 Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getBarcode, String.valueOf(Integer.parseInt(agv_11_up.getLocCode()))));
                 if (null == loc) {
-                    log.warn("Agv [{}] 涓婃姤浠庤揣鏋跺彇璐у畬鎴愶紝搴撲綅鐮乕{}]鏃犳晥銆�", protocol.getAgvNo(), agv_11_up.getLocCode());
+                    News.warn("Agv [{}] 涓婃姤浠庤揣鏋跺彇璐у畬鎴愶紝搴撲綅鐮乕{}]鏃犳晥銆�", protocol.getAgvNo(), agv_11_up.getLocCode());
                 } else {
 
                     List<Long> taskIds = actionService.selectTaskIdsByGroupId(serialNo);
@@ -1828,7 +1829,7 @@
                                 action.setEndTime(now);
                                 action.setUpdateTime(now);
                                 if (!actionService.updateById(action)) {
-                                    log.error("Action [{}] 鏇存柊澶辫触 锛侊紒锛�", action.getPriority() + " - " + action.getName());
+                                    News.error("Action [{}] 鏇存柊澶辫触 锛侊紒锛�", action.getPriority() + " - " + action.getName());
                                 }
                             }
                         }
@@ -1850,7 +1851,7 @@
                 // settlement
                 this.settleSegmentList(segmentList, serialNo);
 
-                log.info("Agv [{}] {}浣滀笟瀹屾瘯 ==========>> ", protocol.getAgvNo(), serialNo);
+                News.info("Agv [{}] {} 璺緞浣滀笟宸插畬鎴�", protocol.getAgvNo(), serialNo);
 
             }
         }
@@ -1858,7 +1859,7 @@
         // 鍙栨斁璐ц姹傚寘
         if (msgBody instanceof AGV_06_UP) {
             AGV_06_UP agv_06_up = (AGV_06_UP) msgBody;
-            log.info("Agv [{}] 鍙栨斁璐ц姹傚寘 ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_06_up));
+            News.info("Agv [{}] 鍙栨斁璐ц姹傚寘 ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_06_up));
 
             boolean success = false;
 
@@ -1868,14 +1869,14 @@
                 // query current segment
                 Segment currSeg = segmentService.getCurrRunningSeg(null, agv.getId(), code.getId());
                 if (null == currSeg) {
-                    log.error("failed to find curr segment [{}]", agv.getUuid());
+                    News.error("failed to find curr segment [{}]", agv.getUuid());
                 } else {
 
                     // query current task
                     Task currTask = taskService.getById(currSeg.getTaskId());
                     if (currTask == null || !currTask.getTaskSts().equals(TaskStsType.PROGRESS.val())) {
 
-                        log.error("agv[{}] task invalid, task={}", protocol.getAgvNo(), currSeg.getTaskId());
+                        News.error("agv[{}] task invalid, task={}", protocol.getAgvNo(), currSeg.getTaskId());
                     } else {
 
                         Sta sta;
@@ -1899,7 +1900,7 @@
                                     staReserveService.rollbackWaitingToReserved(sta, currTask, StaReserveType.OUT);
                                     break;
                                 }
-                                log.info("AGV [{}] load permitted at conveyor station [{}]", protocol.getAgvNo(), sta.getStaNo());
+                                News.info("AGV [{}] load permitted at conveyor station [{}]", protocol.getAgvNo(), sta.getStaNo());
                                 success = true;
                                 break;
                             case DEST_STA:
@@ -1915,18 +1916,18 @@
                                     staReserveService.rollbackWaitingToReserved(sta, currTask, StaReserveType.IN);
                                     break;
                                 }
-                                log.info("AGV [{}] unload permitted at conveyor station [{}]", protocol.getAgvNo(), sta.getStaNo());
+                                News.info("AGV [{}] unload permitted at conveyor station [{}]", protocol.getAgvNo(), sta.getStaNo());
                                 success = true;
                                 break;
                             default:
-                                log.error("AGV [{}] has wrong posType [{}], segment [{}]", protocol.getAgvNo(), posType.toString(), currSeg.getId());
+                                News.error("AGV [{}] has wrong posType [{}], segment [{}]", protocol.getAgvNo(), posType.toString(), currSeg.getId());
                                 break;
                         }
                     }
                 }
 
             } catch (Exception e) {
-                log.error("agv[{}] failed to deal with action request, qrCode={}", agv.getUuid(), agv_06_up.getVal(), e);
+                News.error("agv[{}] failed to deal with action request, qrCode={}", agv.getUuid(), agv_06_up.getVal(), e);
             }
 
             AGV_06_DOWN agv_06_down = new AGV_06_DOWN();
@@ -1940,7 +1941,7 @@
         if (msgBody instanceof AGV_70_UP) {
             AGV_70_UP agv_70_up = (AGV_70_UP) msgBody;
 
-            log.info("Agv [{}] 鏂欎粨淇℃伅鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_70_up));
+            News.info("Agv [{}] 鏂欎粨淇℃伅鍖� ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_70_up));
         }
     }
 
@@ -1987,10 +1988,10 @@
                 task.setEndTime(now);
                 task.setUpdateTime(now);
                 if (!taskService.updateById(task)) {
-                    log.error("Task [{}] 鏇存柊澶辫触 锛侊紒锛�", task.getSeqNum());
+                    News.error("Task [{}] 鏇存柊澶辫触 锛侊紒锛�", task.getSeqNum());
                 } else {
                     taskService.maintainLocAndSta(task);
-                    log.info("Task [{}] 浣滀笟瀹屾瘯 ==========>> ", task.getSeqNum());
+                    News.info("Task [{}] 浠诲姟杩愯瀹屾垚.", task.getSeqNum());
                 }
 
             }
@@ -2007,7 +2008,7 @@
                 action.setEndTime(now);
                 action.setUpdateTime(now);
                 if (!actionService.updateById(action)) {
-                    log.error("Action [{}] 鏇存柊澶辫触 锛侊紒锛�", action.getPriority() + " - " + action.getName());
+                    News.error("Action [{}] 鏇存柊澶辫触 锛侊紒锛�", action.getPriority() + " - " + action.getName());
                 }
             }
         }
@@ -2018,7 +2019,7 @@
             segment.setEndTime(now);
             segment.setUpdateTime(now);
             if (!segmentService.updateById(segment)) {
-                log.error("Segment [{}] 鏇存柊澶辫触 锛侊紒锛�", segment.getGroupId() + " - " + segment.getSerial());
+                News.error("Segment [{}] 鏇存柊澶辫触 锛侊紒锛�", segment.getGroupId() + " - " + segment.getSerial());
             }
         }
 
@@ -2026,4 +2027,4 @@
         segmentService.processNext(segmentList);
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
index 1f65871..90c948b 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
@@ -26,6 +26,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
+import com.zy.acs.common.utils.News;
 
 import java.util.*;
 import java.util.concurrent.ConcurrentLinkedQueue;
@@ -267,7 +268,7 @@
 //            }
 
         } catch (InterruptedException e) {
-            log.error("unlockTaskQueue", e);
+            News.error("unlockTaskQueue", e);
         }
     }
 
@@ -731,4 +732,4 @@
         return result;
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PathQueueConsumer.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PathQueueConsumer.java
index 6c90d00..819b25f 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PathQueueConsumer.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PathQueueConsumer.java
@@ -8,6 +8,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import com.zy.acs.common.utils.News;
 
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
@@ -50,7 +51,7 @@
                         if (tasks.size() == 1) {
                             resetCodeIdxList = this.getResetCodeList(lev, tasks.get(0));
                         } else if (tasks.size() > 1) {
-//                            log.info("consumer task count:{}", tasks.size());
+//                            News.info("consumer task count:{}", tasks.size());
                             resetCodeIdxList = this.getResetCodeList(lev, tasks);
                         }
 
@@ -58,15 +59,15 @@
                             this.dealResetCodeList(lev, resetCodeIdxList);
                         }
 
-//                        log.info("consumer unlock path spend time:{}", System.currentTimeMillis() - startTime);
+//                        News.info("consumer unlock path spend time:{}", System.currentTimeMillis() - startTime);
                     }
 
                 } catch (InterruptedException e) {
                     Thread.currentThread().interrupt();
-                    log.error("PathQueueConsumer[Thread.currentThread.interrupt]", e);
+                    News.error("PathQueueConsumer[Thread.currentThread.interrupt]", e);
                     break;
                 } catch (Exception e) {
-                    log.error("PathQueueConsumer", e);
+                    News.error("PathQueueConsumer", e);
                 }
             }
         });
@@ -204,7 +205,7 @@
                 if (!this.consumerExecutor.awaitTermination(5, TimeUnit.SECONDS)) {
                     this.consumerExecutor.shutdownNow();
                     if (!this.consumerExecutor.awaitTermination(5, TimeUnit.SECONDS)) {
-                        log.error("this.consumerExecutor failed to shutdown");
+                        News.error("this.consumerExecutor failed to shutdown");
                     }
                 }
             } catch (InterruptedException ie) {
@@ -214,4 +215,4 @@
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
index 1c9c942..26ec35c 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
@@ -19,6 +19,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import com.zy.acs.common.utils.News;
 
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
@@ -135,7 +136,7 @@
                 }
                 break;
             default:
-                log.warn("AGV {}: 鏈煡闃舵: {}", agvNo, jobType);
+                News.warn("AGV {}: 鏈煡闃舵: {}", agvNo, jobType);
                 break;
         }
         if (Cools.isEmpty(destinationCodeData)) {
@@ -143,7 +144,7 @@
         }
 
         if (mainLockWrapService.buildMinorTask(agvId, TaskTypeType.MOVE, destinationCodeData, null)) {
-            log.info( "{}寮�濮嬩綔涓氭紨绀�...", agvNo);
+            News.info( "{}寮�濮嬩綔涓氭紨绀�...", agvNo);
 
             CoreCache.AGV_MOCK_STEP_CACHE.put(agvId, CodeStepDto.build(destinationCodeData, jobType));
         }
@@ -198,7 +199,7 @@
             return;
         }
         if (mainLockWrapService.buildMinorTask(agvId, TaskTypeType.MOVE, destinationCodeData, null)) {
-            log.info( "{}寮�濮嬭蛋琛屾紨绀�...", agvNo);
+            News.info( "{}寮�鍚嚜鍔ㄥ贰閫�...", agvNo);
         }
     }
 
@@ -265,14 +266,14 @@
                 executePatrolLogic(agvNo);
 //                executeUShapeConveyor(agvNo);
             } catch (Exception e) {
-                log.error("鎵цAGV{}璺戝簱浠诲姟鏃跺彂鐢熷紓甯�", agvNo, e);
+                News.error("鎵цAGV{}璺戝簱浠诲姟鏃跺彂鐢熷紓甯�", agvNo, e);
             }
         };
 
         ScheduledFuture<?> scheduledFuture = scheduler.scheduleAtFixedRate(patrolTask, 0, SCHEDULE_TIME_INTERVAL, TimeUnit.MILLISECONDS);
 
         AGV_PATROL_MAP.put(agvNo, scheduledFuture);
-        log.info("宸插惎鍔ˋGV{}鐨勮窇搴撲换鍔°��", agvNo);
+        News.info("宸插惎鍔ˋGV{}鐨勮窇搴撲换鍔°��", agvNo);
         return R.ok();
     }
 
@@ -290,10 +291,10 @@
             CoreCache.AGV_BACKPACK_USED_CACHE.remove(agvId);
             CoreCache.AGV_MOCK_STEP_CACHE.remove(agvId);
             CoreCache.AGV_MOCK_JOB_CACHE.remove(agvNo);
-            log.info("宸插仠姝GV {} 鐨勮窇搴撲换鍔°��", agvNo);
+            News.info("宸插仠姝GV {} 鐨勮窇搴撲换鍔°��", agvNo);
             return R.ok("宸插仠姝GV " + agvNo + " 鐨勮窇搴撲换鍔°��");
         } else {
-            log.error("鏈兘鎴愬姛鍋滄AGV " + agvNo + " 鐨勮窇搴撲换鍔°��");
+            News.error("鏈兘鎴愬姛鍋滄AGV " + agvNo + " 鐨勮窇搴撲换鍔°��");
             return R.error("鏈兘鎴愬姛鍋滄AGV " + agvNo + " 鐨勮窇搴撲换鍔°��");
         }
     }
@@ -309,4 +310,4 @@
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
index 29aebb2..d47d5a2 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
@@ -2,7 +2,6 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.zy.acs.common.utils.GsonUtils;
-import com.zy.acs.common.utils.News;
 import com.zy.acs.common.utils.Utils;
 import com.zy.acs.framework.common.Cools;
 import com.zy.acs.framework.common.SnowflakeIdWorker;
@@ -28,6 +27,7 @@
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
+import com.zy.acs.common.utils.News;
 
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -144,14 +144,14 @@
 //                            }
 //                        }
 //                        if (null == endCode) {
-//                            log.warn("AGV[{}] failed to search destination锛宼here hadn't any idle funSta锛孴askTypeType锛歿}", segment.getAgvId(), FuncStaType.STANDBY);
+//                            News.warn("AGV[{}] failed to search destination锛宼here hadn't any idle funSta锛孴askTypeType锛歿}", segment.getAgvId(), FuncStaType.STANDBY);
 //                            return;
 //                        }
 //
 //                        segment.setState(SegmentStateType.INIT.toString());
 //                        segment.setUpdateTime(now);
 //                        if (!segmentService.updateById(segment)) {
-//                            log.error("Segment [{}] failed to update 锛侊紒锛�", segment.getGroupId() + " - " + segment.getSerial());
+//                            News.error("Segment [{}] failed to update 锛侊紒锛�", segment.getGroupId() + " - " + segment.getSerial());
 //                            return;
 //                        }
 //
@@ -167,7 +167,7 @@
 //                        insertSeg.setState(SegmentStateType.WAITING.toString());
 //                        insertSeg.setMemo(MapDataConstant.RESOLVE_DEADLOCK);
 //                        if (!segmentService.save(insertSeg)) {
-//                            log.error("Segment [{}] failed to save 锛侊紒锛�", segment.getTravelId() + " - " + segment.getSerial());
+//                            News.error("Segment [{}] failed to save 锛侊紒锛�", segment.getTravelId() + " - " + segment.getSerial());
 //                            return;
 //                        }
 //                        return;
@@ -182,7 +182,7 @@
             if (!Cools.isEmpty(waitingSegList)) {
                 for (Segment waitingSeg : waitingSegList) {
                     if (!waitingSeg.getId().equals(segment.getId())) {
-//                        log.error("AGV[{}] 浠诲姟寮傚父锛屾湇鍔″櫒閿欒锛侊紒锛�", agv.getUuid());
+//                        News.error("AGV[{}] 浠诲姟寮傚父锛屾湇鍔″櫒閿欒锛侊紒锛�", agv.getUuid());
                         return;
                     }
                 }
@@ -204,7 +204,7 @@
 
             // * sync wave scope
             if (!avoidWaveCalculator.calcWaveScope(agvModelService.getByAgvId(agv.getId()))) {
-                log.error("failed to calculate avoid wave matrix ...");
+                News.error("failed to calculate avoid wave matrix ...");
                 return;
             }
 
@@ -234,7 +234,7 @@
                 segment.setState(SegmentStateType.INIT.toString());
                 segment.setUpdateTime(now);
                 if (!segmentService.updateById(segment)) {
-                    log.error("Segment [{}] failed to update 锛侊紒锛�", segment.getGroupId() + " - " + segment.getSerial());
+                    News.error("Segment [{}] failed to update 锛侊紒锛�", segment.getGroupId() + " - " + segment.getSerial());
                 }
                 segmentList.clear();
 
@@ -249,7 +249,7 @@
                 insertSeg.setPosType(TaskPosDto.PosType.MOVE.toString());
                 insertSeg.setState(SegmentStateType.WAITING.toString());
                 if (!segmentService.save(insertSeg)) {
-                    log.error("Segment [{}] failed to save 锛侊紒锛�", insertSeg.getTravelId() + " - " + insertSeg.getSerial());
+                    News.error("Segment [{}] failed to save 锛侊紒锛�", insertSeg.getTravelId() + " - " + insertSeg.getSerial());
                 }
                 segmentList.add(insertSeg);
 
@@ -286,7 +286,7 @@
             mapService.lockPath(null, pathDtoList, agv.getUuid());
 
         } catch (Exception e) {
-            log.error("TrafficService.trigger", e);
+            News.error("TrafficService.trigger", e);
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
 
             throw new RuntimeException("trigger method caught an exception", e);
@@ -338,7 +338,7 @@
 
                     boolean hasUnavoidableBlocks = blockVehicleList.stream().anyMatch(blockVehicleDto -> !blockVehicleDto.isAvoidable());
                     if (hasUnavoidableBlocks && pathList.size() <= MapDataConstant.MIN_SLICE_PATH_LENGTH) {
-                        News.info("AGV[{}] waiting in place, because the path list is too short...", agvNo);
+//                        News.info("AGV[{}] waiting in place, because the path list is too short...", agvNo);
                         pathList.clear();
                     }
 
@@ -346,7 +346,7 @@
                             blockVehicleDto -> null != jamService.getCycleJam(agv.getId(), segment.getId(), blockVehicleDto.getVehicle())
                     );
                     if (hasCycleJam) {
-                        log.info("AGV[{}] waiting in place, because has cycle jam...", agvNo);
+                        News.info("AGV[{}] waiting in place, because has cycle jam...", agvNo);
                         pathList.clear();
                     }
                 }
@@ -355,7 +355,7 @@
             } else {
 
                 if (Cools.isEmpty(blockVehicleList)) {
-                    log.warn("AGV[{}] can't reach to code: {}, because there is too many vehicle in the lane...", agvNo, endCode.getData());
+                    News.warn("AGV[{}] can't reach to code: {}, because there is too many vehicle in the lane...", agvNo, endCode.getData());
                 } else {
 
                     assert !Cools.isEmpty(blockVehicleList);
@@ -449,10 +449,10 @@
                                         , agvNo, startCode.getData(), endCode.getData(), "璺緞闃诲瓒呮椂");
                             }
                         } else {
-                            log.warn("{}鍙疯溅杈嗘鍦ㄧ瓑寰呬氦閫氬牭濉烇紝闃诲杞﹁締锛氥�恵}銆�"
-                                    , agvNo
-                                    , blockVehicleList.stream().map(BlockVehicleDto::getVehicle).collect(Collectors.toList()).toString()
-                            );
+//                            News.warn("{}鍙疯溅杈嗘鍦ㄧ瓑寰呬氦閫氬牭濉烇紝闃诲杞﹁締锛氥�恵}銆�"
+//                                    , agvNo
+//                                    , blockVehicleList.stream().map(BlockVehicleDto::getVehicle).collect(Collectors.toList()).toString()
+//                            );
                         }
                     }
 
@@ -485,12 +485,12 @@
                             previousJam.setState(JamStateType.DEPRECATED.toString());
                             previousJam.setUpdateTime(now);
                             if (!jamService.updateById(previousJam)) {
-                                log.error("Jam[{}] failed to update锛侊紒锛�", previousJam.getUuid());
+                                News.error("Jam[{}] failed to update锛侊紒锛�", previousJam.getUuid());
                             }
                         }
                     }
                 } else {
-                    log.error("Jam[{}] failed to update锛侊紒锛�", jam.getUuid());
+                    News.error("Jam[{}] failed to update锛侊紒锛�", jam.getUuid());
                 }
             }
             // deal expired jam
@@ -502,7 +502,7 @@
                 expiredJam.setUpdateTime(now);
                 expiredJam.setState(JamStateType.DEPRECATED.toString());
                 if (!jamService.updateById(expiredJam)) {
-                    log.error("Jam[{}] failed to update锛侊紒锛�", expiredJam.getUuid());
+                    News.error("Jam[{}] failed to update锛侊紒锛�", expiredJam.getUuid());
                 }
             }
 
@@ -553,7 +553,7 @@
     private boolean notifyVehicleAvoid(String agvNo, String agvPosCode, List<String> avoidPathList, String sponsor, Jam jam) {
         Long agvId = agvService.getAgvId(agvNo);
         if (!Cools.isEmpty(segmentService.getByAgvAndState(agvId, SegmentStateType.RUNNING.toString()))) {
-            log.warn("{}鍙疯溅杈嗛伩璁╁け璐ワ紝瀛樺湪杩涜涓换鍔★紒锛侊紒", agvNo);
+            News.warn("{}鍙疯溅杈嗛伩璁╁け璐ワ紝瀛樺湪杩涜涓换鍔★紒锛侊紒", agvNo);
             return false;
         }
 
@@ -563,7 +563,7 @@
         assert avoidPathList.size() >= 2;
         RetreatNavigateNode finalNode = retreatNavigateService.execute(agvNo, startNode, avoidPathList, sponsor, jam);
         if (null == finalNode) {
-            log.warn("{}鍙疯溅杈嗛伩璁╁け璐ワ紝妫�绱㈤伩璁╃偣澶辫触锛侊紒锛�", agvNo);
+            News.warn("{}鍙疯溅杈嗛伩璁╁け璐ワ紝妫�绱㈤伩璁╃偣澶辫触锛侊紒锛�", agvNo);
             return false;
         }
 
@@ -574,7 +574,7 @@
         if (!Cools.isEmpty(waitingSegList)) {
 
             if (waitingSegList.size() > 1) {
-                log.error("閬胯閫氱煡澶辫触锛寋}鍙疯溅杈嗗瓨鍦ㄥ涓瓑寰呬腑鐨凷egment锛侊紒锛�", agvNo);
+                News.error("閬胯閫氱煡澶辫触锛寋}鍙疯溅杈嗗瓨鍦ㄥ涓瓑寰呬腑鐨凷egment锛侊紒锛�", agvNo);
                 return false;
             }
             // revert
@@ -583,7 +583,7 @@
                 seg.setState(SegmentStateType.INIT.toString());
                 seg.setUpdateTime(now);
                 if (!segmentService.updateById(seg)) {
-                    log.error("Segment [{}] 鏇存柊澶辫触 锛侊紒锛�", seg.getTravelId() + " - " + seg.getSerial());
+                    News.error("Segment [{}] 鏇存柊澶辫触 锛侊紒锛�", seg.getTravelId() + " - " + seg.getSerial());
                 }
             }
             Segment segment = waitingSegList.get(0);
@@ -598,7 +598,7 @@
             insertSeg.setPosType(TaskPosDto.PosType.MOVE.toString());
             insertSeg.setState(SegmentStateType.WAITING.toString());
             if (!segmentService.save(insertSeg)) {
-                log.error("Segment [{}] 淇濆瓨澶辫触 锛侊紒锛�", segment.getTravelId() + " - " + segment.getSerial());
+                News.error("Segment [{}] 淇濆瓨澶辫触 锛侊紒锛�", segment.getTravelId() + " - " + segment.getSerial());
                 return false;
             } else {
                 jam.setAvoSeg(insertSeg.getId());
@@ -624,13 +624,13 @@
             jam.setStartTime(new Date());
             jam.setState(JamStateType.RUNNING.toString());
             if (!jamService.save(jam)) {
-                log.error("AGV[{}] failed to save jam", agv.getUuid());
+                News.error("AGV[{}] failed to save jam", agv.getUuid());
                 throw new CoolException("failed to save jam");
             }
         } else {
             jam.setDuration(System.currentTimeMillis() - jam.getStartTime().getTime());
             if (!jamService.updateById(jam)) {
-                log.error("AGV[{}] failed to update jam", agv.getUuid());
+                News.error("AGV[{}] failed to update jam", agv.getUuid());
             }
         }
         return jam;
@@ -640,7 +640,7 @@
         originJam.setUpdateTime(new Date());
         originJam.setState(JamStateType.FINISH.toString());
         if (!jamService.updateById(originJam)) {
-            log.error("Jam[{}] failed to update", originJam.getUuid());
+            News.error("Jam[{}] failed to update", originJam.getUuid());
             return originJam;
         } else {
             return this.createOrUpdateJam(
@@ -744,7 +744,7 @@
             return false;
         }
         if (jamList.size() > 1) {
-            log.error("AvoSeg[id = {}] seg data has exception, result in two jams", avoSeg);
+            News.error("AvoSeg[id = {}] seg data has exception, result in two jams", avoSeg);
         }
         Jam jam = jamList.get(0);
         if (jam.getState().equals(JamStateType.DEPRECATED.toString())) {
@@ -757,4 +757,4 @@
         return false;
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java
index 5bcba6d..c0bf873 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java
@@ -18,6 +18,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import com.zy.acs.common.utils.News;
 
 import javax.annotation.PostConstruct;
 import java.util.*;
@@ -229,7 +230,7 @@
     }
 
     public synchronized DynamicNode[][] initDynamicMatrix(Integer lev) {
-        log.info("There is initializing Dynamic Matrix......");
+        News.info("There is initializing Dynamic Matrix......");
         lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV);
 
         String[][] codeMatrix = getCodeMatrix(lev);
@@ -252,7 +253,7 @@
     }
 
     public synchronized String[][] initCdaMatrix(Integer lev) {
-        log.info("There is initializing Cda Matrix......");
+        News.info("There is initializing Cda Matrix......");
         lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV);
 
         if (Cools.isEmpty(xIdxList, yIdxList)) {
@@ -288,7 +289,7 @@
     }
 
     public synchronized int[][] initTurnMatrix(Integer lev) {
-        log.info("There is initializing Turn Matrix......");
+        News.info("There is initializing Turn Matrix......");
         lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV);
 
         String[][] codeMatrix = getCodeMatrix(lev);
@@ -337,7 +338,7 @@
     
 
     public synchronized int[][] initMapMatrix(Integer lev) {
-        log.info("There is initializing Map Matrix......");
+        News.info("There is initializing Map Matrix......");
         lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV);
 
         String[][] codeMatrix = getCodeMatrix(lev);
@@ -370,7 +371,7 @@
     }
 
     public synchronized void initRouteMap(Integer lev) {
-        log.info("There is initializing Route Map......");
+        News.info("There is initializing Route Map......");
         lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV);
         Set<String> routeKeys = redis.getMapKeys(RedisConstant.AGV_MAP_ROUTE_HASH_FLAG);
         Set<String> routeCdaKeys = redis.getMapKeys(RedisConstant.AGV_MAP_ROUTE_CDA_HASH_FLAG);
@@ -404,7 +405,7 @@
     }
 
     public synchronized String[][] initCodeMatrix(Integer lev) {
-        log.info("There is initializing Code Matrix......");
+        News.info("There is initializing Code Matrix......");
         lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV);
         List<Code> codeList = codeService.list(new LambdaQueryWrapper<Code>()
                 .eq(Code::getStatus, 1)
@@ -574,4 +575,4 @@
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/floyd/FloydNavigateService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/floyd/FloydNavigateService.java
index 4f05838..2bb67d1 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/floyd/FloydNavigateService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/floyd/FloydNavigateService.java
@@ -19,6 +19,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
+import com.zy.acs.common.utils.News;
 
 import javax.annotation.PostConstruct;
 import java.util.ArrayList;
@@ -93,7 +94,7 @@
             this.floydMatrix = JSON.parseObject(floydMatrixStr, Double[][].class);
         } else {
 
-            log.info("銆怓LOYD銆戞鍦ㄨ绠楃煩闃垫暟鎹�......");
+            News.info("銆怓LOYD銆戞鍦ㄨ绠楃煩闃垫暟鎹�......");
             List<Code> codeList = codeService.list(new LambdaQueryWrapper<Code>().eq(Code::getStatus, 1).eq(Code::getDeleted, false));
 
             int size = codeList.size();
@@ -191,4 +192,4 @@
         }
         return floydMatrix;
     }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.1