package kr.wisestone.owl.domain;
|
|
|
import kr.wisestone.owl.domain.enumType.IssueStatusType;
|
import org.hibernate.annotations.Type;
|
|
import javax.persistence.*;
|
import java.io.Serializable;
|
import java.util.HashSet;
|
import java.util.Set;
|
|
/**
|
* Created by wisestone on 2018-01-03.
|
*/
|
@Entity
|
public class IssueStatus extends BaseEntity implements Serializable {
|
private static final long serialVersionUID = 1L;
|
|
@Id
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
private Long id;
|
private String name;
|
private String color;
|
private Long position; // 기본 제공되는 이슈 상태에서 연결을 위해 사용
|
|
@Type(type = "yes_no")
|
private Boolean defaultYn = Boolean.FALSE;
|
|
@Enumerated(EnumType.STRING)
|
private IssueStatusType issueStatusType;
|
|
@ManyToOne(fetch = FetchType.LAZY)
|
@JoinColumn(name = "workspace_id")
|
private Workspace workspace;
|
|
@OneToMany(mappedBy = "issueStatus", cascade = {CascadeType.ALL}, orphanRemoval = true)
|
private Set<Issue> issues = new HashSet<>();
|
|
@OneToMany(mappedBy="sourceIssueStatus", cascade={CascadeType.ALL}, orphanRemoval=true)
|
private Set<WorkflowTransition> sourceWorkflowTransitions = new HashSet<>();
|
|
@OneToMany(mappedBy="targetIssueStatus", cascade={CascadeType.ALL}, orphanRemoval=true)
|
private Set<WorkflowTransition> targetWorkflowTransitions = new HashSet<>();
|
|
public IssueStatus() {
|
}
|
|
public IssueStatus(Workspace workspace, String name, Boolean defaultYn, String color, IssueStatusType issueStatusType, Long position) {
|
this.workspace = workspace;
|
this.name = name;
|
this.defaultYn = defaultYn;
|
this.color = color;
|
this.issueStatusType = issueStatusType;
|
this.position = position;
|
}
|
|
public Long getId() {
|
return id;
|
}
|
|
public void setId(Long id) {
|
this.id = id;
|
}
|
|
public String getName() {
|
return name;
|
}
|
|
public void setName(String name) {
|
this.name = name;
|
}
|
|
public Workspace getWorkspace() {
|
return workspace;
|
}
|
|
public void setWorkspace(Workspace workspace) {
|
this.workspace = workspace;
|
}
|
|
public Set<Issue> getIssues() {
|
return issues;
|
}
|
|
public void setIssues(Set<Issue> issues) {
|
this.issues = issues;
|
}
|
|
public String getColor() {
|
return color;
|
}
|
|
public void setColor(String color) {
|
this.color = color;
|
}
|
|
public IssueStatusType getIssueStatusType() {
|
return issueStatusType;
|
}
|
|
public void setIssueStatusType(IssueStatusType issueStatusType) {
|
this.issueStatusType = issueStatusType;
|
}
|
|
public Boolean getDefaultYn() {
|
return defaultYn;
|
}
|
|
public void setDefaultYn(Boolean defaultYn) {
|
this.defaultYn = defaultYn;
|
}
|
|
public Long getPosition() {
|
return position;
|
}
|
|
public void setPosition(Long position) {
|
this.position = position;
|
}
|
|
public Set<WorkflowTransition> getSourceWorkflowTransitions() {
|
return sourceWorkflowTransitions;
|
}
|
|
public void setSourceWorkflowTransitions(Set<WorkflowTransition> sourceWorkflowTransitions) {
|
this.sourceWorkflowTransitions = sourceWorkflowTransitions;
|
}
|
|
public Set<WorkflowTransition> getTargetWorkflowTransitions() {
|
return targetWorkflowTransitions;
|
}
|
|
public void setTargetWorkflowTransitions(Set<WorkflowTransition> targetWorkflowTransitions) {
|
this.targetWorkflowTransitions = targetWorkflowTransitions;
|
}
|
}
|