lty
2025-08-21 924d0d98c49c324669ba9dc5158b2141416447cc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
package com.zy.core.model.command;
 
import com.alibaba.fastjson.annotation.JSONField;
import com.zy.core.enums.RgvTaskModeType;
import com.zy.core.enums.RgvTaskStatusType;
import lombok.Data;
 
import java.util.Calendar;
import java.util.Date;
 
/**
 * 堆垛机命令报文
 * Created by vincent on 2020/8/11
 */
@Data
public class RgvCommand {
 
    // Rgv编号
    private Integer rgvNo = 0;
 
    // 工位1任务完成确认位
    private Boolean ackFinish1 = true;
 
    // 工位1任务号
    private Integer taskNo1 = 0;
 
    /**
     * 任务模式:
     * 0 = 无
     * 1 = 取货
     * 2 = 放货
     * 3 = 取放货
     */
    private Short taskMode1 = 0;
 
    /**
     * 作业模式
     */
    private Short taskStatus1 = 0;
 
    @JSONField(serialize = false)
    private RgvTaskModeType taskModeType1;
 
    @JSONField(serialize = false)
    private RgvTaskStatusType taskStatusType1;
 
    /*
    工位1源站
     */
    private Short sourceStaNo1 = 0;
 
    /*
    工位1目标站
     */
    private Short destinationStaNo1 = 0;
 
    /**
     * 工位1目标位置
     */
    private Integer targetPosition1 = 0;
    /**
     * RGV放货后货物要去的目的地
     */
    private Integer endStaNo1 = 0;
 
    /**
     * 执行方向
     */
    private Short direction1 = 0;
 
    //////////////////////     工位2定义   //////////////////////////////////////////////////
    // 工位2任务完成确认位
    private Boolean ackFinish2 = true;
 
    // 工位2任务号
    private Integer taskNo2 = 0;
 
    /**
     * 任务模式:
     * 0 = 无
     * 1 = 取货
     * 2 = 放货
     * 3 = 取放货
     */
    private Short taskMode2 = 0;
 
    /**
     * 作业模式
     */
    private Short taskStatus2 = 0;
 
    @JSONField(serialize = false)
    private RgvTaskModeType taskModeType2;
 
    @JSONField(serialize = false)
    private RgvTaskStatusType taskStatusType2;
 
    /*
    工位2源站
     */
    private Short sourceStaNo2 = 0;
 
    /*
    工位2目标站
     */
    private Short destinationStaNo2 = 0;
 
    /**
     * 工位2目标位置
     */
    private Integer targetPosition2 = 0;
 
    /**
     * RGV放货后货物要去的目的地
     */
    private Integer endStaNo2 = 0;
 
    /**
     * 执行方向
     */
    private Short direction2 = 0;
    ///////////////////////////////////////////////////////////////////////////////////////
 
    /**
     * 任务模式:
     * 0 = 未确认
     * 1 = 工位1任务确认
     * 2 = 工位2任务确认
     * 3 = 工位1、2任务同时确认
     * false 未确认
     * true 执行
     */
    private Boolean command = false;
 
    /**
     * 同时下发时作业顺序
     * 0:无(不判断)
     * 1:工位1先执行
     * 2:工位2先执行
     */
    Short wrkTaskPri = 0;
 
    public void setTaskMode1(Short taskMode1){
        this.taskMode1 = taskMode1;
        this.taskModeType1 = RgvTaskModeType.get(taskModeType1);
    }
 
    public void setTaskMode1(RgvTaskModeType type1) {
        this.taskModeType1 = type1;
        this.taskMode1 = RgvTaskModeType.get(type1).id.shortValue();
    }
 
    public void setTaskMode2(Short taskMode2){
        this.taskMode2 = taskMode2;
        this.taskModeType2 = RgvTaskModeType.get(taskModeType2);
    }
 
    public void setTaskMode2(RgvTaskModeType type2) {
        this.taskModeType2 = type2;
        this.taskMode2 = RgvTaskModeType.get(type2).id.shortValue();
    }
 
    public void setTaskStatus1(Short taskStatus1){
        this.taskStatus1 = taskStatus1;
        this.taskStatusType1 = RgvTaskStatusType.get(taskStatusType1);
    }
 
    public void setTaskStatus1(RgvTaskStatusType type1) {
        this.taskStatusType1 = type1;
        this.taskStatus1 = RgvTaskStatusType.get(type1).id.shortValue();
    }
 
    public void setTaskStatus2(Short taskStatus2){
        this.taskStatus2 = taskStatus2;
        this.taskStatusType2 = RgvTaskStatusType.get(taskStatusType2);
    }
 
    public void setTaskStatus2(RgvTaskStatusType type2) {
        this.taskStatusType2 = type2;
        this.taskStatus2 = RgvTaskStatusType.get(type2).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);
    }
}