package com.zy.core.model.protocol; import com.core.common.SpringUtils; import com.zy.asrs.entity.BasLiftErr; import com.zy.asrs.service.BasLiftErrService; import com.zy.core.enums.ForkLiftIoModeType; import com.zy.core.enums.ForkLiftProtocolStatusType; import com.zy.core.enums.ForkLiftTaskModeType; import lombok.Data; import lombok.extern.slf4j.Slf4j; /** * 货叉提升机 */ @Slf4j @Data public class ForkLiftProtocol implements Cloneable { /** * 提升机号 */ private Integer liftNo; /** * 模式0单机 1联机 */ private Integer model; /** * 任务号 */ private Integer taskNo = 0; /** * 任务状态 */ private Integer protocolStatus = ForkLiftProtocolStatusType.NONE.id; /** * 任务状态枚举 */ private ForkLiftProtocolStatusType protocolStatusType = ForkLiftProtocolStatusType.NONE; /** * 任务模式 */ private Integer mode = ForkLiftTaskModeType.NONE.id; /** * 任务模式枚举 */ private ForkLiftTaskModeType modeType = ForkLiftTaskModeType.NONE; /** * 取货数据 */ private Integer pick; /** * 放货数据 */ private Integer put; /** * 出入库模式 */ private Integer iOMode = ForkLiftIoModeType.NONE.id; /** * 出入库模式枚举 */ private ForkLiftIoModeType iOModeType = ForkLiftIoModeType.NONE; /** * 故障码 */ private Integer errorCode; /** * 作业标记 */ private Boolean pakMk = false; /** * 指令下发时间 */ private Long sendTime = 0L; /** * 日志采集时间 */ private Long deviceDataLog = System.currentTimeMillis(); /** * 扩展字段 */ private Object extend; /** * 设置任务状态 */ public void setProtocolStatus(Integer status) { this.protocolStatus = status; this.protocolStatusType = ForkLiftProtocolStatusType.get(status); } /** * 设置任务状态 */ public void setProtocolStatus(ForkLiftProtocolStatusType status) { this.protocolStatus = status.id; this.protocolStatusType = status; } /** * 设置任务模式 */ public void setMode(Integer mode) { this.mode = mode; this.modeType = ForkLiftTaskModeType.get(mode); } /** * 设置任务模式 */ public void setMode(ForkLiftTaskModeType mode) { this.mode = mode.id; this.modeType = mode; } /** * 设置出入库模式 */ public void setIOMode(Integer ioMode) { this.iOMode = ioMode; this.iOModeType = ForkLiftIoModeType.get(ioMode); } /** * 设置出入库模式 */ public void setIOMode(ForkLiftIoModeType ioMode) { this.iOMode = ioMode.id; this.iOModeType = ioMode; } /** * 错误码 */ public String getErrCode$() { if (this.errorCode == null) { return ""; } BasLiftErrService basLiftErrService = SpringUtils.getBean(BasLiftErrService.class); BasLiftErr basLiftErr = basLiftErrService.selectById(this.errorCode); if (basLiftErr == null) { return String.valueOf(this.errorCode); } return basLiftErr.getErrName(); } @Override public ForkLiftProtocol clone() { try { return (ForkLiftProtocol) super.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } return null; } }