From 520d4be5c6b8136f61811c9227515fec8937c709 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期四, 07 五月 2026 10:22:56 +0800
Subject: [PATCH] #latent_code
---
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaServiceImpl.java | 22 ++++++++++++++++++++--
1 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaServiceImpl.java
index 5370b92..95b1500 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaServiceImpl.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaServiceImpl.java
@@ -35,6 +35,8 @@
private TaskService taskService;
@Autowired
private ConveyorStationService conveyorStationService;
+ @Autowired
+ private AgvModelService agvModelService;
@Override
public Sta selectByStaNo(String staNo) {
@@ -111,6 +113,19 @@
}
@Override
+ public Long resolveWorkCodeId(Sta sta, Long agvId) {
+ if (sta == null) {
+ return null;
+ }
+ if (agvId != null
+ && Boolean.TRUE.equals(agvModelService.isUnderdriveAgv(agvId))
+ && sta.getLatentCode() != null) {
+ return sta.getLatentCode();
+ }
+ return sta.getCode();
+ }
+
+ @Override
public boolean allowAgvWorkAtSta(String agvNo, Sta sta, Task task, Segment seg, StaReserveType type) {
if (sta == null) {
return false;
@@ -152,8 +167,7 @@
@Override
public Boolean hasWorkingAgv(Long staId) {
Sta sta = this.getById(staId);
- Long codeId = sta.getCode();
- if (null == codeId) {
+ if (sta == null) {
return false;
}
@@ -165,6 +179,10 @@
return false;
}
for (Long agvId : agvIds) {
+ Long codeId = resolveWorkCodeId(sta, agvId);
+ if (codeId == null) {
+ continue;
+ }
Code currentCode = agvDetailService.getCurrentCode(agvId);
if (null == currentCode) { continue; }
--
Gitblit v1.9.1