UIRechargePushInfo.lua 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. ---@class UIRechargePushInfo @注释
  2. UIRechargePushInfo = class()
  3. local this = UIRechargePushInfo
  4. function this:ctor()
  5. end
  6. function this:Init()
  7. self:Reset()
  8. self:InitData()
  9. self:RegistMessages()
  10. end
  11. function this:Reset()
  12. self.resData = nil
  13. self.endTime = 0
  14. self.DataList = {}
  15. end
  16. function this:InitData()
  17. end
  18. function this:RegistMessages()
  19. SL:RegisterLuaNetMsg(LuaMessageIdToClient.RES_PREFERENTIAL_BUTTON_PANEL_INFO, self.RES_PREFERENTIAL_BUTTON_PANEL_INFO, self)
  20. --SL:RegisterLUAEvent(MESSAGE_ACCEPT, self.DataProcessing, self)
  21. end
  22. function this:RES_PREFERENTIAL_BUTTON_PANEL_INFO(_, message)
  23. if message then
  24. ---单充礼包
  25. self.resData = message
  26. self:SetShowList()
  27. if self:IsShowBtn() then
  28. local topPanel = GUI:GetUI("dev/ui/MainUI/Panel/KLUISystemTop/KLUISystemTopPanel")
  29. if topPanel then
  30. topPanel:Refresh()
  31. end
  32. end
  33. end
  34. end
  35. function this:SetShowList()
  36. self.DataList = {}
  37. local endTimeTemp = 0
  38. if self.resData then
  39. for _, v in pairs(self.resData) do
  40. local giftId = tonumber(v.giftId)
  41. local endTime = tonumber(v.endtime) *1000
  42. if endTime > Time.GetServerTime() then
  43. table.insert(self.DataList, { endTime = endTime, giftId = giftId })
  44. end
  45. if endTime > endTimeTemp then
  46. endTimeTemp = endTime
  47. end
  48. end
  49. end
  50. table.sort(self.DataList,function(a, b)
  51. return a.giftId < b.giftId
  52. end)
  53. self.endTime = endTimeTemp
  54. end
  55. function this:IsShowBtn()
  56. if self.resData then
  57. for _, v in pairs(self.resData) do
  58. local endTime = tonumber(v.endtime) *1000
  59. if endTime > Time.GetServerTime() then
  60. ---没买且时间没到
  61. return true
  62. end
  63. end
  64. end
  65. return false
  66. end