自动化立体仓库 - WCS系统
野心家
2023-10-27 77c5a9937bd6a2ffbb2a45c10fa5d65d66015397
Merge remote-tracking branch 'origin/zjfnwcs' into zjfnwcs
1个文件已修改
44 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -569,12 +569,53 @@
//            if(crnThread.isBackHpFlag()){
//                continue;
//            }
            // 只有当堆垛机空闲 并且 无任务时才继续执行
            if (crnProtocol.getStatusType() == CrnStatusType.IDLE && crnProtocol.getTaskNo() == 0 && crnProtocol.getModeType() == CrnModeType.AUTO
                    && crnProtocol.getLoaded() == 0 && crnProtocol.getForkPos() == 0) {
                // 库位移转
                this.stnToStn(crn, crnProtocol);
            }else {
                continue;
            }
            try{
                Thread.sleep(1000);
            }catch (Exception e){
                continue;
            }
            crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId());
            crnProtocol = crnThread.getCrnProtocol();
            if (crnProtocol == null) { continue; }
            basCrnp = basCrnpService.selectById(crn.getId());
            if (basCrnp == null) {
                log.error("{}号堆垛机尚未在数据库进行维护!", crn.getId());
                continue;
            }
            // 只有当堆垛机空闲 并且 无任务时才继续执行
            if (crnProtocol.getStatusType() == CrnStatusType.IDLE && crnProtocol.getTaskNo() == 0 && crnProtocol.getModeType() == CrnModeType.AUTO
                    && crnProtocol.getLoaded() == 0 && crnProtocol.getForkPos() == 0) {
                // 库位移转
                this.locToLoc(crn, crnProtocol);
            }else {
                continue;
            }
            try{
                Thread.sleep(1000);
            }catch (Exception e){
                continue;
            }
            crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId());
            crnProtocol = crnThread.getCrnProtocol();
            if (crnProtocol == null) { continue; }
            basCrnp = basCrnpService.selectById(crn.getId());
            if (basCrnp == null) {
                log.error("{}号堆垛机尚未在数据库进行维护!", crn.getId());
                continue;
            }
            // 只有当堆垛机空闲 并且 无任务时才继续执行
            if (crnProtocol.getStatusType() == CrnStatusType.IDLE && crnProtocol.getTaskNo() == 0 && crnProtocol.getModeType() == CrnModeType.AUTO
                    && crnProtocol.getLoaded() == 0 && crnProtocol.getForkPos() == 0) {
                // 如果最近一次是入库模式
                if (crnProtocol.getLastIo().equals("I")) {
                    if (basCrnp.getInEnable().equals("Y")) {
@@ -597,7 +638,6 @@
                }
            }
            // 库位移转
            this.locToLoc(crn, crnProtocol);
//            this.crnRebackHp(crnProtocol, crnThread);
        }