127 lines
4.3 KiB
Lua
127 lines
4.3 KiB
Lua
|
------------------------------------------------
|
|||
|
--作者: dhq
|
|||
|
--日期: 2019-05-13
|
|||
|
--文件: ServerData.lua
|
|||
|
--模块: ServerData
|
|||
|
--描述: 充值系统数据表的数据由服务器下发了,这个数据是服务器下发的数据
|
|||
|
------------------------------------------------
|
|||
|
local RuntimePlatform = CS.UnityEngine.RuntimePlatform
|
|||
|
|
|||
|
local ServerData =
|
|||
|
{
|
|||
|
--商品ID
|
|||
|
Id = 0,
|
|||
|
--配置表ID
|
|||
|
CfgId = 0,
|
|||
|
--商品名字描述(主要用于BI后台数据)
|
|||
|
Desc = "",
|
|||
|
--SDK需要的支付类型
|
|||
|
GoodsDealType = 0,
|
|||
|
--充值类型 1正常充值,2每日礼包充值...等等具体看配置表
|
|||
|
RechargeType = 0,
|
|||
|
--只针对Type=1(正常充值)的情况使用,
|
|||
|
RechargeSubType = 0,
|
|||
|
--充值次数
|
|||
|
RechargeTime = 0,
|
|||
|
--显示的Icon
|
|||
|
Icon = 0,
|
|||
|
--充值档位对应消耗的真实货币(单位:分)
|
|||
|
Money = 0,
|
|||
|
--传给SDK的充值金额
|
|||
|
SDKPrice = 0,
|
|||
|
--对应奖励 物品类型_数量_绑定_职业
|
|||
|
Reward = 0,
|
|||
|
--充值倍数倍数_次数(3_2表示前2次充值都是3倍奖励)-1代表无限次
|
|||
|
MultipleTime = 0,
|
|||
|
--充值额外奖励
|
|||
|
ExtraReward = 0,
|
|||
|
--额外奖励可领取次数-1代表无限次
|
|||
|
ExtraRewardTime = 0,
|
|||
|
--商品扩展字段
|
|||
|
GoodsExt = "",
|
|||
|
CurPlatform = nil,
|
|||
|
}
|
|||
|
|
|||
|
function ServerData:New(sData)
|
|||
|
local _m = Utils.DeepCopy(self)
|
|||
|
_m.CurPlatform = LogicAdaptor.GetRuntimePlatform()
|
|||
|
_m:RefeshData(sData)
|
|||
|
return _m
|
|||
|
end
|
|||
|
|
|||
|
function ServerData:RefeshData(sData)
|
|||
|
--传给SDK的ID
|
|||
|
self.Id = sData.goods_id
|
|||
|
--配置表ID
|
|||
|
self.CfgId = sData.goods_system_cfg_id
|
|||
|
--商品名字描述(主要用于BI后台数据)
|
|||
|
self.Desc = sData.goods_name
|
|||
|
--交易类型
|
|||
|
self.GoodsDealType = sData.goods_pay_channel
|
|||
|
-- * 充值类型
|
|||
|
-- * 1:正常充值
|
|||
|
-- * 2:每日礼包充值
|
|||
|
-- * 3:畅游月卡
|
|||
|
-- * 4:尊享月卡
|
|||
|
-- * 5:终身卡
|
|||
|
-- * 6:成长基金
|
|||
|
-- * 7:神秘商店
|
|||
|
-- * 8:0元购
|
|||
|
-- * 9:直购礼包(超值折扣)
|
|||
|
-- * 10:狂欢周
|
|||
|
-- * 11:运营活动类(后台配置)
|
|||
|
self.RechargeType = tonumber(sData.goods_type)
|
|||
|
-- * 只针对Type=1(正常充值)的情况使用,其他类型不能使用
|
|||
|
-- * 1=正常充值
|
|||
|
-- * 2=新手礼包(一生一次)
|
|||
|
-- * 3=周礼包(一周一刷新)
|
|||
|
-- * 4=日礼包(一日一刷新)
|
|||
|
self.RechargeSubType = sData.goods_subtype
|
|||
|
-- * 充值次数(当前轮每个挡位对应充值的次数)
|
|||
|
-- * -1=无次数限制
|
|||
|
self.RechargeTime = sData.goods_limit
|
|||
|
-- * 显示的图标的ID(hide)
|
|||
|
self.Icon = sData.goods_icon
|
|||
|
-- * 充值档位对应消耗的真实货币(单位:分)
|
|||
|
-- * 1:android
|
|||
|
-- * 2:ios
|
|||
|
-- * (不需要区分大小写)
|
|||
|
local _price = sData.goods_price
|
|||
|
|
|||
|
if CS.UnityEngine.Application.platform == RuntimePlatform.Android then
|
|||
|
local _priceDict = Dictionary:New(_price.android)
|
|||
|
if _priceDict:ContainsKey(GameCenter.PaySystem.SdkPlatCfg.MoneyCode) then
|
|||
|
local _priceByMoneyCode = tonumber(_priceDict[GameCenter.PaySystem.SdkPlatCfg.MoneyCode])
|
|||
|
self.Money = tonumber(_priceByMoneyCode / 100)
|
|||
|
self.SDKPrice = tonumber(_priceByMoneyCode)
|
|||
|
end
|
|||
|
else
|
|||
|
local _priceDict = Dictionary:New(_price.ios)
|
|||
|
if _priceDict:ContainsKey(GameCenter.PaySystem.SdkPlatCfg.MoneyCode) then
|
|||
|
local _priceByMoneyCode = tonumber(_priceDict[GameCenter.PaySystem.SdkPlatCfg.MoneyCode])
|
|||
|
self.Money = tonumber(_priceByMoneyCode / 100)
|
|||
|
self.SDKPrice = tonumber(_priceByMoneyCode)
|
|||
|
end
|
|||
|
end
|
|||
|
-- * 对应奖励
|
|||
|
-- * 物品类型_数量_绑定_职业
|
|||
|
-- * 绑定 0未绑定 1绑定
|
|||
|
-- * 也只 0男剑 1女枪 9通用
|
|||
|
self.Reward = sData.goods_reward
|
|||
|
-- * 充值倍数
|
|||
|
-- * 倍数_次数(3_2表示前2次充值都是3倍奖励)
|
|||
|
-- * -1代表无限次
|
|||
|
self.MultipleTime = sData.goods_multiple
|
|||
|
-- * 额外赠送
|
|||
|
-- * 物品类型_数量_绑定_职业
|
|||
|
-- * 绑定 0未绑定 1绑定
|
|||
|
-- * 也只 0男剑 1女枪 9通用
|
|||
|
self.ExtraReward = sData.goods_extra_reward
|
|||
|
-- * 额外奖励可领取次数 -1代表无限次
|
|||
|
self.ExtraRewardTime = sData.goods_extra_reward_limit
|
|||
|
--商品扩展字段
|
|||
|
self.GoodsExt = sData.goods_ext
|
|||
|
end
|
|||
|
|
|||
|
return ServerData
|