From b050b0ef27649165992c264f63042d339d86a4f3 Mon Sep 17 00:00:00 2001
From: L <L@132>
Date: 星期二, 03 二月 2026 16:22:10 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   41 ++++++++++++++++++++++++++++++++++++-----
 1 files changed, 36 insertions(+), 5 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 b6d81ee..c0730c2 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -728,7 +728,11 @@
                             if (offer) {
                                 log.info("涓嬪彂杈撻�佺嚎浠诲姟鎴愬姛锛歵askWrk:" + JSON.toJSONString(taskWrk));
                                 Date now = new Date();
-                                taskWrk.setStatus(TaskStatusType.OVER3.id);
+                                if (taskWrk.getTargetPoint().equals(staProtocol.getSiteId().toString())){
+                                    taskWrk.setStatus(TaskStatusType.OVER.id);
+                                } else {
+                                    taskWrk.setStatus(TaskStatusType.OVER3.id);
+                                }
                                 taskWrk.setWrkSts(14);
                                 taskWrk.setModiTime(now);
                                 taskWrk.setCompleteTime(now);
@@ -1765,7 +1769,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();
                 }
             }
@@ -2477,13 +2481,40 @@
                 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();
                         }
-                        BasDevpPosition basDevpPositionEnd = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint())));
-                        Long[] longList = {taskWrk.getWrkNo().longValue(),startP,basDevpPositionEnd.getPlcPosition()};
+
+                        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 {
@@ -2508,7 +2539,7 @@
                         }
                         if (endP == 0){
                             if (itSmall){
-                                startP = System.currentTimeMillis();
+                                endP = System.currentTimeMillis();
                             }
                         }
 //                        taskNoNow

--
Gitblit v1.9.1