pjb
6 天以前 277797abc0adb5e08c912abc3c10b1a1826d3460
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -381,11 +381,12 @@
            for (WrkMast wrkMast : wrkMasts) {
                Integer rgvSstaNo = wrkMast.getRgvSstaNo();
                // 1090,1089,1086,1083 按1083站点位置计算,能取1083,就能取1090,1089,1086,避免任务延迟下发方案一直给1083发
                if (rgvSstaNo == 1090 || rgvSstaNo == 1089 || rgvSstaNo == 1086 || rgvSstaNo == 1105) {
                    rgvSstaNo = 1083;
                }
//                if (rgvSstaNo == 1090 || rgvSstaNo == 1089 || rgvSstaNo == 1086 || rgvSstaNo == 1105) {
//                    rgvSstaNo = 1083;
//                }
                BasDevpPosition basDevpPositions = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("dev_no", rgvSstaNo)); // 站点
                long position = basDevpPositions.getPlcPosition(); // 起始站位置
                position += 50; // 小车取货定位精度 +- 50,站点位置10000,小车在10050也是可以取的
                TreeMap<Long, RgvProtocol> map = new TreeMap<>();
                for (RgvProtocol rgvProtocol : rgvProtocolList) {
                    long distance;
@@ -400,7 +401,7 @@
//                StringBuilder sb = new StringBuilder();
//                for (Map.Entry<Long, RgvProtocol> rgvProtocolMap : map.entrySet()) {
//                    RgvProtocol rgvProtocol = rgvProtocolMap.getValue();
//                    sb.append("[").append(rgvProtocol.getRgvNo()).append(",").append(rgvProtocol.getStatusType().desc).append("]");
//                    sb.append("[").append(rgvProtocol.getRgvNo()).append(",").append(rgvProtocol.getRgvPos()).append(",").append(rgvProtocol.getStatusType().desc).append("]");
//                }
//                log.info(sb.toString());
@@ -568,15 +569,16 @@
                        && rgvProtocol.getModeType() == RgvModeType.AUTO
                        && rgvProtocol.getTaskNo1() != 0
                ) {
                    log.info("{}号小车小车取货越位,状态{},参数{}",rgvProtocol.getRgvNo(),rgvProtocol.getStatusType(),rgvProtocol);
                    WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", rgvProtocol.getTaskNo1().longValue()));
                    WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", rgvProtocol.getTaskNo1().longValue())
                    .eq("rgv_no",rgvProtocol.getRgvNo()));
                    if (Cools.isEmpty(wrkMast)) {
                        log.error("未查到小车执行任务!" + rgvProtocol.getTaskNo1());
                        log.error(rgvProtocol.getRgvNo() + "小车取货越位未查到小车执行任务!" + rgvProtocol.getTaskNo1());
                        continue;
                    } else if(wrkMast.getWrkSts() != 10) {
                        log.warn("执行任务状态不符合!" + rgvProtocol.getTaskNo1());
                        log.warn(rgvProtocol.getRgvNo() + "小车取货越位执行任务状态不符合!" + rgvProtocol.getTaskNo1());
                        continue;
                    }
                    log.info("{}号小车小车取货越位,状态{},参数{}",rgvProtocol.getRgvNo(),rgvProtocol.getStatusType(),rgvProtocol);
                    boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo());
                    if (!rgvComplete) {
                        log.error("小车取货越位,任务取消,复位失败,小车号{}!", rgvProtocol.getRgvNo());