-
Notifications
You must be signed in to change notification settings - Fork 1
/
operational_solution_subtask.go
47 lines (40 loc) · 1.63 KB
/
operational_solution_subtask.go
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
package models
import (
"github.com/google/uuid"
)
// OperationalSolutionSubtaskStatus is an enum that represents the possible operational solution subtask statuses
type OperationalSolutionSubtaskStatus string
// These constants represent the different values of OperationalSolutionSubtaskStatus
const (
OperationalSolutionSubtaskStatusTodo OperationalSolutionSubtaskStatus = "TODO"
OperationalSolutionSubtaskStatusInProgress OperationalSolutionSubtaskStatus = "IN_PROGRESS"
OperationalSolutionSubtaskStatusDone OperationalSolutionSubtaskStatus = "DONE"
)
// AllOperationalSolutionSubtaskStatus is a collection of all possible values for OperationalSolutionSubtaskStatus
var AllOperationalSolutionSubtaskStatus = []OperationalSolutionSubtaskStatus{
OperationalSolutionSubtaskStatusTodo,
OperationalSolutionSubtaskStatusInProgress,
OperationalSolutionSubtaskStatusDone,
}
// OperationalSolutionSubtask represents the specific implemented solution to an OperationalSolutionSubtask
type OperationalSolutionSubtask struct {
baseStruct
solutionRelation
Name string `json:"name"`
Status OperationalSolutionSubtaskStatus `json:"status"`
}
// NewOperationalSolutionSubtask is a constructor to create an instance of OperationalSolutionSubtask
func NewOperationalSolutionSubtask(
createdBy uuid.UUID,
ID uuid.UUID,
solutionID uuid.UUID,
name string,
status OperationalSolutionSubtaskStatus,
) *OperationalSolutionSubtask {
return &OperationalSolutionSubtask{
baseStruct: NewBaseStruct(createdBy),
solutionRelation: NewSolutionRelation(solutionID),
Name: name,
Status: status,
}
}