From 98f1c4c9ffbbb3347ad752821505bc3c70ea4efc Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期日, 27 四月 2025 10:52:50 +0800 Subject: [PATCH] * --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 16 ++++++++++------ 1 files changed, 10 insertions(+), 6 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 1fbc07a..be3b65a 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -1211,7 +1211,7 @@ if (rgvOtherStatusEnable(rgvSlave)){ //鍒嗘垚涓婁笅涓ら儴鍒嗕换鍔� - List<Integer>[] avoidRange = RouteUtils.gradeRange(staList, basDevpPositions); + List<Integer>[] avoidRange = RouteUtils.gradeRange(staList, basDevpPositions,itSmall); List<Integer> rangeListSou = avoidRange[itSmall ? 0 : 1]; List<Integer> rangeListSouOther = avoidRange[itSmall ? 1 : 0]; //灏辫繎鎺掑簭 @@ -1223,15 +1223,17 @@ //绛涢�夎寖鍥村唴浠诲姟 //灏辫繎鎺掑簭 - RgvProtocol rgvProtocolOther = RgvStatusCache.getRgvStatus(rgvSlave.getOtherId()); //绛涢�夊湪鑼冨洿浠诲姟 - List<Integer> belongToRange = RouteUtils.belongToRange(rangeList, rgvProtocolOther.getRgvPosDestination(), basDevpPositions); + Long[][] avoidedRange = new TrackRangeUtils().avoidRangeArr(rgvSlave, trackEntireLength, trackBenchmark, avoidDistance); + List<Integer> belongToRange = RouteUtils.SortNearby(RouteUtils.belongToRange(rangeList, avoidedRange[0], basDevpPositions), rgvProtocol.RgvPos, basDevpPositions); + for (Integer staNoNow : belongToRange){ for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()){ if (rgvStn.getStaNo().equals(staNoNow)){ TaskWrk taskWrk = deviceDetection(rgvStn); if (taskWrk!=null){ - if (RouteUtils.CheckIfItIsWithinTheRange(rangeList,taskWrk.getTargetPointConvert(),basDevpPositions)){ + BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", taskWrk.getTargetPointConvert())); + if (RouteUtils.CheckIfItIsWithinTheRange(rangeList,basDevpPosition.getPlcPosition(),basDevpPositions,itSmall)){ sign = taskGenerate(rgvSlave,rgvStn,0); } } @@ -1263,7 +1265,8 @@ if (rgvStn.getStaNo().equals(staNoNow)){ TaskWrk taskWrk = deviceDetection(rgvStn); if (taskWrk!=null){ - if (RouteUtils.CheckIfItIsWithinTheRange(rangeList,taskWrk.getTargetPointConvert(),basDevpPositions)){ + BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", taskWrk.getTargetPointConvert())); + if (RouteUtils.CheckIfItIsWithinTheRange(rangeList,basDevpPosition.getPlcPosition(),basDevpPositions,itSmall)){ sign = taskGenerate(rgvSlave,rgvStn,0); } } @@ -1296,7 +1299,8 @@ if (rgvStn.getStaNo().equals(staNoNow)){ TaskWrk taskWrk = deviceDetection(rgvStn); if (taskWrk!=null){ - if (RouteUtils.CheckIfItIsWithinTheRange(rangeList,taskWrk.getTargetPointConvert(),basDevpPositions)){ + BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", taskWrk.getTargetPointConvert())); + if (RouteUtils.CheckIfItIsWithinTheRange(rangeList,basDevpPosition.getPlcPosition(),basDevpPositions,itSmall)){ sign = taskGenerate(rgvSlave,rgvStn,0); } } -- Gitblit v1.9.1