From 10ac21082bbbe92dabecdda1a98fe4539f746037 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 14 四月 2026 09:10:38 +0800
Subject: [PATCH] 1
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/integrate/conveyor/ConveyorController.java | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 52 insertions(+), 7 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 5aae91c..19376e1 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
@@ -3,12 +3,19 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.acs.framework.common.Cools;
import com.zy.acs.framework.common.R;
+import com.zy.acs.manager.common.annotation.IntegrationAuth;
+import com.zy.acs.manager.core.domain.TaskPosDto;
+import com.zy.acs.manager.core.domain.type.NamespaceType;
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.Segment;
import com.zy.acs.manager.manager.entity.Sta;
+import com.zy.acs.manager.manager.entity.Task;
+import com.zy.acs.manager.manager.enums.SegmentStateType;
import com.zy.acs.manager.manager.enums.StatusType;
+import com.zy.acs.manager.manager.service.SegmentService;
import com.zy.acs.manager.manager.service.StaService;
-import com.zy.acs.manager.system.controller.BaseController;
+import com.zy.acs.manager.manager.service.TaskService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
@@ -22,12 +29,19 @@
@Api(tags = "Open Api")
@RestController
@RequestMapping("/api/open")
-public class ConveyorController extends BaseController {
+public class ConveyorController {
@Autowired
private StaService staService;
+ @Autowired
+ private TaskService taskService;
+
+ @Autowired
+ private SegmentService segmentService;
+
@PostMapping("/station/convey")
+ @IntegrationAuth(name = NamespaceType.RCS_STA_QUERY)
public R save(@RequestBody ConveyorQueryParam param) {
List<ConveyorQueryResult> resultList = new ArrayList<>();
@@ -38,8 +52,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 +70,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));
}
}
@@ -57,5 +87,20 @@
}
-
+ @PostMapping("/station/checkTakeComplete")
+ @IntegrationAuth(name = NamespaceType.RCS_STA_QUERY)
+ public R checkTakeComplete(@RequestBody ConveyorQueryParam param) {
+ String seqNum = param.getSeqNum();
+ Task task = taskService.selectBySeqNum(null, seqNum);
+ if (null == task) {
+ return R.error("task not found");
+ }
+ List<Segment> list = segmentService.list(new LambdaQueryWrapper<Segment>().eq(Segment::getTaskId, task.getId()).eq(Segment::getPosType, TaskPosDto.PosType.ORI_STA.toString()));
+ for (Segment segment : list){
+ if (segment.getState().equals(SegmentStateType.FINISH.toString())){
+ return R.ok().add(true);
+ }
+ }
+ return R.ok().add(false);
+ }
}
--
Gitblit v1.9.1