UPDATE: Project Module
All checks were successful
Build and Release / release (push) Successful in 1m15s

This commit is contained in:
2026-04-25 14:05:15 +07:00
parent 44a63f29c6
commit ac90236022
71 changed files with 5110 additions and 257 deletions

66
pkg/constants/geometry.go Normal file
View File

@@ -0,0 +1,66 @@
package constants
type GeoType int16
const (
GeoTypeID GeoType = 1
GeoTypeName GeoType = 2
GeoTypeIcon GeoType = 3
GeoTypeVariant GeoType = 4
GeoTypeDescription GeoType = 5
GeoTypeUnknow GeoType = 0
)
func (t GeoType) String() string {
switch t {
case GeoTypeID:
return "ID"
case GeoTypeName:
return "NAME"
case GeoTypeIcon:
return "ICON"
case GeoTypeVariant:
return "VARIANT"
case GeoTypeDescription:
return "DESCRIPTION"
default:
return "UNKNOW"
}
}
func ParseGeoTypeText(v string) GeoType {
switch v {
case "ID":
return GeoTypeID
case "NAME":
return GeoTypeName
case "ICON":
return GeoTypeIcon
case "VARIANT":
return GeoTypeVariant
case "DESCRIPTION":
return GeoTypeDescription
default:
return GeoTypeUnknow
}
}
func ParseGeoType(v int16) GeoType {
switch v {
case 1:
return GeoTypeID
case 2:
return GeoTypeName
case 3:
return GeoTypeIcon
case 4:
return GeoTypeVariant
case 5:
return GeoTypeDescription
default:
return GeoTypeUnknow
}
}
func (t GeoType) Int16() int16 {
return int16(t)
}

54
pkg/constants/project.go Normal file
View File

@@ -0,0 +1,54 @@
package constants
type ProjectStatusType int16
const (
ProjectStatusTypePrivate ProjectStatusType = 1
ProjectStatusTypePublic ProjectStatusType = 2
ProjectStatusTypeArchive ProjectStatusType = 3
ProjectStatusTypeUnknow ProjectStatusType = 0
)
func (t ProjectStatusType) String() string {
switch t {
case ProjectStatusTypePrivate:
return "PRIVATE"
case ProjectStatusTypePublic:
return "PUBLIC"
case ProjectStatusTypeArchive:
return "ARCHIVE"
default:
return "UNKNOWN"
}
}
func ParseProjectStatusTypeText(v string) ProjectStatusType {
switch v {
case "PRIVATE":
return ProjectStatusTypePrivate
case "PUBLIC":
return ProjectStatusTypePublic
case "ARCHIVE":
return ProjectStatusTypeArchive
default:
return ProjectStatusTypeUnknow
}
}
func (t ProjectStatusType) Int16() int16 {
return int16(t)
}
func ParseProjectStatusType(v int16) ProjectStatusType {
switch v {
case 1:
return ProjectStatusTypePrivate
case 2:
return ProjectStatusTypePublic
case 3:
return ProjectStatusTypeArchive
default:
return ProjectStatusTypeUnknow
}
}

View File

