From 4d9e2ea59aa2e9fbdcacd3d8d8dfd543a2fccba5 Mon Sep 17 00:00:00 2001
From: L <L@132>
Date: 星期五, 23 一月 2026 13:53:06 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 87 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 86 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index a9d9f01..bb2a5dc 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1765,7 +1765,7 @@
ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol();
if (!allTaskProtocol.isEmpty()) {
for (TaskProtocol taskProtocol : allTaskProtocol.values()) {
- if (taskProtocol.getTaskNo() != 0) {
+ if (taskProtocol.getTaskNo() != 0 && taskProtocol.getTaskNo()!=32222L) {
return taskProtocol.getTaskNo().toString();
}
}
@@ -2465,10 +2465,90 @@
ArrayList<Long[]> arrayListAll = new ArrayList<>();
for (RgvSlave rgvSlave : slaveProperties.getRgv()) {
try{
+ boolean itSmall = new TrackRangeUtils().IsItSmall(rgvSlave);
String taskNoNow = rgvOtherTaskWrk(rgvSlave);
+ if (taskNoNow.equals("鏃�")){
+ continue;
+ }
if (!arrayListOld.contains(taskNoNow)){
arrayListOld.add(taskNoNow);
}
+
+ TaskWrk taskWrk = taskWrkMapper.selectByTaskNo(taskNoNow);
+ if (taskWrk != null) {
+ if (!arrayListAllP.contains(taskWrk.getWrkNo())) {
+
+ RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
+ TaskProtocolCache taskProtocolCache = rgvThread.getTaskProtocolCache();
+
+ arrayListAllP.add(taskWrk.getWrkNo());
+ long startP = 0;
+ if (!itSmall){
+ startP = System.currentTimeMillis();
+ }
+
+ long endP = 0;
+ long endP1 = 0;
+ long endP2 = 0;
+ ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol();
+ for (TaskProtocol taskProtocol : allTaskProtocol.values()){
+ if (taskProtocol.getTaskStatus() == 2){//鍙�
+ endP1 = taskProtocol.getTargetPosition();
+ } else if (taskProtocol.getTaskStatus() == 3){//鏀�
+ endP2 = taskProtocol.getTargetPosition();
+ }
+ }
+ if (endP1 > endP2){
+ if (itSmall){
+ endP = endP1;
+ } else {
+ endP = endP2;
+ }
+ }
+ if (endP == 0){
+ if (itSmall){
+ endP = System.currentTimeMillis();
+ }
+ }
+ Long[] longList = {taskWrk.getWrkNo().longValue(),startP,endP};
+ arrayListAll.add(longList);
+ }
+ } else {
+ RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
+ TaskProtocolCache taskProtocolCache = rgvThread.getTaskProtocolCache();
+
+ try {
+ long startP = 0;
+ long endP = 0;
+ ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol();
+ for (TaskProtocol taskProtocol : allTaskProtocol.values()){
+ if (taskProtocol.getTaskStatus() == 2){//鍙�
+ startP = taskProtocol.getTargetPosition();
+ } else if (taskProtocol.getTaskStatus() == 3){//鏀�
+ endP = taskProtocol.getTargetPosition();
+ }
+ }
+ if (startP == 0 ){
+ if (!itSmall){
+ startP = System.currentTimeMillis();
+ }
+ }
+ if (endP == 0){
+ if (itSmall){
+ endP = System.currentTimeMillis();
+ }
+ }
+// taskNoNow
+ long parseLong = Long.parseLong(taskNoNow);
+ Long[] longList = {parseLong,startP,endP};
+ arrayListAll.add(longList);
+
+ } catch (Exception e) {
+ log.error("浠诲姟杩囨护鏌ヨ灏忚溅鎵ц浠诲姟寮傚父锛�"+e.getMessage());
+ return new ArrayList<>();
+ }
+ }
+
} catch (Exception e) {
}
}
@@ -2492,6 +2572,11 @@
List<Long> wrkNoList = new ArrayList<>();
List<Long> signWrk = new ArrayList<>();
for (Long[] longList : crossingPathsW) {
+ if (arrayListOld.contains(longList[0].toString()) || arrayListOld.contains(longList[1].toString())){
+ signWrk.add(longList[0]);
+ signWrk.add(longList[1]);
+ continue;
+ }
if (!wrkNoList.contains(longList[0]) && !signWrk.contains(longList[0])) {
if (!wrkNoList.contains(longList[1]) && !signWrk.contains(longList[1])) {
wrkNoList.add(longList[0]);
--
Gitblit v1.9.1