KLFundRewardItemItem.lua 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. ---@class KLFundRewardItemItem:UIKmlLuaPanelBase
  2. ---@field view KLFundRewardItemItemView
  3. local KLFundRewardItemItem = class(UIKmlLuaPanelBase)
  4. local this =KLFundRewardItemItem
  5. ---创建时调用一次
  6. function this:Init()
  7. GUI:OSAScrollView_Initialized(self.view.osa_reward_list,nil,self.RewardItemUpdateFun,self)
  8. end
  9. ---@param item UIKmlLuaControl
  10. function this:RewardItemUpdateFun(item,index)
  11. local reward = self.rewardList[index+1]
  12. local id = reward[1]
  13. local count = reward[2]
  14. GUI:Item_setItemId(item,tostring(id))
  15. GUI:Item_setItemCount(item,tostring(count))
  16. local btnTip = GUI:GetChildById(item,"btn_tip")
  17. GUI:AddOnClickEvent(btnTip,self,self.OnClickBtnTip,id)
  18. end
  19. function this:OnClickBtnTip(_,id)
  20. SL:OpenTips("",id)
  21. end
  22. ---注册UI事件和服务器消息
  23. function this:RegistEvents()
  24. GUI:AddOnClickEvent(self.view.btn_get,self,self.OnClickBtnGet)
  25. end
  26. function this:OnClickBtnGet()
  27. local getReward = {}
  28. getReward.type = 10
  29. getReward.action="reward"
  30. getReward.id=self.data.id
  31. SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_RECHARGE_ACTION,getReward)
  32. end
  33. ---界面显示时调用一次
  34. function this:Show()
  35. end
  36. ---创建或者刷新界面数据时调用
  37. function this:Refresh()
  38. end
  39. function this:Close()
  40. end
  41. ---@param data cfg_InvestmentFunds_column
  42. function this:SetData(data)
  43. self.data = data
  44. self.rewardList = data.Rewards
  45. local info = InfoManager.dailyAddRechargeInfo.investFundInfo
  46. local buyDay = info.buyDay
  47. local haveBought = buyDay > 0
  48. local canGet = buyDay >= data.day
  49. local haveGot = table.contains(info.rewards,data.id)
  50. GUI:setVisible(self.view.text_wait,not haveBought or not canGet)
  51. if not haveBought then
  52. GUI:Text_setString(self.view.text_wait,"未购买")
  53. elseif not canGet then
  54. GUI:Text_setString(self.view.text_wait,"未到期")
  55. end
  56. GUI:setVisible(self.view.img_got,haveGot)
  57. GUI:setVisible(self.view.btn_get,not haveGot and canGet)
  58. GUI:OSAScrollView_RefreshList(self.view.osa_reward_list,#self.rewardList)
  59. GUI:Text_setString(self.view.text_day,"d" .. data.day .. "t")
  60. end
  61. return this