@@ -3,10 +3,10 @@ package constants
type ProviderType string
const (
GoogleProvider ProviderType = "google"
GithubProvider ProviderType = "github"
FacebookProvider ProviderType = "facebook"
LocalProvider ProviderType = "local"
ProviderTypeGoogle ProviderType = "google"
ProviderTypeGithub ProviderType = "github"
ProviderTypeFacebook ProviderType = "facebook"
ProviderTypeLocal ProviderType = "local"
)
func (p ProviderType) String() string {

View File

@@ -1,39 +1,39 @@
package constants
type Role string
type RoleType string
const (
ADMIN Role = "ADMIN"
MOD Role = "MOD"
USER Role = "USER"
HISTORIAN Role = "HISTORIAN"
BANNED Role = "BANNED"
RoleTypeAdmin RoleType = "ADMIN"
RoleTypeMod RoleType = "MOD"
RoleTypeUser RoleType = "USER"
RoleTypeHistorian RoleType = "HISTORIAN"
RoleTypeBanned RoleType = "BANNED"
)
func (r Role) String() string {
func (r RoleType) String() string {
return string(r)
}
func (r Role) Compare(other Role) bool {
func (r RoleType) Compare(other RoleType) bool {
return r == other
}
func (r Role) IsValid() bool {
func (r RoleType) IsValid() bool {
return CheckValidRole(r)
}
func CheckValidRole(r Role) bool {
return r == ADMIN || r == MOD || r == HISTORIAN || r == USER || r == BANNED
func CheckValidRole(r RoleType) bool {
return r == RoleTypeAdmin || r == RoleTypeMod || r == RoleTypeHistorian || r == RoleTypeUser || r == RoleTypeBanned
}
func ParseRole(s string) (Role, bool) {
r := Role(s)
func ParseRole(s string) (RoleType, bool) {
r := RoleType(s)
if CheckValidRole(r) {
return r, true
}
return "", false
}
func (r Role) ToSlice() []Role {
return []Role{r}
func (r RoleType) ToSlice() []RoleType {
return []RoleType{r}
}

View File

@@ -3,19 +3,19 @@ package constants
type StatusType int16
const (
StatusUnknown StatusType = 0
StatusPending StatusType = 1
StatusApproved StatusType = 2
StatusRejected StatusType = 3
StatusTypeUnknown StatusType = 0
StatusTypePending StatusType = 1
StatusTypeApproved StatusType = 2
StatusTypeRejected StatusType = 3
)
func (t StatusType) String() string {
switch t {
case StatusPending:
case StatusTypePending:
return "PENDING"
case StatusApproved:
case StatusTypeApproved:
return "APPROVED"
case StatusRejected:
case StatusTypeRejected:
return "REJECTED"
default:
return "UNKNOWN"
@@ -29,25 +29,25 @@ func (t StatusType) Int16() int16 {
func ParseStatusType(v int16) StatusType {
switch v {
case 1:
return StatusPending
return StatusTypePending
case 2:
return StatusApproved
return StatusTypeApproved
case 3:
return StatusRejected
return StatusTypeRejected
default:
return StatusUnknown
return StatusTypeUnknown
}
}
func ParseStatusTypeText(v string) StatusType {
switch v {
case "PENDING":
return StatusPending
return StatusTypePending
case "APPROVED":
return StatusApproved
return StatusTypeApproved
case "REJECTED":
return StatusRejected
return StatusTypeRejected
default:
return StatusUnknown
return StatusTypeUnknown
}
}

View File

@@ -3,21 +3,21 @@ package constants
type TokenType int16
const (
TokenPasswordReset TokenType = 1
TokenEmailVerify TokenType = 2
TokenMagicLink TokenType = 3
TokenUpload TokenType = 4
TokenTypePasswordReset TokenType = 1
TokenTypeEmailVerify TokenType = 2
TokenTypeMagicLink TokenType = 3
TokenTypeUpload TokenType = 4
)
func (t TokenType) String() string {
switch t {
case TokenPasswordReset:
case TokenTypePasswordReset:
return "PASSWORD_RESET"
case TokenEmailVerify:
case TokenTypeEmailVerify:
return "EMAIL_VERIFY"
case TokenMagicLink:
case TokenTypeMagicLink:
return "LOGIN_MAGIC_LINK"
case TokenUpload:
case TokenTypeUpload:
return "UPLOAD"
default:
return "UNKNOWN"
@@ -31,13 +31,13 @@ func (t TokenType) Value() int16 {
func ParseTokenType(v int16) TokenType {
switch v {
case 1:
return TokenPasswordReset
return TokenTypePasswordReset
case 2:
return TokenEmailVerify
return TokenTypeEmailVerify
case 3:
return TokenMagicLink
return TokenTypeMagicLink
case 4:
return TokenUpload
return TokenTypeUpload
default:
return 0
}
@@ -46,13 +46,13 @@ func ParseTokenType(v int16) TokenType {
func ParseTokenTypeFromString(s string) TokenType {
switch s {
case "PASSWORD_RESET":
return TokenPasswordReset
return TokenTypePasswordReset
case "EMAIL_VERIFY":
return TokenEmailVerify
return TokenTypeEmailVerify
case "LOGIN_MAGIC_LINK":
return TokenMagicLink
return TokenTypeMagicLink
case "UPLOAD":
return TokenUpload
return TokenTypeUpload
default:
return 0
}

View File

@@ -3,22 +3,22 @@ package constants
type VerifyType int16
const (
VerifyUnknown VerifyType = 0
VerifyIdCard VerifyType = 1
VerifyEducation VerifyType = 2
VerifyExpert VerifyType = 3
VerifyOther VerifyType = 4
VerifyTypeUnknown VerifyType = 0
VerifyTypeIdCard VerifyType = 1
VerifyTypeEducation VerifyType = 2
VerifyTypeExpert VerifyType = 3
VerifyTypeOther VerifyType = 4
)
func (t VerifyType) String() string {
switch t {
case VerifyIdCard:
case VerifyTypeIdCard:
return "ID_CARD"
case VerifyEducation:
case VerifyTypeEducation:
return "EDUCATION"
case VerifyExpert:
case VerifyTypeExpert:
return "EXPERT"
case VerifyOther:
case VerifyTypeOther:
return "OTHER"
default:
return "UNKNOWN"
@@ -32,29 +32,29 @@ func (t VerifyType) Int16() int16 {
func ParseVerifyType(v int16) VerifyType {
switch v {
case 1:
return VerifyIdCard
return VerifyTypeIdCard
case 2:
return VerifyEducation
return VerifyTypeEducation
case 3:
return VerifyExpert
return VerifyTypeExpert
case 4:
return VerifyOther
return VerifyTypeOther
default:
return VerifyUnknown
return VerifyTypeUnknown
}
}
func ParseVerifyTypeText(v string) VerifyType {
switch v {
case "ID_CARD":
return VerifyIdCard
return VerifyTypeIdCard
case "EDUCATION":
return VerifyEducation
return VerifyTypeEducation
case "EXPERT":
return VerifyExpert
return VerifyTypeExpert
case "OTHER":
return VerifyOther
return VerifyTypeOther
default:
return VerifyUnknown
return VerifyTypeUnknown
}
}