package com.zy.core.model.command; import com.alibaba.fastjson.annotation.JSONField; import com.zy.core.enums.CrnTaskModeType; import lombok.Data; import java.util.Calendar; import java.util.Date; /** * 堆垛机命令报文 * Created by vincent on 2020/8/11 */ @Data public class CrnCommand { // 堆垛机号 private Integer crnNo = 0; private Integer laneNo = 0; // 任务完成确认位 private Short ackFinish = 0; // 任务号 private Short taskNo = 0; /** * 任务模式: * 0 = 无 * 1 = 入库 源和目标都发 * 2 = 出库 源和目标都发 * 3 = 库位移转 源和目标都发 * 4 = 站位移转 源和目标都发 * 5 = 回原点 不用发 * 6 = 去反原点 目标发 * 7 = 坐标移行 目标发 * 90 = 设置时间 * 99 = 取消当前任务 */ private Short taskMode = 0; @JSONField(serialize = false) private CrnTaskModeType taskModeType; // 源位置列号 private Short sourcePosX = 0; // 源位置层号 private Short sourcePosY = 0; // 源位置排号 private Short sourcePosZ = 0; // 源站 private Short sourceStaNo = 0; // 源巷道 private Short sourceLane = 0; // 目标位置排号 private Short destinationPosX = 0; // 目标位置列号 private Short destinationPosY = 0; // 目标位置层号 private Short destinationPosZ = 0; // 目标站 private Short destinationStaNo = 0; // 目标巷道 private Short destinationLane = 0; //联机模式 private Short auto = 0; //申请完成任务 private Short onlineWrk1 = 0; //申请取消任务 private Short onlineWrk2 = 0; //清除联机任务 private Short onlineWrk3 = 0; //恢复联机任务 private Short onlineWrk4 = 0; private Short reset = 0; // 任务确认 0:未确认 1:已确认 private Short command = 0; //指令ID private Integer commandId; public void setTaskMode(Short taskMode){ this.taskMode = taskMode; this.taskModeType = CrnTaskModeType.get(taskModeType); } public void setTaskMode(CrnTaskModeType type) { this.taskModeType = type; this.taskMode = CrnTaskModeType.get(type).id.shortValue(); } public static void main(String[] args) { Date date = new Date(); Calendar cal = Calendar.getInstance(); cal.setTime(date); System.out.println(cal.get(Calendar.YEAR)); //默认从0-11 System.out.println(cal.get(Calendar.MONTH)+1); System.out.println(cal.get(Calendar.DATE)); int hour = cal.get(Calendar.HOUR_OF_DAY); System.out.println("时"); System.out.println(hour); int minute = cal.get(Calendar.MINUTE); System.out.println("分"); System.out.println(minute); int second = cal.get(Calendar.SECOND); System.out.println("秒"); System.out.println(second); int mm = cal.get(Calendar.DAY_OF_WEEK) - 1; // 星期:0(日)~6(六) System.out.println("礼拜"); System.out.println(mm); } }