133 lines
6.0 KiB
Go
133 lines
6.0 KiB
Go
package dbstruct
|
||
|
||
import "service/bizcommon/util"
|
||
|
||
// 商品id
|
||
const (
|
||
ProductIdOpCoin = "op_coin" // op充值的金币
|
||
|
||
ProductIdH5CustomCoin = "h5_custom_coin" // H5 自定义金币
|
||
ProductIdH5Coin500 = "h5_coin_500" // H5 500币
|
||
ProductIdH5Coin1000 = "h5_coin_1000" // H5 1000币
|
||
ProductIdH5Coin3000 = "h5_coin_3000" // H5 3000币
|
||
ProductIdH5Coin5000 = "h5_coin_5000" // H5 5000币
|
||
ProductIdH5Coin8000 = "h5_coin_8000" // H5 8000币
|
||
ProductIdH5Coin10000 = "h5_coin_10000" // H5 10000币
|
||
ProductIdH5Coin15000 = "h5_coin_15000" // H5 15000币
|
||
ProductIdH5Coin18000 = "h5_coin_18000" // H5 18000币
|
||
ProductIdH5Coin20000 = "h5_coin_20000" // H5 20000币
|
||
|
||
ProductIdIosCoin70 = "70_gold"
|
||
ProductIdIosCoin350 = "350_gold"
|
||
ProductIdIosCoin686 = "686_gold"
|
||
ProductIdIosCoin2086 = "2086_gold"
|
||
ProductIdIosCoin4886 = "4886_gold"
|
||
ProductIdIosCoin6986 = "6986_gold"
|
||
ProductIdIosCoin9086 = "9086_gold"
|
||
ProductIdIosCoin13986 = "13986_gold"
|
||
ProductIdIosCoin20986 = "20986_gold"
|
||
|
||
ProductIdContactWechat = "contact_wechat" // 微信联系方式
|
||
ProductIdH5ContactWechat = "h5_contact_wechat" // h5的联系方式,rmb直接解锁
|
||
ProductIdSuperfanGiftContactWechat = "superfan_gift_contact_wechat" // 超粉赠送的联系方式
|
||
|
||
ProductIdMembership = "membership" // 会员
|
||
ProductIdH5Membership = "h5_membership" // 会员
|
||
|
||
ProductIdH5ZoneMoment = "h5_zone_moment" // 空间动态
|
||
ProductIdH5ZoneAdmission = "h5_zone_admission" // 空间普通会员
|
||
ProductIdH5ZoneIronfanship = "h5_zone_ironfanship" // 空间铁粉
|
||
ProductIdH5ZoneSuperfanship = "h5_zone_superfanship" // 空间超粉
|
||
|
||
ProductIdOuterRaven = "outer_raven" // 瑞文测试
|
||
)
|
||
|
||
var ProductIdDescMap = map[string]string{
|
||
ProductIdOpCoin: "op充值金币",
|
||
ProductIdH5CustomCoin: "自定义金币",
|
||
ProductIdH5Coin500: "500金币",
|
||
ProductIdH5Coin1000: "1000金币",
|
||
ProductIdH5Coin3000: "3000金币",
|
||
ProductIdH5Coin5000: "5000金币",
|
||
ProductIdH5Coin8000: "8000金币",
|
||
ProductIdH5Coin10000: "10000金币",
|
||
ProductIdH5Coin15000: "15000金币",
|
||
ProductIdH5Coin18000: "18000金币",
|
||
ProductIdH5Coin20000: "20000金币",
|
||
ProductIdH5ContactWechat: "h5解锁微信",
|
||
ProductIdSuperfanGiftContactWechat: "超粉赠送解锁微信",
|
||
ProductIdContactWechat: "解锁微信",
|
||
ProductIdMembership: "永久会员",
|
||
ProductIdH5Membership: "h5永久会员",
|
||
ProductIdH5ZoneMoment: "空间动态",
|
||
ProductIdH5ZoneAdmission: "解锁空间",
|
||
ProductIdH5ZoneSuperfanship: "解锁超粉",
|
||
ProductIdIosCoin70: "ios_70金币",
|
||
ProductIdIosCoin350: "ios_350金币",
|
||
ProductIdIosCoin686: "ios_686金币",
|
||
ProductIdIosCoin2086: "ios_2086金币",
|
||
ProductIdIosCoin4886: "ios_4886金币",
|
||
ProductIdIosCoin6986: "ios_6986金币",
|
||
ProductIdIosCoin9086: "ios_9086金币",
|
||
ProductIdIosCoin13986: "ios_13986金币",
|
||
ProductIdIosCoin20986: "ios_20986金币",
|
||
}
|
||
|
||
var CoinPayValidProductIdMap = map[string]bool{
|
||
ProductIdMembership: true,
|
||
ProductIdH5ZoneMoment: true,
|
||
ProductIdH5ZoneAdmission: true,
|
||
ProductIdH5ZoneSuperfanship: true,
|
||
}
|
||
|
||
// 商品类型
|
||
const (
|
||
ProductTypeCoins = "coins" // 商品类型:金币
|
||
ProductTypeMoneyContact = "money_contact" // 商品类型:联系方式
|
||
ProductTypeMoneyMembership = "money_membership" // 商品类型:会员资格
|
||
ProductTypeZone = "zone" // 商品类型:空间
|
||
)
|
||
|
||
// 商品支付手段
|
||
const (
|
||
ProductPayMeansMoney = 1 // 现金支付
|
||
ProductPayMeansCoin = 2 // 心愿币支付
|
||
)
|
||
|
||
// 商品定价类型
|
||
const (
|
||
ProductPriceFixTypeOfficial = 1 // 官方定价
|
||
ProductPriceFixTypeUser = 2 // 用户自主定价
|
||
ProductPriceFixTypeCalc = 3 // 计算获取价格
|
||
)
|
||
|
||
// 商品
|
||
type Product struct {
|
||
Id string `json:"id" bson:"_id"` // 物料id
|
||
Type string `json:"type" bson:"type"` // 商品类型,见:ProductType*
|
||
PayMeans int `json:"pay_means" bson:"pay_means"` // 支付手段,见:ProductPayMeans*
|
||
PriceFixType int `json:"price_fix_type" bson:"price_fix_type"` // 定价类型,:见ProductPriceFixType*
|
||
Mid int64 `json:"mid" bson:"mid"` // 用户id
|
||
DevType int `json:"dev_type" bson:"dev_type"` // 设备类型,见:common.DeviceType*
|
||
Name string `json:"name" bson:"name"` // 商品名
|
||
Subject string `json:"subject" json:"subject"` // 主题
|
||
Desc string `json:"desc" bson:"desc"` // 描述
|
||
RealPrice int64 `json:"real_price" bson:"real_price"` // 真实价格,单位: 分
|
||
OriPrice int64 `json:"ori_price" bson:"ori_price"` // 原价格(划线价),单位: 分
|
||
ValueCoins int64 `json:"value_coins" bson:"value_coins"` // 该商品价值的金币数
|
||
RealCoinPrice int64 `json:"real_coin_price" bson:"real_coin_price"` // 真实价格:心愿币
|
||
OriCoinPrice int64 `json:"ori_coin_price" bson:"ori_coin_price"` // 原价格:心愿币
|
||
DelFlag int `json:"del_flag" bson:"del_flag"` // 删除标记,1:已删除,0:未删除
|
||
ImageIds []int64 `json:"image_ids" bson:"image_ids"` // 图片ids
|
||
VideoIds []int64 `json:"video_ids" bson:"video_ids"` // 视频ids
|
||
Ct int64 `json:"ct" bson:"ct"`
|
||
Ut int64 `json:"ut" bson:"ut"`
|
||
|
||
Images []*ToCImage `json:"images"`
|
||
Videos []*ToCVideo `json:"videos"`
|
||
}
|
||
|
||
func (p Product) GetRealPriceCoin() int64 {
|
||
return util.RoundUp(float64(p.RealPrice) / 10.0)
|
||
}
|