package com.sobey.cmop.mvc.entity; import static javax.persistence.GenerationType.IDENTITY; import java.util.Date; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import javax.persistence.OrderBy; import javax.persistence.Table; import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonIgnore; /** * ServiceTag entity. @author MyEclipse Persistence Tools */ @Entity @Table(name = "service_tag", catalog = "cmop") public class ServiceTag implements java.io.Serializable { // Fields private Integer id; private String identifier; private User user; private String name; private Integer priority; private String description; private String serviceStart; private String serviceEnd; private Date createTime; private Integer status; private AuditFlow auditFlow; private String domain; private String contact; private String phonenum; private Integer redmineIssueId; private Set<Audit> audits = new HashSet<Audit>(0); // Constructors /** default constructor */ public ServiceTag() { } /** minimal constructor */ public ServiceTag(String identifier, User user, String name, Integer priority, String description, String serviceStart, String serviceEnd, Date createTime, Integer status) { this.identifier = identifier; this.user = user; this.name = name; this.priority = priority; this.description = description; this.serviceStart = serviceStart; this.serviceEnd = serviceEnd; this.createTime = createTime; this.status = status; } /** full constructor */ public ServiceTag(String identifier, User user, String name, Integer priority, String description, String serviceStart, String serviceEnd, Date createTime, Integer status, AuditFlow auditFlow, String domain, String contact, String phonenum, Integer redmineIssueId, Set<Audit> audits) { this.identifier = identifier; this.user = user; this.name = name; this.priority = priority; this.description = description; this.serviceStart = serviceStart; this.serviceEnd = serviceEnd; this.createTime = createTime; this.status = status; this.auditFlow = auditFlow; this.domain = domain; this.contact = contact; this.phonenum = phonenum; this.redmineIssueId = redmineIssueId; this.audits = audits; } // Property accessors @Id @GeneratedValue(strategy = IDENTITY) @Column(name = "id", unique = true, nullable = false) public Integer getId() { return this.id; } public void setId(Integer id) { this.id = id; } @Column(name = "identifier", nullable = false, length = 45) public String getIdentifier() { return identifier; } public void setIdentifier(String identifier) { this.identifier = identifier; } @Column(name = "name", nullable = false, length = 45) public String getName() { return this.name; } public void setName(String name) { this.name = name; } @JsonBackReference @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "user_id", nullable = false) public User getUser() { return this.user; } public void setUser(User user) { this.user = user; } @Column(name = "priority") public void setPriority(Integer priority) { this.priority = priority; } public Integer getPriority() { return priority; } @Column(name = "description", nullable = false, length = 500) public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } @Column(name = "service_start", nullable = false, length = 10) public String getServiceStart() { return serviceStart; } public void setServiceStart(String serviceStart) { this.serviceStart = serviceStart; } @Column(name = "service_end", nullable = false, length = 10) public String getServiceEnd() { return serviceEnd; } public void setServiceEnd(String serviceEnd) { this.serviceEnd = serviceEnd; } @Column(name = "create_time", nullable = false, length = 19) public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } @Column(name = "status", nullable = false) public Integer getStatus() { return status; } public void setStatus(Integer status) { this.status = status; } @JsonBackReference @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "audit_flow_id") public AuditFlow getAuditFlow() { return this.auditFlow; } public void setAuditFlow(AuditFlow auditFlow) { this.auditFlow = auditFlow; } @Column(name = "domain") public String getDomain() { return domain; } public void setDomain(String domain) { this.domain = domain; } @Column(name = "contact") public String getContact() { return contact; } public void setContact(String contact) { this.contact = contact; } @Column(name = "phonenum") public String getPhonenum() { return phonenum; } public void setPhonenum(String phonenum) { this.phonenum = phonenum; } @Column(name = "redmine_issue_id") public Integer getRedmineIssueId() { return redmineIssueId; } public void setRedmineIssueId(Integer redmineIssueId) { this.redmineIssueId = redmineIssueId; } @JsonIgnore @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "serviceTag") @OrderBy("createTime ASC") public Set<Audit> getAudits() { return this.audits; } public void setAudits(Set<Audit> audits) { this.audits = audits; } }