LeagueApplyView.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. using System.Collections.Generic;
  2. using System.Threading.Tasks;
  3. using ET;
  4. using FairyGUI;
  5. using UI.League;
  6. using UnityEngine;
  7. namespace GFGGame
  8. {
  9. //联盟申请列表
  10. public class LeagueApplyView : BaseWindow
  11. {
  12. private UI_LeagueApplyUI _ui;
  13. private List<long> _listKeys;
  14. public override void Dispose()
  15. {
  16. if (_ui != null)
  17. {
  18. _ui.Dispose();
  19. _ui = null;
  20. }
  21. base.Dispose();
  22. }
  23. protected override void OnInit()
  24. {
  25. base.OnInit();
  26. packageName = UI_LeagueApplyUI.PACKAGE_NAME;
  27. _ui = UI_LeagueApplyUI.Create();
  28. this.viewCom = _ui.target;
  29. isfullScreen = true;
  30. // _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("gzs_bjbj");
  31. _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("zjm_2_2");
  32. _ui.m_btnNoCheck.onClick.Add(OnBtnNoCheckClick);
  33. _ui.m_btnRule.onClick.Add(OnBtnRuleClick);
  34. _ui.m_btnback.onClick.Add(OnBtnBackClick);
  35. _ui.m_list.itemRenderer = RenderListItem;
  36. }
  37. protected override void AddEventListener()
  38. {
  39. base.AddEventListener();
  40. }
  41. protected override void OnShown()
  42. {
  43. base.OnShown();
  44. _ui.m_btnNoCheck.selected = !LeagueDataManager.Instance.LeagueData.NeedAudit;
  45. UpdateView();
  46. }
  47. protected override void OnHide()
  48. {
  49. base.OnHide();
  50. }
  51. protected override void RemoveEventListener()
  52. {
  53. base.RemoveEventListener();
  54. }
  55. private void OnBtnBackClick()
  56. {
  57. ViewManager.GoBackFrom(typeof(LeagueApplyView).FullName);
  58. }
  59. private void OnBtnRuleClick()
  60. {
  61. ViewManager.Show<RuleView>();
  62. }
  63. private void OnBtnNoCheckClick()
  64. {
  65. LeagueSproxy.ReqSetLeagueApply(!_ui.m_btnNoCheck.selected).Coroutine();
  66. }
  67. private void UpdateView()
  68. {
  69. _listKeys = new List<long>(LeagueDataManager.Instance.ListApplyDatas.Keys);
  70. _ui.m_list.numItems = LeagueDataManager.Instance.ListApplyDatas.Count;
  71. }
  72. private void RenderListItem(int index, GObject obj)
  73. {
  74. OtherRoleInfoData roleInfoData = LeagueDataManager.Instance.ListApplyDatas[_listKeys[index]];
  75. UI_ListApplyItem item = UI_ListApplyItem.Proxy(obj);
  76. RoleInfoManager.Instance.UpdateHeadWithLv(item.m_comHead, roleInfoData.headId, roleInfoData.headBorderId, roleInfoData.roleLv);
  77. item.m_txtName.text = roleInfoData.roleName;
  78. if (item.m_btnAgree.data == null)
  79. {
  80. item.m_btnAgree.onClick.Add(OnBtnAgreeClick);
  81. }
  82. item.m_btnAgree.data = roleInfoData.roleId;
  83. if (item.m_btnRefuse.data == null)
  84. {
  85. item.m_btnRefuse.onClick.Add(OnBtnRefuseClick);
  86. }
  87. item.m_btnRefuse.data = roleInfoData.roleId;
  88. UI_ListApplyItem.ProxyEnd();
  89. }
  90. private async void OnBtnAgreeClick(EventContext context)
  91. {
  92. long roleId = (long)(context.sender as GObject).data;
  93. LeagueHotelCfg hotelCfg = LeagueHotelCfgArray.Instance.GetCfg(LeagueDataManager.Instance.LeagueData.HotelLevel);
  94. if (LeagueDataManager.Instance.LeagueData.Num >= hotelCfg.limit)
  95. {
  96. PromptController.Instance.ShowFloatTextPrompt("雅集满员啦");
  97. return;
  98. }
  99. bool result = await LeagueSproxy.ReqAuditJoinLeague(roleId, true);
  100. if (result)
  101. {
  102. UpdateView();
  103. }
  104. }
  105. private async void OnBtnRefuseClick(EventContext context)
  106. {
  107. long roleId = (long)(context.sender as GObject).data;
  108. bool result = await LeagueSproxy.ReqAuditJoinLeague(roleId, false);
  109. if (result)
  110. {
  111. UpdateView();
  112. }
  113. }
  114. }
  115. }