--local SuoHa_PlayerSelfPokerInfoView = require("extend_project.extend.poker.suoha.SuoHa_PlayerSelfPokerInfoView") local FamilyRoomCardRecord = import(".FamilyRoomCardRecord") local RoomCardRecord = import(".RoomCardRecord") local FamilyInviteFamilyView = import('.FamilyInviteFamilyView') local FamilyAuditNumber = import(".FamilyAuditNumber") local FamilyAllNumbers = import(".FamilyAllNumbers") --region LOCAL local FamilyMyFamily = {} local root = {} local function ChangeFamilyConfig(data, self) local fgCtr = ControllerManager.GetController(NewGroupController) fgCtr:FG_UpdateGroupInfo(data, function(res) if res.ReturnCode ~= 0 then ViewUtil.ErrorTip(res.ReturnCode, "更改失败,请稍后再试") else ViewUtil.ErrorTip(res.ReturnCode, "修改成功!") self.family.id = data.id or self.family.id self.family.name = data.name or self.family.name self.family.notice = data.notice or self.family.notice self.family.ban = data.ban or not self.family.ban self.family.dissolve_opt = data.dissolve_opt or self.family.dissolve_opt self.family.kick_opt = data.kick_opt or self.family.kick_opt self.family.apply = data.apply or self.family.apply self.family.ban_chat1 = data.ban_chat1 or self.family.ban_chat1 self.family.ban_chat2 = data.ban_chat2 or self.family.ban_chat2 self.family.option = data.option or self.family.option self.family.show_num = data.show_num self.family.wechatId = data.wechatId self:Refalsh() self.cWindow.selectedIndex = 0 end end ) end local function QuitFamily(self) local uid = DataManager.SelfUser.account_id local group = DataManager.groups:get(self.groupId) local player = group.memberMap[uid] local tips = "确定退出该亲友圈?" if player.lev == 1 then tips = "确定解散该亲友圈?" end local tipsWin = MsgWindow.new(self._view, tips, MsgWindow.MsgMode.OkAndCancel) tipsWin.onOk:Add(function() if self.networkSending then ViewUtil.ShowBannerOnScreenCenter("操作中,请稍后。。") return end self.networkSending = true local fgCtr = ControllerManager.GetController(NewGroupController) print("发送了退出协议 familyid = ", self.family.id) fgCtr:FG_ExitGroup(self.family.id, function(res) if res.ReturnCode ~= 0 then return end self.networkSending = false Broadcast.Send(BroadcastEvent.OnOutFamily) self:Close() end) end) tipsWin:Show() end function FamilyMyFamily:ReflashJoinsRedPoint() local cRedPoint = self.btn_applyMsg:GetController("cRedPoint") local tex_redPoint = self.btn_applyMsg:GetChild("tex_redPoint") local group = DataManager.groups.groupMap[self.groupId] cRedPoint.selectedIndex = 0 if group.joins > 0 then cRedPoint.selectedIndex = 1 end local tex = group.joins if group.joins > 99 then tex = "99+" end tex_redPoint.text = tex end --endregion function FamilyMyFamily:TryShow(groupId, r) self:Init() root = r self.groupId = groupId self:Show() end function FamilyMyFamily.New() setmetatable(FamilyMyFamily, { __index = BaseView }) local inst = setmetatable({}, { __index = FamilyMyFamily }) inst._close_destroy = true inst._scale = true inst._animation = false inst._full_offset = false inst._anim_pop = 0 inst.class = "FamilyMyFamily" BaseView.InitView(inst, 'ui://Family/com_myFamily') -- 隐藏背景图 inst._root_view:GetChild("win_mode").visible = false inst:Init() return inst end function FamilyMyFamily:Show(groupId) self.groupId = groupId Broadcast.AddListener(BroadcastEvent.OnJoinsChange, self.ReflashJoinsRedPoint, self) local fgCtr = ControllerManager.GetController(NewGroupController) ViewUtil.ShowModalWait(self._root_view, "正在加载亲友圈数据......") fgCtr:WEB_FG_GET_GROUP_DETAIL(self.groupId, function(res) print("收到家族的详细信息") pt(res) ViewUtil.CloseModalWait() if res.ReturnCode ~= 0 then ViewUtil.ErrorTip(res.ReturnCode) end self:Refalsh() end) BaseView.Show(self) end function FamilyMyFamily:Close() Broadcast.RemoveListener(BroadcastEvent.OnJoinsChange, self.ReflashJoinsRedPoint) BaseView.Close(self) end function FamilyMyFamily:Refalsh() self.family = DataManager.groups.groupMap[self.groupId] self.tex_fName.text = Utils.TextOmit(self.family.name, 6) self.tex_playerName.text = "亲友圈号:" .. self.family.id self.tex_fNumber.text = self.family.member_num self.tex_cradNum.text = self.family.diamo self.tex_nocice.text = self.family.notice self.tex_wxId.text = Utils.TextOmit(self.family.wechatId, 6) ImageLoad.Load(self.family.o_portrait, self.loader_icon) self.cStyle.selectedIndex = self.family.lev - 1 -- index = 0 是显示隐藏按钮 self.showNumber = self.family.isShow if self.showNumber == 0 then self.cDisplayNumber.selectedIndex = 1 self.tex_fNumber.text = "*" elseif self.showNumber == 1 then self.cDisplayNumber.selectedIndex = 0 end self:ReflashJoinsRedPoint() end function FamilyMyFamily:Init() self._view:GetChild("btn_close").onClick:Set(function() self:Close() end) self.loader_icon = self._view:GetChild("loader_icon") self.tex_fName = self._view:GetChild("tex_fName") self.tex_wxId = self._view:GetChild("tex_wxId") self.tex_fNumber = self._view:GetChild("tex_fNumber") self.tex_cradNum = self._view:GetChild("tex_cradNum") self.tex_nocice = self._view:GetChild("tex_nocice") self.tex_playerName = self._view:GetChild("tex_playerName") self.tex_changeTitle = self._view:GetChild("tex_changeTitle") self.btn_quitFamily = self._view:GetChild("btn_quitFamily") self.btn_playSet = self._view:GetChild("btn_playSet") self.btn_invite = self._view:GetChild("btn_invite") self.btn_czRecord = self._view:GetChild("btn_czRecord") self.btn_applyMsg = self._view:GetChild("btn_applyMsg") self.btn_buyCrad = self._view:GetChild("btn_buyCrad") self.btn_checkNumber = self._view:GetChild("btn_checkNumber") self.btn_editName = self._view:GetChild("btn_editName") self.btn_editNotice = self._view:GetChild("btn_editNotice") self.btn_quitNotice = self._view:GetChild("btn_quitNotice") self.btn_bgNotice = self._view:GetChild("btn_bgNotice") self.btn_confirmNotice = self._view:GetChild("btn_confirmNotice") self.btn_hideNumber = self._view:GetChild("btn_hideNumber") self.btn_showNumber = self._view:GetChild("btn_showNumber") self.btn_editWx = self._view:GetChild("btn_editWx") self.input_text = self._view:GetChild("input_text") self.cStyle = self._view:GetController("cStyle") self.cWindow = self._view:GetController("cWindow") self.cDisplayNumber = self._view:GetController("cDisplayNumber") self.cTips = self._view:GetController("cTips") self.com_tips = self._view:GetChild("com_tips") self.tips_btn_comfirm = self.com_tips:GetChild("btn_comfirm") self.tips_btn_cencel = self.com_tips:GetChild("btn_cencel") self.tips_btn_bg = self.com_tips:GetChild("btn_bg") self.input_text.emojies = EmojiDitc.EmojiesDitc self.tex_fName.emojies = EmojiDitc.EmojiesDitc self.tex_wxId.emojies = EmojiDitc.EmojiesDitc self.tex_fNumber.emojies = EmojiDitc.EmojiesDitc self.tex_cradNum.emojies = EmojiDitc.EmojiesDitc self.tex_nocice.emojies = EmojiDitc.EmojiesDitc self.tex_playerName.emojies = EmojiDitc.EmojiesDitc self.btn_playSet.onClick:Set(function() local curView = ViewManager.GetCurrenView() if curView.class == "FamilyMainView" then curView:PlayEdit() else local view = ViewManager.ChangeView(ViewManager.View_Family, function() view:PlayEdit() end) end end) self.btn_invite.onClick:Set(function() local familyInviteFamilyView = FamilyInviteFamilyView.new() familyInviteFamilyView:Show() end) self.btn_buyCrad.onClick:Set(function() local curView = ViewManager.GetCurrenView() if curView.class == "FamilyMainView" then curView:ShowShop() else local view = ViewManager.ChangeView(ViewManager.View_Family, function() view:ShowShop() end) end end) self.btn_czRecord.onClick:Set(function() local view = RoomCardRecord.New() view:Show() end) self.btn_checkNumber.onClick:Set(function() local group = DataManager.groups.groupMap[self.groupId] local view = FamilyAllNumbers.new() view:Show(group) end) self.btn_applyMsg.onClick:Set(function() local group = DataManager.groups.groupMap[self.groupId] local view = FamilyAuditNumber.new() view:Show(group) end) self.btn_quitFamily.onClick:Set(function() QuitFamily(self) end) self.btn_quitNotice.onClick:Set(function() self.cWindow.selectedIndex = 0 end) self.btn_bgNotice.onClick:Set(function() self.cWindow.selectedIndex = 0 end) self.btn_editNotice.onClick:Set(function() self.changeCallback = function() ChangeFamilyConfig({ id = self.family.id, notice = self.input_text.text }, self) end self.input_text.text = self.family.notice self.tex_changeTitle.text = "修改公告" self.cWindow.selectedIndex = 1 end) self.btn_editName.onClick:Set(function() self.changeCallback = function() ChangeFamilyConfig({ id = self.family.id, name = self.input_text.text }, self) end self.input_text.text = self.family.name self.tex_changeTitle.text = "修改家族名字" self.cWindow.selectedIndex = 1 end) self.btn_editWx.onClick:Set(function() self.changeCallback = function() ChangeFamilyConfig({ id = self.family.id, wechatId = self.input_text.text }, self) end self.input_text.text = self.family.wechatId self.tex_changeTitle.text = "修改微信号" self.cWindow.selectedIndex = 1 end) self.btn_confirmNotice.onClick:Set(function() self.changeCallback() self.cWindow.selectedIndex = 0 end) self.btn_hideNumber.onClick:Set(function() if self.networkSending == true then ViewUtil.ShowBannerOnScreenCenter("设置中,请稍后。。") return end local fgCtr = ControllerManager.GetController(NewGroupController) self.networkSending = true fgCtr:FG_SetGroupShow(0, self.family.id, function(res) print("收到协议M:FG_SetGroupShow") pt(res) self.networkSending = false if res.ReturnCode ~= 0 then ViewUtil.ErrorTip(res.ReturnCode) return end self.family.isShow = 0 self:Refalsh() ViewUtil.ShowBannerOnScreenCenter("设置成功") end) end) self.btn_showNumber.onClick:Set(function() if self.networkSending == true then ViewUtil.ShowBannerOnScreenCenter("设置中,请稍后。。") return end print("点击了") local fgCtr = ControllerManager.GetController(NewGroupController) self.networkSending = true fgCtr:FG_SetGroupShow(1, self.family.id, function(res) print("收到协议M:FG_SetGroupShow") pt(res) self.networkSending = false if res.ReturnCode ~= 0 then ViewUtil.ErrorTip(res.ReturnCode) return end self.family.isShow = 1 self:Refalsh() ViewUtil.ShowBannerOnScreenCenter("设置成功") end) end) self.tips_btn_comfirm.onClick:Set(function() if self.networkSending then ViewUtil.ShowBannerOnScreenCenter("操作中,请稍后。。") return end self.networkSending = true local fgCtr = ControllerManager.GetController(NewGroupController) print("发送了退出协议 familyid = ", self.family.id) fgCtr:FG_ExitGroup(self.family.id, function(res) if res.ReturnCode ~= 0 then return end self.networkSending = false self.cTips.selectedIndex = 1 --self:Close() BaseView.DestroyAll() --ControllerManager.ChangeController(NewGroupController) ViewManager.ChangeView(ViewManager.View_Family) end) end) self.tips_btn_cencel.onClick:Set(function() self.cTips.selectedIndex = 0 end) self.tips_btn_bg.onClick:Set(function() self.cTips.selectedIndex = 0 end) self.cStyle.selectedIndex = 2 return self end return FamilyMyFamily