forked from ebhomengo/niki
43 lines
1023 B
Go
43 lines
1023 B
Go
package entity
|
|
|
|
type ReferTimeStatus uint
|
|
|
|
const (
|
|
ReferTimeActiveStatus ReferTimeStatus = iota + 1
|
|
ReferTimeInactiveStatus
|
|
)
|
|
|
|
var ReferTimeStatusStrings = map[ReferTimeStatus]string{
|
|
ReferTimeActiveStatus: "active",
|
|
ReferTimeInactiveStatus: "inactive",
|
|
}
|
|
|
|
func (s ReferTimeStatus) String() string {
|
|
return ReferTimeStatusStrings[s]
|
|
}
|
|
|
|
func (s ReferTimeStatus) IsValid() bool {
|
|
return s > 0 && int(s) <= len(ReferTimeStatusStrings)
|
|
}
|
|
|
|
// AllReferTimeStatus returns a slice containing all string values of ReferTimeStatus.
|
|
func AllReferTimeStatus() []string {
|
|
statusStrings := make([]string, len(ReferTimeStatusStrings))
|
|
for status, str := range ReferTimeStatusStrings {
|
|
statusStrings[int(status)-1] = str
|
|
}
|
|
|
|
return statusStrings
|
|
}
|
|
|
|
// MapToReferTimeStatus converts a string to the corresponding ReferTimeStatus value.
|
|
func MapToReferTimeStatus(statusStr string) ReferTimeStatus {
|
|
for status, str := range ReferTimeStatusStrings {
|
|
if str == statusStr {
|
|
return status
|
|
}
|
|
}
|
|
|
|
return ReferTimeStatus(0)
|
|
}
|