自动化立体仓库 - WCS系统
#
luxiaotao1123
2022-03-14 d170b81d2befd6aa898168bdd68ab8ac04450224
src/main/java/com/zy/core/model/protocol/SteProtocol.java
@@ -1,7 +1,8 @@
package com.zy.core.model.protocol;
import com.zy.asrs.entity.BasCrnp;
import com.zy.core.enums.*;
import com.zy.asrs.entity.BasSte;
import com.zy.core.enums.SteHisTaskStatusType;
import com.zy.core.enums.SteStatusType;
import lombok.Data;
/**
@@ -22,24 +23,25 @@
    public Short mode;
    /**
     * 堆垛机当前状态
     * 0:空闲,无任务
     * 1:取货定位中
     * 2:取货中
     * 3:取货完成,放货定位中
     * 4:放货中
     * 5:回原点中
     * 6:反原点
     * 7:库位移位
     * 90:任务完成等待WCS确认
     * 99:报警
     IDLE(0, "空闲"),
     MOVING(1, "作业中"),
     SOS(2, "报警"),
     WAITING(3, "任务完成等待WCS确认"),
     */
    public Short status;
    /**
     * 状态枚举
     */
    public SteStatusType statusType;
    /**
     * 正在执行任务
     */
    public Boolean execute;
    /**
     * 任务完成,等待WCS确认
     */
    public Boolean waiting;
    /**
     * 异常码1
@@ -56,6 +58,16 @@
     * 电池电量
     */
    public Short charge;
    /**
     * 满电
     */
    public Boolean fullCharge;
    /**
     * 低电量
     */
    public Boolean lowCharge;
    /**
     * 电池馈电     0,正常,1馈电
@@ -125,8 +137,11 @@
    /**
     * 过账指令状态
     * 0初始 1执行完成 2删除
     */
    public Short hisTaskStatus;
    public SteHisTaskStatusType hisTaskStatusType;
    /**
     * 盘点数量
@@ -173,6 +188,16 @@
        this.status = SteStatusType.get(type).id.shortValue();
    }
    public void setHisTaskStatus(Short hisTaskStatus){
        this.hisTaskStatus = hisTaskStatus;
        this.hisTaskStatusType = SteHisTaskStatusType.get(hisTaskStatus);
    }
    public void setHisTaskStatus(SteHisTaskStatusType type){
        this.hisTaskStatusType = type;
        this.hisTaskStatus = SteHisTaskStatusType.get(type).id.shortValue();
    }
    /**
     * 最近一次入出库类型
     *       I:入库
@@ -181,11 +206,11 @@
    private String lastIo = "I";
    public BasCrnp toSqlModel(BasCrnp basCrnp){
    public BasSte toSqlModel(BasSte basSte){
        if (alarm!=null) {
            basCrnp.setCrnErr(alarm.longValue());
            basSte.setSteErr(alarm.longValue());
        }
        basCrnp.setWrkNo(taskNo);
        return basCrnp;
        basSte.setWrkNo(taskNo);
        return basSte;
    }
}