SchedulePlan.java
3.72 KB
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
package com.bsth.entity.schedule;
import com.bsth.entity.Line;
import com.bsth.entity.schedule.rule.ScheduleRule1;
import com.fasterxml.jackson.annotation.JsonIgnore;
import javax.persistence.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* 排班计划。
*/
@Entity
@Table(name = "bsth_c_s_sp")
@NamedEntityGraphs({
@NamedEntityGraph(name = "schedulePlan_xl_ttinfo", attributeNodes = {
@NamedAttributeNode("xl"),
@NamedAttributeNode("ttInfo")
})
})
public class SchedulePlan extends BEntity {
/** 主键Id */
@Id
@GeneratedValue
private Long id;
/** 关联的线路 */
@ManyToOne(optional = false, cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
private Line xl;
/** 关联的时刻表/模版 */
// TODO:这个字段之后就不用了
@ManyToOne(optional = false, cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
private TTInfo ttInfo;
/** TODO:关联的排班规则(这里暂时改成可以不关联规则,直接生成排班) */
@ManyToOne(cascade = CascadeType.PERSIST, fetch = FetchType.LAZY)
private ScheduleRule1 scheduleRule1;
// TODO: 新字段,测试完后删除旧的字段
/** 使用的时刻表名字列表(用逗号连接) */
private String ttInfoNames;
/** 使用的时刻表id列表(用逗号连接) */
private String ttInfoId;
/** 使用的规则1列表(用逗号连接) */
private String rule1Ids;
/** 排班计划的开始时间 */
@Column(nullable = false)
private Date scheduleFromTime;
/** 排班计划的结束时间 */
@Column(nullable = false)
private Date scheduleToTime;
@JsonIgnore
/** 使用中间表的一对多关联 明细信息 */
@OneToMany(mappedBy = "schedulePlan", cascade = CascadeType.ALL, fetch = FetchType.LAZY)
private List<SchedulePlanInfo> schedulePlanInfoList = new ArrayList<>();
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Line getXl() {
return xl;
}
public void setXl(Line xl) {
this.xl = xl;
}
public TTInfo getTtInfo() {
return ttInfo;
}
public void setTtInfo(TTInfo ttInfo) {
this.ttInfo = ttInfo;
}
public ScheduleRule1 getScheduleRule1() {
return scheduleRule1;
}
public void setScheduleRule1(ScheduleRule1 scheduleRule1) {
this.scheduleRule1 = scheduleRule1;
}
public Date getScheduleFromTime() {
return scheduleFromTime;
}
public void setScheduleFromTime(Date scheduleFromTime) {
this.scheduleFromTime = scheduleFromTime;
}
public Date getScheduleToTime() {
return scheduleToTime;
}
public void setScheduleToTime(Date scheduleToTime) {
this.scheduleToTime = scheduleToTime;
}
public List<SchedulePlanInfo> getSchedulePlanInfoList() {
return schedulePlanInfoList;
}
public void setSchedulePlanInfoList(List<SchedulePlanInfo> schedulePlanInfoList) {
this.schedulePlanInfoList = schedulePlanInfoList;
}
public String getTtInfoNames() {
return ttInfoNames;
}
public void setTtInfoNames(String ttInfoNames) {
this.ttInfoNames = ttInfoNames;
}
public String getTtInfoId() {
return ttInfoId;
}
public void setTtInfoId(String ttInfoId) {
this.ttInfoId = ttInfoId;
}
public String getRule1Ids() {
return rule1Ids;
}
public void setRule1Ids(String rule1Ids) {
this.rule1Ids = rule1Ids;
}
}