42 lines
816 B
Go
42 lines
816 B
Go
|
package domain
|
||
|
|
||
|
type PermissionType int8
|
||
|
|
||
|
const (
|
||
|
PermissionTypeBackendUser PermissionType = iota + 1
|
||
|
PermissionTypeFrontendUser
|
||
|
)
|
||
|
|
||
|
type PermissionTypeCode string
|
||
|
|
||
|
const (
|
||
|
PermissionTypeBackCode PermissionTypeCode = "back"
|
||
|
PermissionTypeFrontCode PermissionTypeCode = "front"
|
||
|
)
|
||
|
|
||
|
var permissionMap = map[int64]PermissionTypeCode{
|
||
|
1: PermissionTypeFrontCode,
|
||
|
2: PermissionTypeBackCode,
|
||
|
}
|
||
|
|
||
|
func ToPermissionTypeCode(code int64) (PermissionTypeCode, bool) {
|
||
|
result, ok := permissionMap[code]
|
||
|
if !ok {
|
||
|
return "", false
|
||
|
}
|
||
|
|
||
|
return result, true
|
||
|
}
|
||
|
|
||
|
func (t *PermissionTypeCode) ToString() string {
|
||
|
return string(*t)
|
||
|
}
|
||
|
|
||
|
type PermissionStatus string
|
||
|
type Permissions map[string]PermissionStatus
|
||
|
|
||
|
const (
|
||
|
PermissionStatusOpenCode PermissionStatus = "open"
|
||
|
PermissionStatusCloseCode PermissionStatus = "close"
|
||
|
)
|