UIActivitySignDailyCtr.lua 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. local UIActivitySignDailyCtr = class("UIActivitySignDailyCtr", require("UICtrBase"))
  2. function UIActivitySignDailyCtr:Init(view)
  3. self.view = view
  4. end
  5. function UIActivitySignDailyCtr:SetData(data)
  6. self.asyncIdx = 0
  7. if data == nil then return end
  8. self.data = data
  9. end
  10. function UIActivitySignDailyCtr:GetAsyncIdx()
  11. self.asyncIdx = self.asyncIdx + 1
  12. return self.asyncIdx
  13. end
  14. function UIActivitySignDailyCtr:GetData()
  15. return self.data
  16. end
  17. function UIActivitySignDailyCtr:GetActId()
  18. return self.data and self.data.actId or 0
  19. end
  20. function UIActivitySignDailyCtr:RefreshShowDatas()
  21. local actId = self:GetActId()
  22. if not actId then
  23. return
  24. end
  25. if not self.actItem then
  26. self.actItem = ManagerContainer.DataMgr.ActsDataMgr:GetActivityItemById(actId)
  27. if not self.actItem then
  28. return
  29. end
  30. end
  31. self.canSignToday = self.actItem:GetCanSignToDay()
  32. self.curDay = self.actItem:GetSignDays()
  33. local showDatas = ManagerContainer.CfgMgr:GetActivitySignDataById(actId)
  34. self.showDatas = showDatas
  35. return self.showDatas
  36. end
  37. function UIActivitySignDailyCtr:GetRuleKey()
  38. return self.actItem and self.actItem.infoLangKey ~= '' and self.actItem.infoLangKey or "notconfiguration"
  39. end
  40. function UIActivitySignDailyCtr:GetCanSignToday()
  41. return self.canSignToday
  42. end
  43. function UIActivitySignDailyCtr:GetSignDays()
  44. return self.curDay or 0
  45. end
  46. function UIActivitySignDailyCtr:GetShowDataLength()
  47. return self.showDatas and #self.showDatas or 0
  48. end
  49. function UIActivitySignDailyCtr:GetShowData(itemIndex)
  50. if not self.showDatas then
  51. return
  52. end
  53. return self.showDatas[itemIndex + 1]
  54. end
  55. function UIActivitySignDailyCtr:SendSignUp()
  56. ManagerContainer.NetManager:SendMessage(ProtoMsgId.CS_ACTIVITY_SIGN_IN_REQ, {activity_id = self:GetActId()})
  57. end
  58. function UIActivitySignDailyCtr:OnDispose()
  59. self.showDatas = nil
  60. self.data = nil
  61. self.view = nil
  62. end
  63. return UIActivitySignDailyCtr