From 7f1610d98fa352f17fc8a53597c4bb2a86f277ca Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期四, 22 一月 2026 11:26:58 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/dto/ConveyorQueryResult.java | 8 ++++++++
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaServiceImpl.java | 20 ++++++++++++++++----
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/StaService.java | 3 +++
zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/conveyor/ConveyorController.java | 25 +++++++++++++++++++++----
4 files changed, 48 insertions(+), 8 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/conveyor/ConveyorController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/conveyor/ConveyorController.java
index 835bdad..b4d9a7b 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/conveyor/ConveyorController.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/conveyor/ConveyorController.java
@@ -6,6 +6,7 @@
import com.zy.acs.manager.core.integrate.dto.ConveyorQueryParam;
import com.zy.acs.manager.core.integrate.dto.ConveyorQueryResult;
import com.zy.acs.manager.manager.entity.Sta;
+import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.manager.enums.StatusType;
import com.zy.acs.manager.manager.service.StaService;
import com.zy.acs.manager.system.controller.BaseController;
@@ -38,8 +39,16 @@
.orderByAsc(Sta::getStaNo)
);
for (Sta sta : list) {
- resultList.add(new ConveyorQueryResult(sta.getStaNo()
- , !staService.hasWorkingAgv(sta.getId())));
+ Long staId = sta.getId();
+ boolean conveyable = !staService.hasWorkingAgv(staId);
+ String taskNo = null;
+ if (conveyable) {
+ Task task = staService.checkoutTask(staId);
+ if (null != task) {
+ taskNo = task.getSeqNum();
+ }
+ }
+ resultList.add(new ConveyorQueryResult(sta.getStaNo(), conveyable, taskNo));
}
} else {
for (String staNo : staNos) {
@@ -48,8 +57,16 @@
resultList.add(new ConveyorQueryResult(staNo, Boolean.FALSE));
continue;
}
- resultList.add(new ConveyorQueryResult(staNo
- , !staService.hasWorkingAgv(sta.getId())));
+ Long staId = sta.getId();
+ boolean conveyable = !staService.hasWorkingAgv(staId);
+ String taskNo = null;
+ if (conveyable) {
+ Task task = staService.checkoutTask(staId);
+ if (null != task) {
+ taskNo = task.getSeqNum();
+ }
+ }
+ resultList.add(new ConveyorQueryResult(staNo, conveyable, taskNo));
}
}
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/dto/ConveyorQueryResult.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/dto/ConveyorQueryResult.java
index f49be52..8b19a90 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/dto/ConveyorQueryResult.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/dto/ConveyorQueryResult.java
@@ -9,6 +9,8 @@
private Boolean conveyable;
+ private String taskNo;
+
public ConveyorQueryResult() {
}
@@ -17,4 +19,10 @@
this.conveyable = conveyable;
}
+ public ConveyorQueryResult(String staNo, Boolean conveyable, String taskNo) {
+ this.staNo = staNo;
+ this.conveyable = conveyable;
+ this.taskNo = taskNo;
+ }
+
}
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/StaService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/StaService.java
index 3908f1b..c9fa9be 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/StaService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/StaService.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.zy.acs.manager.manager.entity.Sta;
+import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.manager.enums.StaTypeType;
import java.util.List;
@@ -16,6 +17,8 @@
List<Sta> queryAvailableInSta(Integer minAvailableQty);
+ Task checkoutTask(Long staId);
+
boolean isRoller(Long staId);
Boolean hasWorkingAgv(Long staId);
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 c0871c6..9498743 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
@@ -5,10 +5,7 @@
import com.zy.acs.framework.common.Cools;
import com.zy.acs.manager.core.domain.TaskPosDto;
import com.zy.acs.manager.manager.entity.*;
-import com.zy.acs.manager.manager.enums.SegmentStateType;
-import com.zy.acs.manager.manager.enums.StaTypeType;
-import com.zy.acs.manager.manager.enums.StatusType;
-import com.zy.acs.manager.manager.enums.TravelStateType;
+import com.zy.acs.manager.manager.enums.*;
import com.zy.acs.manager.manager.mapper.StaMapper;
import com.zy.acs.manager.manager.service.*;
import org.springframework.beans.factory.annotation.Autowired;
@@ -28,6 +25,8 @@
private SegmentService segmentService;
@Autowired
private TravelService travelService;
+ @Autowired
+ private StaReserveService staReserveService;
@Override
public Sta selectByStaNo(String staNo) {
@@ -56,6 +55,19 @@
}
@Override
+ public Task checkoutTask(Long staId) {
+ List<StaReserve> list = staReserveService.list(new LambdaQueryWrapper<StaReserve>()
+ .eq(StaReserve::getStaId, staId)
+ .eq(StaReserve::getState, StaReserveStateType.CONFIRMED.toString())
+// .eq(StaReserve::getType, StaReserveType.IN.toString())
+ .eq(StaReserve::getStatus, StatusType.ENABLE.val)
+ .orderByDesc(StaReserve::getCreateTime)
+// .last("limit 1")
+ );
+ return null;
+ }
+
+ @Override
public boolean isRoller(Long staId) {
if (staId == null) {
return false;
--
Gitblit v1.9.1