zhangchao
2024-09-02 7225bce9f6e79f4c6ac4ea592b644a6447f81c2e
对照协议调整
4个文件已修改
50 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/enums/CrnStatusType.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/MelsecCrnThread.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/SiemensCrnThread.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -189,9 +189,8 @@
                if (!staProtocol.isLoading()) {
                    continue;
                }
                System.out.println(staProtocol);
                if (staProtocol.isAutoing() && staProtocol.isInEnable()
                        && !staProtocol.isEmptyMk() && (staProtocol.getWorkNo() > 0 && staProtocol.getWorkNo() < 6001)
                        && !staProtocol.isEmptyMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() > 9990)
                        && staProtocol.isPakMk() && staProtocol.getStamp() >= 2 && staProtocol.getStamp() != 3) {// && !Cools.isEmpty(barcode)) {
                    News.warn("" + mark + " - 0" + " - 开始执行");
@@ -636,10 +635,17 @@
                        // 移动中
                        continue;
                    }
                    CrnStatusType statusType = crnProtocol.getStatusType();
                    CrnStatusType statusTypeTwo = crnProtocol.getStatusTypeTwo();
                    Boolean wait = false;
                    if (statusType == CrnStatusType.WAITING_ONE || statusTypeTwo == CrnStatusType.WAITING_TWO || (statusType == CrnStatusType.WAITING_All && statusTypeTwo == CrnStatusType.WAITING_All)) {
                        wait = true;
                    }
                    //  判断堆垛机状态等待确认
                    if (crnProtocol.modeType == CrnModeType.AUTO && crnProtocol.getTaskNo().equals(wrkMast.getWrkNo().shortValue())
                            && crnProtocol.statusType == CrnStatusType.WAITING
                            && wait
                            && crnProtocol.forkPosType == CrnForkPosType.HOME) {
                        News.warnNoLog("" + mark + " - 0" + " - 开始执行");
                        // 命令下发区 --------------------------------------------------------------------------
@@ -650,18 +656,16 @@
                        if (!MessageQueue.offer(SlaveType.Devp, crnStn.getDevpPlcId(), new Task(2, staProtocol))) {
                            continue;
                        }
                        // 更新工作档状态为14失败
                        wrkMast.setWrkSts(14L);
                        wrkMast.setCrnEndTime(new Date());
                        if (wrkMastMapper.updateById(wrkMast) != 0) {
                            // 复位堆垛机
                            Short mode = crnProtocol.getMode();
                            if (mode == 1) {
                            if (statusType == CrnStatusType.WAITING_ONE) {
                                crnThread.setResetFlag(true);
                            } else if (mode == 2) {
                            } else if (statusTypeTwo == CrnStatusType.WAITING_TWO) {
                                crnThread.setResetFlagTwo(true);
                            } else if (mode == 3) {
                            } else {
                                crnThread.setResetFlag(true);
                                crnThread.setResetFlagTwo(true);
                            }
@@ -673,7 +677,7 @@
                        News.errorNoLog("" + mark + " - 6" + " - 堆垛机信息不符合入库条件!!!"
                                + " 堆垛机状态:" + crnProtocol.modeType + "==自动AUTO:" + CrnModeType.AUTO
                                + "、堆垛机任务号:" + crnProtocol.getTaskNo() + "==工作档任务号:" + wrkMast.getWrkNo().shortValue()
                                + "、状态枚举:" + crnProtocol.statusType + "==WAITING:90 //任务完成等待WCS确认):" + CrnStatusType.WAITING
                                + "、状态枚举:" + crnProtocol.statusType + "==WAITING:90 //任务完成等待WCS确认):" + CrnStatusType.WAITING_ONE
                                + "、货叉位置:" + crnProtocol.forkPosType + "==HOME:0  // 货叉原位:" + CrnForkPosType.HOME);
                    }
@@ -1353,17 +1357,22 @@
            if (crnProtocol == null) {
                continue;
            }
            CrnStatusType statusType = crnProtocol.getStatusType();
            CrnStatusType statusTypeTwo = crnProtocol.getStatusTypeTwo();
            boolean wait = false;
            if (statusType == CrnStatusType.WAITING_ONE || statusTypeTwo == CrnStatusType.WAITING_TWO || (statusType == CrnStatusType.WAITING_All && statusTypeTwo == CrnStatusType.WAITING_All)) {
                wait = true;
            }
            //  状态:等待确认 并且  任务完成位 = 1
            if (crnProtocol.statusType == CrnStatusType.WAITING && crnProtocol.getTaskNo() != 0) {
            if (wait && crnProtocol.getTaskNo() != 0) {
                News.warn("" + mark + " - 0" + " - 开始执行对工作档的完成操作");
                if (crnProtocol.getTaskNo() == 9999) {
                    // 堆垛机复位
                    Short mode = crnProtocol.getMode();
                    if (mode == 1) {
                    if (statusType == CrnStatusType.WAITING_ONE) {
                        crnThread.setResetFlag(true);
                    } else if (mode == 2) {
                    } else if (statusTypeTwo == CrnStatusType.WAITING_TWO) {
                        crnThread.setResetFlagTwo(true);
                    } else if (mode == 3) {
                    } else {
                        crnThread.setResetFlag(true);
                        crnThread.setResetFlagTwo(true);
                    }
src/main/java/com/zy/core/enums/CrnStatusType.java
@@ -13,7 +13,9 @@
    ORIGIN_GO(7, "回原点"),
    ORIGIN_BACK(8, "回反原点"),
    MOVING(9, "走行中"),
    WAITING(10, "任务完成等待WCS确认"),
    WAITING_ONE(10, "任务完成等待WCS确认"),
    WAITING_TWO(20, "任务完成等待WCS确认"),
    WAITING_All(30, "任务完成等待WCS确认"),
    PAUSE(11, "任务暂停"),
    SOS(99, "报警"),
    UNKNOW(100, "其他"),
src/main/java/com/zy/core/thread/MelsecCrnThread.java
@@ -194,7 +194,7 @@
                OutputQueue.CRN.offer(MessageFormat.format("【{0}】[id:{1}] <<<<< 实时数据更新成功",DateUtils.convert(new Date()), slave.getId()));
                // 复位信号
                if (crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) {
                if (crnProtocol.getStatusType().equals(CrnStatusType.WAITING_ONE)) {
                    News.error("MelsecCrn"+" - 3"+" ---------第一步、[堆垛机号:{}][工作号:{}]==>> 状态为90,等待确认!!",slave.getId(),crnProtocol.getTaskNo());
                    if (resetFlag) {
                        if(crnProtocol.getTaskNo()==9999){
src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -187,10 +187,9 @@
                OutputQueue.CRN.offer(MessageFormat.format("【{0}】[id:{1}] <<<<< 实时数据更新成功", DateUtils.convert(new Date()), slave.getId()));
                System.out.println(crnProtocol);
                if (crnProtocol.getMode() == 1) {
                    // 复位信号
                    if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) {
                    if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusType().equals(CrnStatusType.WAITING_ONE)) {
                        if (resetFlag) {
                            if (crnProtocol.getTaskNo() == 9999) {
                                backHpFlag = false;
@@ -204,7 +203,7 @@
                    }
                } else if (crnProtocol.getMode() == 2) {
                    // 复位信号
                    if (!Cools.isEmpty(crnProtocol.getStatusTypeTwo()) && crnProtocol.getStatusTypeTwo().equals(CrnStatusType.WAITING)) {
                    if (!Cools.isEmpty(crnProtocol.getStatusTypeTwo()) && crnProtocol.getStatusTypeTwo().equals(CrnStatusType.WAITING_TWO)) {
                        if (resetFlagTwo) {
                            if (crnProtocol.getTaskNo() == 9999) {
                                backHpFlag = false;
@@ -218,7 +217,7 @@
                    }
                } else if (crnProtocol.getMode() == 3) {
                    // 复位信号
                    if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusType().equals(CrnStatusType.WAITING) && !Cools.isEmpty(crnProtocol.getStatusTypeTwo()) && crnProtocol.getStatusTypeTwo().equals(CrnStatusType.WAITING)) {
                    if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusType().equals(CrnStatusType.WAITING_All)) {
                        if (resetFlag && resetFlagTwo) {
                            if (crnProtocol.getTaskNo() == 9999) {
                                backHpFlag = false;