ActivityMainTipsView.cs 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. using FairyGUI;
  2. using UI.ActivityMain;
  3. using System.Collections;
  4. using System.Collections.Generic;
  5. using ET;
  6. namespace GFGGame
  7. {
  8. public class ActivityMainTipsView : BaseView
  9. {
  10. private UI_ActivityMainTipsUI _ui;
  11. private AdCfg[] activitydata;
  12. private List<AdCfg> showActivity = new List<AdCfg>();
  13. public override void Dispose()
  14. {
  15. if (_ui != null)
  16. {
  17. _ui.Dispose();
  18. _ui = null;
  19. }
  20. base.Dispose();
  21. }
  22. protected override void OnInit()
  23. {
  24. base.OnInit();
  25. packageName = UI_ActivityMainTipsUI.PACKAGE_NAME;
  26. _ui = UI_ActivityMainTipsUI.Create();
  27. this.viewCom = _ui.target;
  28. isfullScreen = true;
  29. _ui.m_icon.onClick.Add(OnBtnAdJump);
  30. _ui.m_btnChange.onClick.Add(OnClickChange);
  31. _ui.m_backBtn.onClick.Add(OnClickChange);
  32. _ui.m_notTips.onClick.Add(OnClickTips);
  33. }
  34. protected override void OnShown()
  35. {
  36. base.OnShown();
  37. if(activitydata == null)
  38. {
  39. activitydata = AdCfgArray.Instance.dataArray;
  40. }
  41. _ui.m_t4.Play();
  42. UpdateInfo();
  43. }
  44. protected async override void OnHide()
  45. {
  46. bool result;
  47. result = await ActivitySProxy.ReqActivityTips(NumericType.IsPropYchmActivity, ActivityDataManager.Instance.todayActivityTips);
  48. showActivity.Clear();
  49. activitydata = null;
  50. base.OnHide();
  51. }
  52. private void UpdateView()
  53. {
  54. long endTime = 0;
  55. if (showActivity.Count > 0 && showActivity[0] != null )
  56. {
  57. if(showActivity[0].activityId != 0)
  58. {
  59. ActivityInfo activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(showActivity[0].activityId);
  60. endTime = activityInfo.EndTime;
  61. }
  62. else
  63. {
  64. endTime = TimeUtil.DateTimeToTimestamp(showActivity[0].endTime);
  65. }
  66. }
  67. else
  68. {
  69. this.Hide();
  70. return;
  71. }
  72. long curTime = TimeHelper.ServerNow();
  73. _ui.m_activityTime.text = string.Format("剩余{0}", TimeUtil.FormattingTimeTo_DDHHmm(endTime - curTime));
  74. _ui.m_icon.url = "ui://ActivityMainTips/" + showActivity[0].res;
  75. // _ui.m_activityDesc.text = showActivity[0].desc;
  76. }
  77. private void UpdateInfo()
  78. {
  79. showActivity.Clear();
  80. for (int i=0; i < activitydata.Length; i++)
  81. {
  82. AdCfg adCfg = activitydata[i];
  83. if (adCfg.activityId > 0)
  84. {
  85. if (ActivityGlobalDataManager.Instance.GetActivityInfo(adCfg.activityId) == null) continue;
  86. ActivityInfo activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(adCfg.activityId);
  87. if (TimeHelper.ServerNow() < activityInfo.StartTime || TimeHelper.ServerNow() > activityInfo.EndTime) continue;
  88. }
  89. if (adCfg.NoticeTips != null || adCfg.NoticeTips != "")
  90. {
  91. if(adCfg.activityId != 0)
  92. {
  93. ActivityInfo activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(adCfg.activityId);
  94. if (TimeHelper.ServerNow() < activityInfo.StartTime || TimeHelper.ServerNow() > activityInfo.EndTime)
  95. {
  96. }
  97. else
  98. {
  99. showActivity.Add(adCfg);
  100. continue;
  101. }
  102. }
  103. if (adCfg.startTime != "" && adCfg.startTime != null)
  104. {
  105. long startTime = TimeUtil.DateTimeToTimestamp(adCfg.startTime);
  106. long endTime = TimeUtil.DateTimeToTimestamp(adCfg.endTime);
  107. if (TimeHelper.ServerNow() < startTime || TimeHelper.ServerNow() > endTime)
  108. {
  109. continue;
  110. }
  111. else
  112. {
  113. showActivity.Add(adCfg);
  114. }
  115. }
  116. }
  117. }
  118. UpdateView();
  119. }
  120. private void OnClickChange()
  121. {
  122. _ui.m_t0.Play();
  123. showActivity.RemoveAt(0);
  124. if (showActivity.Count == 0)
  125. {
  126. this.Hide();
  127. return;
  128. }
  129. UpdateView();
  130. _ui.m_t1.Play();
  131. }
  132. private void OnClickTips()
  133. {
  134. if(ActivityDataManager.Instance.todayActivityTips == 0)
  135. {
  136. _ui.m_notTips.url = "ui://ActivityMain/jrbzts_off";
  137. ActivityDataManager.Instance.todayActivityTips = 1;
  138. }
  139. else
  140. {
  141. _ui.m_notTips.url = "ui://ActivityMain/ts_jrbzts";
  142. ActivityDataManager.Instance.todayActivityTips = 0;
  143. }
  144. }
  145. private void OnBtnAdJump()
  146. {
  147. AdCfg adCfg = showActivity[0];
  148. object[] param = null;
  149. int jumpIndex = 0;
  150. if (adCfg.jumpId == nameof(LimitChargeView))
  151. {
  152. param = new object[] { adCfg.activityId };
  153. }
  154. if (adCfg.jumpId == nameof(NewLimitChargeView))
  155. {
  156. param = new object[] { adCfg.activityId };
  157. }
  158. if (adCfg.jumpId == nameof(LuckyBoxView))
  159. {
  160. jumpIndex = adCfg.jumpParamArr[0];
  161. }
  162. if (jumpIndex != 0)
  163. ViewManager.Show($"GFGGame.{adCfg.jumpId}", jumpIndex);
  164. else
  165. ViewManager.Show($"GFGGame.{adCfg.jumpId}", param);
  166. }
  167. }
  168. }