#ZH
野心家
2025-05-28 f37003093c6256e7349558faad0532e8b1d0029c
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1770,6 +1770,8 @@
                            }
                        }
                        if (!sign && staList.size()>1) {
                            for (Integer staNoNow : rangeList) {
                                for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()) {
@@ -1791,7 +1793,34 @@
                                    break;
                                }
                            }
                        }else if (!sign && staList.size()==1){
                            BasDevpPosition basDevpPosition1 = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", staList.get(0)));
                            if (Math.abs(basDevpPosition1.getPlcPosition()- rgvProtocol.getRgvPos())<rgvProtocol.getCarBodyJiaoMing()+rgvProtocol.getCarBodyKunPeng() + avoidDistance*2){
                                for (Integer staNoNow : rangeList) {
                                    for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()) {
                                        if (rgvStn.getStaNo().equals(staNoNow)) {
                                            TaskWrk taskWrk = deviceDetection(rgvStn);
                                            if (taskWrk != null) {
                                                BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint())));
                                                if (RouteUtils.CheckIfItIsWithinTheRange(rangeList, basDevpPosition.getPlcPosition(), basDevpPositions, itSmall)) {
                                                    System.out.println("筛选半边范围内任务==="+rgvSlave.getId()+"==="+taskWrk);
                                                    System.out.println("筛选半边范围内任务==="+rgvSlave.getId()+"==="+JSON.toJSONString(belongToRange));
                                                    sign = taskGenerate(rgvSlave, rgvStn, 0);
                                                }
                                            }
                                            break;
                                        }
                                    }
                                    if (sign) {
                                        break;
                                    }
                                }
                            }
                        }
                        if (!sign && staList.size()>1) {
                            //  半边区域内取货任务
                            for (Integer staNoNow : rangeList) {