46 lines
1.8 KiB
Go
46 lines
1.8 KiB
Go
package consts
|
||
|
||
type TenantType int
|
||
|
||
const (
|
||
TenantTypeSite TenantType = 1 // 站点
|
||
TenantTypeAgent TenantType = 2 // 代理
|
||
)
|
||
|
||
type CertificationStatus int
|
||
|
||
const (
|
||
CertificationStatusPending CertificationStatus = 1 // 待审核
|
||
CertificationStatusPass CertificationStatus = 2 // 审核通过
|
||
CertificationStatusFail CertificationStatus = 3 // 审核失败
|
||
CertificationStatusUnverified CertificationStatus = 4 // 未认证
|
||
)
|
||
|
||
type CertificationStatusKeyValue struct {
|
||
Key CertificationStatus // 对应原有常量值
|
||
Value string // 对应描述信息
|
||
}
|
||
|
||
// 定义枚举实例(Key-Value 绑定),相当于改造后的常量
|
||
var (
|
||
CertificationStatusPendingKeyValue = CertificationStatusKeyValue{Key: CertificationStatusPending, Value: "待审核"}
|
||
CertificationStatusPassKeyValue = CertificationStatusKeyValue{Key: CertificationStatusPass, Value: "审核通过"}
|
||
CertificationStatusFailKeyValue = CertificationStatusKeyValue{Key: CertificationStatusFail, Value: "审核失败"}
|
||
CertificationStatusUnverifiedKeyValue = CertificationStatusKeyValue{Key: CertificationStatusUnverified, Value: "未认证"}
|
||
)
|
||
|
||
var certificationStatusMap = map[CertificationStatus]CertificationStatusKeyValue{
|
||
CertificationStatusPending: CertificationStatusPendingKeyValue,
|
||
CertificationStatusPass: CertificationStatusPassKeyValue,
|
||
CertificationStatusFail: CertificationStatusFailKeyValue,
|
||
CertificationStatusUnverified: CertificationStatusUnverifiedKeyValue,
|
||
}
|
||
|
||
// GetCertificationStatusKeyValue 根据 CertificationStatus 指针获取对应的 KeyValue
|
||
func GetCertificationStatusKeyValue(status CertificationStatus) CertificationStatusKeyValue {
|
||
if kv, ok := certificationStatusMap[status]; ok {
|
||
return kv
|
||
}
|
||
return CertificationStatusUnverifiedKeyValue
|
||
}
|