package com.zy.core.model.protocol;
|
|
import com.zy.asrs.entity.BasCrnp;
|
import com.zy.core.enums.*;
|
import lombok.Data;
|
|
/**
|
* Created by vincent on 2020/8/7
|
*/
|
@Data
|
public class SteProtocol {
|
|
/**
|
* 设备号
|
*/
|
private Short steNo;
|
|
/**
|
* 1 = 联机模式
|
* 0 = 脱机模式
|
*/
|
public Short mode;
|
|
/**
|
IDLE(0, "空闲"),
|
MOVING(1, "作业中"),
|
SOS(2, "报警"),
|
WAITING(3, "任务完成等待WCS确认"),
|
*/
|
public Short status;
|
|
/**
|
* 状态枚举
|
*/
|
public SteStatusType statusType;
|
|
/**
|
* 异常码1
|
*/
|
public Integer alarm;
|
|
|
/**
|
* 异常码2
|
*/
|
public Integer alarm0;
|
|
/**
|
* 电池电量
|
*/
|
public Short charge;
|
|
/**
|
* 电池馈电 0,正常,1馈电
|
*/
|
public Short feed;
|
|
|
/**
|
* 当前位置 1,近点,2远点,3A点,4B点
|
*/
|
public Short loca;
|
|
/**
|
* 近点距离
|
*/
|
public Double closer;
|
|
/**
|
* 当前速度
|
*/
|
public Double speed;
|
|
/**
|
* 高低位 0,低位,1高位
|
*/
|
public Short pos;
|
|
/**
|
* 有货 0,没货,1有货
|
*/
|
public Short load;
|
|
/**
|
* 在轨道上 0不在,1在
|
*/
|
public Short track;
|
|
/**
|
* 任务号
|
*/
|
public Integer taskNo = 0;
|
|
/**
|
* 任务类型
|
*/
|
public Short taskType;
|
|
/**
|
* 排
|
*/
|
public Short row;
|
|
/**
|
* 列
|
*/
|
public Short bay;
|
|
/**
|
* 层
|
*/
|
public Short lev;
|
|
/**
|
* 过账指令任务号
|
*/
|
public Integer hisTaskNo;
|
|
/**
|
* 过账指令状态
|
*/
|
public Short hisTaskStatus;
|
|
/**
|
* 盘点数量
|
*/
|
public Short checkQty;
|
|
/**
|
* 就绪状态 0未就绪 1就绪
|
*/
|
public Short ready;
|
|
/**
|
* 打开充电桩号
|
*/
|
public Short chargeNo;
|
|
/**
|
* 心跳指令 1-2每秒切换一次
|
*/
|
public Short heart;
|
|
/**
|
* 堆垛机禁止运行 1运行,0禁止
|
*/
|
public Short crnStopRun;
|
|
/**
|
* 堆垛机禁止伸叉 1运行,0禁止
|
*/
|
public Short crnStopFork;
|
|
/**
|
* 堆垛机搬移允许 0不允许 1允许
|
*/
|
public Short crnAllowRun;
|
|
public void setStatus(Short status){
|
this.status = status;
|
this.statusType = SteStatusType.get(status);
|
}
|
|
public void setStatus(SteStatusType type){
|
this.statusType = type;
|
this.status = SteStatusType.get(type).id.shortValue();
|
}
|
|
/**
|
* 最近一次入出库类型
|
* I:入库
|
* O:出库
|
*/
|
private String lastIo = "I";
|
|
|
public BasCrnp toSqlModel(BasCrnp basCrnp){
|
if (alarm!=null) {
|
basCrnp.setCrnErr(alarm.longValue());
|
}
|
basCrnp.setWrkNo(taskNo);
|
return basCrnp;
|
}
|
}
|