From f949aeba630770c85a124d055f5b89c6bceb3579 Mon Sep 17 00:00:00 2001 From: vincentlu <t1341870251@gmail.com> Date: 星期一, 20 一月 2025 09:36:16 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/TaskService.java | 2 ++ zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java | 8 ++++++++ zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java | 12 ++++++------ 3 files changed, 16 insertions(+), 6 deletions(-) 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 67c5841..e396ba6 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 @@ -177,10 +177,10 @@ return new ArrayList<>(); } return agvNoList.stream().filter(agvNo -> { - Agv agv = agvService.selectByUuid(agvNo); + Long agvId = agvService.getAgvId(agvNo); + int transportTasksCount = taskService.findTransportTasksCountByAgv(agvId); AgvModel agvModel = agvModelService.getByAgvNo(agvNo); - List<Task> transportTasks = taskService.findTransportTasksByAgv(agv.getId()); - return transportTasks.size() < agvModel.getBackpack(); + return transportTasksCount < agvModel.getBackpack(); }).collect(Collectors.toList()); } @@ -190,9 +190,9 @@ Long agvId = agvService.getAgvId(agvNo); // backpack - List<Task> transportTasks = taskService.findTransportTasksByAgv(agvId); - if (!Cools.isEmpty(transportTasks)) { - weight = weight + transportTasks.size() * 100000; + Integer transportTasksCount = taskService.findTransportTasksCountByAgv(agvId); + if (!Cools.isEmpty(transportTasksCount)) { + weight = weight + transportTasksCount * 100000; } // distance diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/TaskService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/TaskService.java index d6a86d7..2f12e02 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/TaskService.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/TaskService.java @@ -34,6 +34,8 @@ List<Task> findTransportTasksByAgv(Long agvId); + Integer findTransportTasksCountByAgv(Long agvId); + Task findLatestTask(Long agvId, TaskStsType taskSts); } diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java index 601782b..b9bd4c9 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java @@ -191,6 +191,14 @@ } @Override + public Integer findTransportTasksCountByAgv(Long agvId) { + LambdaQueryWrapper<Task> wrapper = new LambdaQueryWrapper<Task>().eq(Task::getAgvId, agvId); + wrapper.in(Task::getTaskSts, TaskStsType.WAITING.val(), TaskStsType.ASSIGN.val(), TaskStsType.PROGRESS.val()); + wrapper.notIn(Task::getTaskType, TaskTypeType.MOVE.val(), TaskTypeType.TO_CHARGE.val(), TaskTypeType.TO_STANDBY.val()); + return this.count(wrapper); + } + + @Override public Task findLatestTask(Long agvId, TaskStsType taskSts) { LambdaQueryWrapper<Task> wrapper = new LambdaQueryWrapper<Task>() .orderByDesc(Task::getCreateTime) -- Gitblit v1.9.1