From c339a81fb4b2321fd7961f204f9b8ca1a961ea59 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期二, 21 一月 2025 16:08:57 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java |    2 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/config/BootConfig.java            |   16 +++++++++++-----
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java    |    6 ++++--
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AvoidWaveCalculator.java  |   13 +++----------
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java        |    4 ++--
 5 files changed, 21 insertions(+), 20 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/config/MapDataConfig.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/config/BootConfig.java
similarity index 75%
rename from zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/config/MapDataConfig.java
rename to zy-acs-manager/src/main/java/com/zy/acs/manager/core/config/BootConfig.java
index 3cf6afd..bff1ec5 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/config/MapDataConfig.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/config/BootConfig.java
@@ -1,4 +1,4 @@
-package com.zy.acs.manager.core.service.astart.config;
+package com.zy.acs.manager.core.config;
 
 import com.zy.acs.manager.core.service.astart.MapDataDispatcher;
 import com.zy.acs.manager.manager.service.CodeService;
@@ -7,11 +7,12 @@
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
-/**
- * Created by vincent on 2023/7/14
- */
+import java.util.concurrent.atomic.AtomicBoolean;
+
 @Configuration
-public class MapDataConfig {
+public class BootConfig {
+
+    public static final AtomicBoolean FULLY_LOADED = new AtomicBoolean(false);
 
     @Autowired
     private CodeService codeService;
@@ -29,8 +30,13 @@
             dispatcher.getCdaMatrix(null);
             dispatcher.getDynamicMatrix(null);
         }
+        FULLY_LOADED.set(true);
         return dispatcher;
     }
 
+    public static boolean isFullyLoaded() {
+        return FULLY_LOADED.get();
+    }
+
 
 }
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java
index f8c452a..bad3252 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java
@@ -15,10 +15,11 @@
 import com.zy.acs.manager.system.service.ConfigService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.context.event.ApplicationReadyEvent;
+import org.springframework.context.event.EventListener;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
 import java.util.ArrayList;
 import java.util.Collections;
@@ -104,7 +105,8 @@
         this.lock.unlock();
     }
 
-    @PostConstruct
+//    @PostConstruct
+    @EventListener(ApplicationReadyEvent.class)
     public void init() {
         try { Thread.sleep(1200); } catch (InterruptedException ignore) {}
         // traffic calculate
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java
index 468ad28..1691277 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java
@@ -134,7 +134,7 @@
 
     private Integer getBackpack(Long agvId, String backpackJson) {
         if (null == agvId || Cools.isEmpty(backpackJson)) {
-            return null;
+            return 0;
         }
         List<BackpackDto> backpackDtoList = JSON.parseArray(backpackJson, BackpackDto.class);
         int jsonCount = (int) backpackDtoList.stream().filter(BackpackDto::getLoaded).count();
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 73c5f10..70f2661 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
@@ -21,6 +21,7 @@
 import com.zy.acs.manager.manager.service.CodeService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.core.io.ClassPathResource;
 import org.springframework.core.io.Resource;
 import org.springframework.stereotype.Component;
@@ -44,6 +45,7 @@
  */
 @Slf4j
 @Component
+@DependsOn("getMapDataDispatcher")
 public class AvoidWaveCalculator {
 
     private static final ReentrantLock lock = new ReentrantLock(Boolean.TRUE);
@@ -74,18 +76,9 @@
     public void execute() {
         this.singleThreadExecutor = Executors.newSingleThreadExecutor();
         this.singleThreadExecutor.execute(() -> {
-
-            try { Thread.sleep(200); } catch (InterruptedException ignore) {}
+            try { Thread.sleep(500); } catch (InterruptedException ignore) {}
 
             this.calcDynamicNodeWhenBoot();
-
-//            while (!Thread.currentThread().isInterrupted()) {
-//
-//                this.calcWaveScope();
-//
-//                try { Thread.sleep(500); } catch (InterruptedException ignore) {}
-//            }
-
         });
     }
 
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 01e5f2e..ee9e9fd 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
@@ -257,8 +257,8 @@
 
         Runnable patrolTask = () -> {
             try {
-//                executePatrolLogic(agvNo);
-                executeUShapeConveyor(agvNo);
+                executePatrolLogic(agvNo);
+//                executeUShapeConveyor(agvNo);
             } catch (Exception e) {
                 log.error("鎵цAGV{}璺戝簱浠诲姟鏃跺彂鐢熷紓甯�: {}", agvNo, e.getMessage());
             }

--
Gitblit v1.9.1