From 70e8f76e19575de4b21e5c0ff225af7a1849fec6 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 28 十月 2024 09:51:39 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/TaskService.java | 5 ++
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java | 62 +++++++++++++++++++++++++++----
zy-acs-manager/src/main/java/com/zy/acs/manager/core/DispatcherTestController.java | 2
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java | 5 ++
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneService.java | 4 +-
5 files changed, 67 insertions(+), 11 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/DispatcherTestController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/DispatcherTestController.java
index a769226..7f0ab7f 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/DispatcherTestController.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/DispatcherTestController.java
@@ -19,7 +19,7 @@
@GetMapping("/lanes")
public R getLanes() {
- return R.ok().add(laneService.getLanePoints("00000010"));
+ return R.ok().add(laneService.search("00000010"));
}
}
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 8f144e5..750c81b 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
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.acs.framework.common.Cools;
import com.zy.acs.manager.common.utils.LocUtils;
+import com.zy.acs.manager.core.domain.Lane;
import com.zy.acs.manager.manager.entity.Agv;
import com.zy.acs.manager.manager.entity.AgvModel;
import com.zy.acs.manager.manager.entity.Task;
@@ -75,6 +76,10 @@
Integer maxAgvCountInLane = configService.getVal("maxAgvCountInLane", Integer.class);
+ Lane originLane = taskService.checkoutOriginLane(task);
+ Lane destinationLane = taskService.checkoutDestinationLane(task);
+
+
/**
* 1. 鍒ゆ柇task鐨勮捣濮嬬偣鍜岀洰鐨勭偣鎵�鍦ㄧ殑宸烽亾鎵胯浇浠诲姟鏁伴噺锛�
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneService.java
index 9eb7351..e03bc62 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneService.java
@@ -45,13 +45,13 @@
return this.initialized;
}
- public List<String> getLanePoints(String codeData) {
+ public Lane search(String codeData) {
if (Cools.isEmpty(codeData) || !this.initialized) {
return null;
}
for (Lane lane : this.lanes) {
if (lane.getCodes().contains(codeData)) {
- return lane.getCodes();
+ return lane;
}
}
return null;
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 01dd5e9..cd45ccd 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
@@ -1,6 +1,7 @@
package com.zy.acs.manager.manager.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.zy.acs.manager.core.domain.Lane;
import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.manager.enums.TaskStsType;
@@ -25,4 +26,8 @@
Boolean cancel(Long taskId, Long userId);
+ Lane checkoutOriginLane(Task task);
+
+ Lane checkoutDestinationLane(Task task);
+
}
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 99dd6aa..1121605 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
@@ -7,16 +7,12 @@
import com.zy.acs.framework.common.SnowflakeIdWorker;
import com.zy.acs.framework.exception.CoolException;
import com.zy.acs.manager.common.exception.BusinessException;
-import com.zy.acs.manager.manager.entity.FuncSta;
-import com.zy.acs.manager.manager.entity.Loc;
-import com.zy.acs.manager.manager.entity.Sta;
-import com.zy.acs.manager.manager.entity.Task;
+import com.zy.acs.manager.core.domain.Lane;
+import com.zy.acs.manager.core.service.LaneService;
+import com.zy.acs.manager.manager.entity.*;
import com.zy.acs.manager.manager.enums.*;
import com.zy.acs.manager.manager.mapper.TaskMapper;
-import com.zy.acs.manager.manager.service.CodeService;
-import com.zy.acs.manager.manager.service.FuncStaService;
-import com.zy.acs.manager.manager.service.LocService;
-import com.zy.acs.manager.manager.service.TaskService;
+import com.zy.acs.manager.manager.service.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -33,9 +29,13 @@
@Autowired
private LocService locService;
@Autowired
+ private StaService staService;
+ @Autowired
private FuncStaService funcStaService;
@Autowired
private SnowflakeIdWorker snowflakeIdWorker;
+ @Autowired
+ private LaneService laneService;
@Override
public synchronized String generateSeqNum() {
@@ -115,6 +115,52 @@
return Boolean.TRUE;
}
+ @Override
+ public Lane checkoutOriginLane(Task task) {
+ Long codeId = null;
+ TaskTypeType typeType = TaskTypeType.get(task.getTaskTypeEl());
+ switch (Objects.requireNonNull(typeType)) {
+ case LOC_TO_LOC:
+ case LOC_TO_STA:
+ codeId = locService.getById(task.getOriLoc()).getCode();
+ break;
+ case STA_TO_LOC:
+ case STA_TO_STA:
+ codeId = staService.getById(task.getOriSta()).getCode();
+ break;
+ default:
+ break;
+ }
+
+ if (null == codeId) {
+ return null;
+ }
+ return laneService.search(codeService.getById(codeId).getData());
+ }
+
+ @Override
+ public Lane checkoutDestinationLane(Task task) {
+ Long codeId = null;
+ TaskTypeType typeType = TaskTypeType.get(task.getTaskTypeEl());
+ switch (Objects.requireNonNull(typeType)) {
+ case LOC_TO_LOC:
+ case STA_TO_LOC:
+ codeId = locService.getById(task.getDestLoc()).getCode();
+ break;
+ case LOC_TO_STA:
+ case STA_TO_STA:
+ codeId = staService.getById(task.getDestSta()).getCode();
+ break;
+ default:
+ break;
+ }
+
+ if (null == codeId) {
+ return null;
+ }
+ return laneService.search(codeService.getById(codeId).getData());
+ }
+
@Transactional
public void maintainLocSts(Task task, Boolean complete) {
Loc oriLoc = null; Loc destLoc = null;
--
Gitblit v1.9.1