#
LSH
2024-04-03 f78f7a18a7fc91bea907c5238b788deb1e082364
#
1个文件已修改
46 ■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -4088,6 +4088,7 @@
            if (integer==0){
                return;
            }
            boolean signRgv = true;
            for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
@@ -4101,25 +4102,52 @@
                }
                // 只有当RGV空闲、自动,工位一无物//rgv可用
                if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                if (!(rgvProtocol.getStatusType() == RgvStatusType.IDLE
                        && rgvProtocol.getModeType() == RgvModeType.AUTO
                        && rgvProtocol.getLoaded1()==0  //现场修改:叠盘机,不满都算无物,怎么判断需要跟电控对接
                        && rgvProtocol.getTaskNo1()==0
                        && rgvProtocol.getTaskNo2()==0
                        && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                        && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
                ) {
                    BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
                    if (rgvProtocol.getRgvPosI().equals(basRgvMap.getStartRoute())){
                )) {
                    signRgv = false;
                    break;
                }
            }
            if (signRgv){
                for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
                    RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
                    RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                    if (rgvProtocol == null) {
                        continue;
                    }
                    if (rgvProtocol.getRgvNo()==1 && (rgvProtocol.getRgvPosI().equals(101) || rgvProtocol.getRgvPosI().equals(102) )){
                        continue;
                    } else if (rgvProtocol.getRgvNo()==2 && (rgvProtocol.getRgvPosI().equals(116) || rgvProtocol.getRgvPosI().equals(117) ) ){
                    BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
                    if (basRgv == null) {
                        log.error("{}号RGV尚未在数据库进行维护!", rgvSlave.getId());
                        continue;
                    }
                    rgvAvoidanceXY(rgvProtocol.getRgvNo());
                    rgvMapUpdate(basRgvMap,basRgvMap.getStartRoute(),basRgvMap.getStartRoute());
                    // 只有当RGV空闲、自动,工位一无物//rgv可用
                    if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                            && rgvProtocol.getModeType() == RgvModeType.AUTO
                            && rgvProtocol.getLoaded1()==0  //现场修改:叠盘机,不满都算无物,怎么判断需要跟电控对接
                            && rgvProtocol.getTaskNo1()==0
                            && rgvProtocol.getTaskNo2()==0
                            && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                            && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
                    ) {
                        BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
                        if (rgvProtocol.getRgvPosI().equals(basRgvMap.getStartRoute())){
                            continue;
                        }
                        if (rgvProtocol.getRgvNo()==1 && (rgvProtocol.getRgvPosI().equals(101) || rgvProtocol.getRgvPosI().equals(102) )){
                            continue;
                        } else if (rgvProtocol.getRgvNo()==2 && (rgvProtocol.getRgvPosI().equals(116) || rgvProtocol.getRgvPosI().equals(117) ) ){
                            continue;
                        }
                        rgvAvoidanceXY(rgvProtocol.getRgvNo());
                        rgvMapUpdate(basRgvMap,basRgvMap.getStartRoute(),basRgvMap.getStartRoute());
                    }
                }
            }
        }catch (Exception e){