123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- ---@class KLInvestmentFundPanel:UIKmlLuaPanelBase
- ---@field view KLInvestmentFundPanelView
- local KLInvestmentFundPanel = class(UIKmlLuaPanelBase)
- local this =KLInvestmentFundPanel
- function this:AsyncLoadUI()
- end
- ---创建时调用一次
- function this:Init()
- GUI:OSAScrollView_Initialized(self.view.osa_reward_list,self.RewardItemGetFun,self.RewardItemUpdateFun,self)
- end
- ---注册UI事件和服务器消息
- function this:RegistEvents()
- SL:RegisterLuaNetMsg(LuaMessageIdToClient.RES_RECHARGE_ACTION,self.RefreshRoleTodayMoney,self)
- end
- function this:RefreshRoleTodayMoney(_,msg)
- if msg.type == "10" and msg.action == "reward" then
- local rewards = InfoManager.dailyAddRechargeInfo.investFundInfo.rewards
- table.insert(rewards,tonumber(msg.data.id))
- end
- InfoManager.dailyAddRechargeInfo:RefreshInvestFundRedPoint()
- self:Refresh()
- end
- ---界面显示时调用一次
- function this:Show()
- --请求投资基金信息
- SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_RECHARGE_ACTION, { type = 10, action = "panel" })
- end
- ---创建或者刷新界面数据时调用
- function this:Refresh()
- local info = InfoManager.dailyAddRechargeInfo.investFundInfo
- if not info then
- return
- end
- local group = info.group
- ---@type cfg_InvestmentFunds_column[]
- self.rewardListData = {}
- ---@type cfg_InvestmentFunds_column[]
- local tbl = SL:GetConfigTable("cfg_InvestmentFunds")
- for _, v in pairs(tbl) do
- if v.groupid == group then
- table.insert(self.rewardListData, v)
- end
- end
- GUI:OSAScrollView_RefreshList(self.view.osa_reward_list,#self.rewardListData)
- --当前对应充值表
- ---@type cfg_recharge_column[]
- local rechargeTbl = SL:GetConfigTable("cfg_recharge")
- for _, v in pairs(rechargeTbl) do
- if v.type == 10 and v.parameter == group then
- self.currentRecharge = v
- end
- end
- if not self.currentRecharge then
- logError("当前充值表不存在 group:" .. group)
- return
- end
- local buyDay = info.buyDay
- self.canBuy = buyDay <= 0
- if self.canBuy then --未购买
- GUI:Text_setString(self.view.btn_buy,self.currentRecharge.amount.."元")
- GUI:setGrey(self.view.btn_buy,false)
- GUI:setVisible(self.view.img_get,false)
- else --已购买
- GUI:Text_setString(self.view.btn_buy,"已购买")
- GUI:setGrey(self.view.btn_buy,true)
- GUI:setVisible(self.view.img_get,true)
- GUI:Image_loadTexture(self.view.img_bg,"bg_recharge_fund2","Atlas/KLInvestmentFundPanel.spriteatlas")
- end
- GUI:AddOnClickEvent(self.view.btn_buy,self,self.BtnBuyClick)
-
- if #self.rewardListData > 0 then
- local firstData = self.rewardListData[1]
- GUI:Item_setItemId(self.view.item_reward,firstData.rebate[4][1])
- GUI:Text_setString(self.view.text_gain_num,tostring(firstData.rebate[4][2]))
- local rewardItemId = firstData.rebate[3][1]
- ---@type cfg_item_column
- local item = SL:GetConfig("cfg_item",rewardItemId)
- local returnRewardNum = firstData.rebate[1][1]
- local returnId = firstData.rebate[2][1]
- local returnNum = firstData.rebate[2][2]
- GUI:Item_setItemId(self.view.item_reward_top,tostring(returnId))
- GUI:Text_setString(self.view.text_gain_num_top,tostring(returnNum))
- GUI:Text_setString(self.view.text_return_num,tostring(returnRewardNum) .. "%")
- GUI:Text_setString(self.view.text_equip_name,item.name)
- end
- end
- function this:BtnBuyClick()
- if not self.canBuy then
- return
- end
- GUIUtil.SDKPay(self.currentRecharge,1)
- end
- function this:Close()
- end
- function this:RewardItemGetFun()
- local item = GUI:UIPanel_Open("dev/outui/MainRecharge/Item/KLFundRewardItem/KLFundRewardItemItem",nil,self,nil,true)
- return item
- end
- ---@param item KLFundRewardItemItem
- ---@param index number
- function this:RewardItemUpdateFun(item,index)
- local data = self.rewardListData[index+1]
- item:SetData(data)
- end
- return this
|