#
Junjie
2024-10-15 f43b508dda7334487a1640b0bbd908d7b3aa3cb6
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java
@@ -92,8 +92,13 @@
                //----------读取提升机状态-----------
                //模式
                liftProtocol.setModel(true);
                boolean runningState = data.getInteger("runningState") == 1;
                if (!data.getInteger("completeTaskNo").equals(data.getInteger("taskNo"))) {
                    runningState = true;//工作号不一致,认为处于运行中
                }
                //运行状态
                liftProtocol.setRun(data.getInteger("runningState") == 1);
                liftProtocol.setRun(runningState);
                //就绪状态
                liftProtocol.setReady(data.getInteger("readyState") == 1);
                //有托盘
@@ -104,6 +109,8 @@
                liftProtocol.setErrorCode("0");
                //层
                liftProtocol.setLev(data.getInteger("curFloor"));
                //已完成的任务号
                liftProtocol.setCompleteTaskNo(data.getString("completeTaskNo"));
                //************补充扩展字段*************
@@ -381,7 +388,11 @@
        switch (Objects.requireNonNull(MotionCtgType.get(String.valueOf(flag)))){
            case SHUTTLE_MOVE_FROM_LIFT://穿梭车出提升机
            case SHUTTLE_MOVE_TO_LIFT://穿梭车进提升机
            case LIFT_SHUTTLE_ARRIVAL://提升机解锁
                return isIdleShuttleMoveToLift();
            case LIFT_LOCK://提升机锁定
            case LIFT_UNLOCK://提升机解锁
                return isIdleLiftLock();
        }
        return false;
@@ -404,6 +415,21 @@
                    return false;
                }
            }
            return true;
        }
        return false;
    }
    //提升机锁定-提升机状态判断
    private boolean isIdleLiftLock() {
        // 判断提升机是否自动、就绪、空闲
        if (this.liftProtocol.getModel()
                && !this.liftProtocol.getRun()
                && this.liftProtocol.getPakMk()
                && this.liftProtocol.getErrorCode().equals("0")
                && (this.liftProtocol.getProtocolStatusType().equals(LiftProtocolStatusType.IDLE)
                || this.liftProtocol.getProtocolStatusType().equals(LiftProtocolStatusType.WAITING))
        ) {
            return true;
        }
        return false;
@@ -457,6 +483,11 @@
        return extend.getLock();
    }
    @Override
    public int generateDeviceTaskNo(int taskNo, MotionCtgType motionCtgType) {
        return taskNo;
    }
    //***************设备层通讯-不同厂商设备通讯方案不一致***************
    //请求登录