From cc53aa90eaf44db5f474af473285187486da8370 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 03 十一月 2025 21:13:27 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   72 ++++++++++++++++++++++++++++++++++++
 1 files changed, 72 insertions(+), 0 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 d358482..35cf0f5 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -3206,4 +3206,76 @@
         }
     }
 
+
+
+    public synchronized void taskStartDemo() {
+        for (RgvSlave rgvSlave : slaveProperties.getRgv()) {
+            try {
+                if (rgvDetection(rgvSlave)) {
+                    String taskNoNow = rgvOtherTaskWrk(rgvSlave);
+                    List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<BasDevpPosition>().orderBy("PLC_POSITION", true));
+                    boolean itSmall = new TrackRangeUtils().IsItSmall(rgvSlave);
+                    if (basDevpPositions.isEmpty()) {
+                        log.error("鑾峰彇鎵�鏈夌珯鐐逛俊鎭紓甯�");
+                        try{
+                            DeviceErrorService deviceErrorService = SpringUtils.getBean(DeviceErrorService.class);
+                            deviceErrorService.addDeviceError("rgvErr", rgvSlave.getId(), "鎸囦护鐢熸垚锛氳幏鍙栨墍鏈夌珯鐐逛俊鎭紓甯�");
+                        } catch (Exception e2){
+                        }
+                        continue;
+                    }
+                    List<TaskWrk> taskWrkList = new ArrayList<>();
+                    List<Integer> staList = new ArrayList<>();
+                    for (RgvSlave.RgvStn inSta : rgvSlave.getRgvInSta()) {
+                        TaskWrk taskWrk = deviceDetection(inSta);
+                        if (taskWrk != null) {
+                            if (taskWrk.getWrkNo().toString().equals(taskNoNow)) continue;
+                            taskWrkList.add(taskWrk);
+                            staList.add(inSta.getStaNo());
+                        }
+                    }
+
+                    if (taskWrkList.isEmpty() || staList.isEmpty()) continue;
+
+                    boolean sign = false;
+
+                    if (!sign){
+                        //鍙敤鍖哄煙灏辫繎鍙栬揣
+                        //灏辫繎鎺掑簭
+                        RgvProtocol rgvProtocol = RgvStatusCache.getRgvStatus(rgvSlave.getId());
+                        List<Integer> rangeList = RouteUtils.SortNearby(staList, rgvProtocol.RgvPos, basDevpPositions);
+                        //  鍗婅竟鍖哄煙鍐呭彇璐т换鍔�
+                        for (Integer staNoNow : rangeList) {
+                            for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()) {
+                                if (rgvStn.getStaNo().equals(staNoNow)) {
+                                    TaskWrk taskWrk = deviceDetection(rgvStn);
+                                    if (taskWrk != null) {
+                                        Integer outStaNo = BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint());
+                                        for (RgvSlave.RgvStn rgvStnOut : rgvSlave.getRgvOutSta()) {
+                                            if (rgvStnOut.getStaNo().equals(outStaNo)) {
+                                                sign = taskGenerate(rgvSlave, rgvStn, 0);
+                                                break;
+                                            }
+                                        }
+                                    }
+                                    break;
+                                }
+                            }
+                            if (sign) {
+                                break;
+                            }
+                        }
+                    }
+                }
+            } catch (Exception e) {
+                log.error("浠诲姟鐢熸垚澶辫触===銆嬪紓甯镐俊鎭細{}", e.getMessage());
+                try{
+                    DeviceErrorService deviceErrorService = SpringUtils.getBean(DeviceErrorService.class);
+                    deviceErrorService.addDeviceError("rgvErr", rgvSlave.getId(), "鎸囦护鐢熸垚澶辫触");
+                } catch (Exception e2){
+                }
+            }
+        }
+    }
+
 }

--
Gitblit v1.9.1