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 }