源战役客户端
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

118 行
3.7 KiB

  1. -- <*
  2. -- @Author: Saber
  3. -- @Description: 社团申请管理-成员/职位管理节点
  4. -- *>
  5. GuildApplyMgrItem = GuildApplyMgrItem or BaseClass(BaseItem)
  6. local GuildApplyMgrItem = GuildApplyMgrItem
  7. function GuildApplyMgrItem:__init(parent_wnd,prefab_asset,layer_name)
  8. self.base_file = "guild"
  9. self.layout_file = "GuildApplyMgrItem"
  10. self.parent_wnd = parent_wnd
  11. self.layer_name = layer_name
  12. self.model = GuildModel:getInstance()
  13. self:Load()
  14. end
  15. function GuildApplyMgrItem:Load_callback()
  16. local nodes = {
  17. "head_con",
  18. "reject_btn:obj", "pass_btn:obj",
  19. "info_con/vip_con", "info_con/sex_flag:img", "info_con/name:tmp",
  20. "power_val:txt",
  21. "apply_pos_con:obj", "apply_pos_con/pos_bg:img",
  22. "apply_time:tmp",
  23. }
  24. self:GetChildren(nodes)
  25. self.head_role = HeadRoleItem.New(self.head_con)
  26. self.head_role:SetItemSize(69, 69)
  27. -- 加载vip节点
  28. self.vipItem = RoleVipItem.New(self.vip_con)
  29. self.vipItem:SetAnchoredPosition(0, 0)
  30. self:AddEvents()
  31. if self.need_refreshData then
  32. self:UpdateView()
  33. end
  34. end
  35. function GuildApplyMgrItem:AddEvents( )
  36. local function click_event(target)
  37. if target == self.reject_btn_obj then -- 拒绝请求
  38. self:OnApplyBtnClick(0)
  39. elseif target == self.pass_btn_obj then -- 通过请求
  40. self:OnApplyBtnClick(1)
  41. end
  42. end
  43. AddClickEvent(self.reject_btn_obj, click_event)
  44. AddClickEvent(self.pass_btn_obj, click_event)
  45. end
  46. function GuildApplyMgrItem:SetData( tab_type, index, data )
  47. self.tab_type = tab_type
  48. self.index = index
  49. self.data = data
  50. if self.is_loaded then
  51. self.need_refreshData = false
  52. self:UpdateView()
  53. else
  54. self.need_refreshData = true
  55. end
  56. end
  57. function GuildApplyMgrItem:UpdateView( )
  58. -- 加载头像信息
  59. local head_data = {
  60. show_tip = true,
  61. use_bg = 1,
  62. vo = {
  63. id = self.data.role_id,
  64. server_id = self.data.server_id,
  65. career = self.data.career,
  66. sex = self.data.sex,
  67. turn = self.data.turn,
  68. profile_photo_id = self.data.profile_photo_id,
  69. level = self.data.level,
  70. dress_board_id = self.data.dress_id or self.data.dress_board,
  71. },
  72. }
  73. self.head_role:SetData(head_data)
  74. -- 加载其他信息
  75. self.vipItem:SetData(self.data.vip_flag,self.data.sup_vip_type)
  76. self.name_tmp.text = self.data.name
  77. lua_resM:setImageSprite(self, self.sex_flag_img, "common_asset", self.data.sex == 1 and "com_boy" or "com_girl", true)
  78. local sex_pos_x = 50 + self.name_tmp.preferredWidth
  79. SetAnchoredPositionX(self.sex_flag, sex_pos_x)
  80. self.power_val_txt.text = "f" .. self.data.power
  81. self.apply_time_tmp.text = TimeUtil:GetTimeStrByServerTime(self.data.time)
  82. -- 1为申请入会类型,不需要展示职位申请,2即职位申请类型,展示职位申请
  83. local show_pos = self.tab_type == 2
  84. if self.apply_pos_con_obj.activeSelf ~= show_pos then
  85. self.apply_pos_con_obj:SetActive(show_pos)
  86. end
  87. SetAnchoredPositionY(self.apply_time, show_pos and -15 or 2)
  88. if show_pos then
  89. lua_resM:setImageSprite(self, self.pos_bg_img, "guild_asset", "g_pos_icon" .. self.data.position, true)
  90. end
  91. end
  92. -- 点击审批按钮 1:允许 0:拒绝
  93. function GuildApplyMgrItem:OnApplyBtnClick(flag)
  94. if self.data and self.data.role_id then
  95. self.model:Fire(GuildModel.RequestSetApplyMemberStateEvt, self.data.role_id, flag)
  96. end
  97. end
  98. function GuildApplyMgrItem:__delete( )
  99. if self.vipItem then
  100. self.vipItem:DeleteMe()
  101. self.vipItem = nil
  102. end
  103. if self.head_role then
  104. self.head_role:DeleteMe()
  105. self.head_role = nil
  106. end
  107. end