OWL ITS + 탐지시스템(인터넷 진흥원)
이민희
2022-03-03 2b0d6901597206d1c24abad0ff3ac0889f9194dd
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
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;
    }
}