58 lines
1.7 KiB
Go
58 lines
1.7 KiB
Go
package consts
|
|
|
|
// BillingModel 计费模式枚举
|
|
type BillingModel string
|
|
|
|
const (
|
|
BillingModelCPM BillingModel = "cpm" // 千次展示成本
|
|
BillingModelCPC BillingModel = "cpc" // 每次点击成本
|
|
BillingModelCPA BillingModel = "cpa" // 每次行动成本
|
|
BillingModelRevShare BillingModel = "rev_share" // 收入分成
|
|
)
|
|
|
|
// GetAllBillingModels 获取所有计费模式
|
|
func GetAllBillingModels() []BillingModel {
|
|
return []BillingModel{
|
|
BillingModelCPM,
|
|
BillingModelCPC,
|
|
BillingModelCPA,
|
|
BillingModelRevShare,
|
|
}
|
|
}
|
|
|
|
type BillingModelKeyValue struct {
|
|
Key BillingModel
|
|
Value string
|
|
}
|
|
|
|
var (
|
|
BillingModelCPMKeyValue = BillingModelKeyValue{Key: BillingModelCPM, Value: "千次展示成本"}
|
|
BillingModelCPCKeypValue = BillingModelKeyValue{Key: BillingModelCPC, Value: "每次点击成本"}
|
|
BillingModelCPAKeyValue = BillingModelKeyValue{Key: BillingModelCPA, Value: "每次行动成本"}
|
|
BillingModelRevShareKeyValue = BillingModelKeyValue{Key: BillingModelRevShare, Value: "收入分成"}
|
|
)
|
|
|
|
func GetAllBillingModelKeyValue() []BillingModelKeyValue {
|
|
return []BillingModelKeyValue{
|
|
BillingModelCPMKeyValue,
|
|
BillingModelCPCKeypValue,
|
|
BillingModelCPAKeyValue,
|
|
BillingModelRevShareKeyValue,
|
|
}
|
|
}
|
|
|
|
var billingModelValueMap = map[BillingModel]string{
|
|
BillingModelCPM: BillingModelCPMKeyValue.Value,
|
|
BillingModelCPC: BillingModelCPCKeypValue.Value,
|
|
BillingModelCPA: BillingModelCPAKeyValue.Value,
|
|
BillingModelRevShare: BillingModelRevShareKeyValue.Value,
|
|
}
|
|
|
|
func GetBillingModelValueByKey(key BillingModel) (value string) {
|
|
value, exists := billingModelValueMap[key]
|
|
if !exists {
|
|
value = "未知计费模式"
|
|
}
|
|
return
|
|
}
|