From 7f70cb15d035f0c233b9e62b9e43aa985317c908 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 04 十一月 2024 10:22:45 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java | 16 ++++++++++++++-- 1 files changed, 14 insertions(+), 2 deletions(-) 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 a2cf33c..1dfb30e 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 @@ -14,6 +14,7 @@ import com.zy.acs.manager.manager.service.BusService; import com.zy.acs.manager.manager.service.SegmentService; import com.zy.acs.manager.manager.service.TaskService; +import com.zy.acs.manager.system.service.ConfigService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; @@ -48,13 +49,16 @@ private SegmentService segmentService; @Autowired private TrafficService trafficService; + @Autowired + private ConfigService configService; @Scheduled(cron = "0/3 * * * * ? ") private void startupBus() throws InterruptedException { + if (!configService.getVal("TaskAssignMode", Boolean.class)) { return; } if (!this.lock.tryLock(LOCK_TIMEOUT, TimeUnit.SECONDS)) { return; } List<Bus> busList = busService.selectBySts(BusStsType.RECEIVE); for (Bus bus : busList) { - mainService.infuseAgvForTask(bus); + mainService.allocateTask(bus); } this.lock.unlock(); } @@ -77,7 +81,7 @@ } for (AgvTaskDto dto : taskDtoList) { - mainService.mergeMajorTask(dto.getAgvId(), dto.getTaskList()); + mainService.buildMajorTask(dto.getAgvId(), dto.getTaskList()); } this.lock.unlock(); } @@ -122,6 +126,14 @@ log.error("Bus [{}] 鏇存柊澶辫触 锛侊紒锛�", bus.getUuid()); } } + long cancelNum = taskList.stream().filter(task -> TaskStsType.CANCEL.val() == task.getTaskSts()).count(); + if (cancelNum == taskList.size()) { + bus.setBusSts(BusStsType.CANCEL.val()); + bus.setUpdateTime(new Date()); + if (!busService.updateById(bus)) { + log.error("Bus [{}] 鏇存柊澶辫触 锛侊紒锛�", bus.getUuid()); + } + } } } -- Gitblit v1.9.1