#
luxiaotao1123
2022-03-11 38d738c1eafd4cf78df1521ea5036de5a6c995c5
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -428,7 +428,7 @@
                }
                if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == null)) {
                    // 查询工作档
                    WrkMast wrkMast = wrkMastMapper.selectPakOutStep2(staProtocol.getSiteId());
                    WrkMast wrkMast = wrkMastMapper.selectPakOutStep15(staProtocol.getSiteId());
                    if (wrkMast == null) {
                        continue;
                    }
@@ -457,14 +457,14 @@
                            continue;
                        }
                        // 更新工作档状态为14失败
                        wrkMast.setWrkSts(14L);
                        // 更新工作档状态为 16.出库完成
                        wrkMast.setWrkSts(16L);
                        wrkMast.setCrnEndTime(new Date());
                        if (wrkMastMapper.updateById(wrkMast) != 0) {
                            // 复位堆垛机
                            crnThread.setResetFlag(true);
                        } else {
                            log.error("更新工作档的工作状态为14失败!!! [工作号:{}]", wrkMast.getWrkNo());
                            log.error("更新工作档的工作状态为 16.出库完成 失败!!! [工作号:{}]", wrkMast.getWrkNo());
                        }
                    }
@@ -905,6 +905,12 @@
                    return;
                }
                // todo
                // 最外层库位,直接堆垛机出库
                if (locMastService.isOutMost(wrkMast.getLocNo())) {
                // 1.堆垛机开始移动
                CrnCommand crnCommand = new CrnCommand();
                crnCommand.setCrnNo(slave.getId()); // 堆垛机编号
@@ -920,15 +926,30 @@
                if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) {
                    log.error("堆垛机命令下发失败,堆垛机号={},任务数据={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand));
                } else {
                    // 修改工作档状态 11.生成出库ID => 12.吊车出库中
                        // 修改工作档状态 11.生成出库ID => 15.吊车出库中
                    Date now = new Date();
                    wrkMast.setWrkSts(12L);
                        wrkMast.setWrkSts(15L);
                    wrkMast.setCrnStrTime(now);
                    wrkMast.setModiTime(now);
                    if (wrkMastMapper.updateById(wrkMast) == 0) {
                        log.error("修改工作档状态 11.生成出库ID => 12.吊车出库中 失败!!,工作号={}", wrkMast.getWrkNo());
                            log.error("修改工作档状态 11.生成出库ID => 15.吊车出库中 失败!!,工作号={}", wrkMast.getWrkNo());
                    }
                }
                } else {
                }
            }
        }
    }
@@ -1059,7 +1080,7 @@
                    continue;
                }
                // 入库 + 库位转移
                if (wrkMast.getWrkSts() == 7 || (wrkMast.getWrkSts() == 12 && wrkMast.getIoType() == 11)){
                if (wrkMast.getWrkSts() == 7 || (wrkMast.getWrkSts() == 15 && wrkMast.getIoType() == 11)){
                    // 判断是否需要小车入库
                    if (locMastService.isOutMost(wrkMast.getLocNo())) {
                        // ==> 9.入库完成