|
- -- 主界面
- local ClubPlayerMatchAdjustAllHongHua = class("ClubPlayerMatchAdjustAllHongHua", cc.UIView)
- local ClubDefine = require("luaScript.Protocol.Club.ClubDefine")
-
- --一页30个
- local PAGE_COUNT = 30
-
- function ClubPlayerMatchAdjustAllHongHua:ctor(clubId)
- ClubPlayerMatchAdjustAllHongHua.super.ctor(self);
-
- local ui = loadUI("res/ui/ui_club/ui_club_player_match_adjust_honghua.ui");
- self.ui = ui;
- self:addChild(ui);
-
- self.clubId = clubId
- self.clubInfo = app.club_php.clubList[clubId]
- self.operatorId = app.user.loginInfo.uid
- self.curPage = 1
- self.totolPage = 1
- self.selectPlayer = {}
- --加一下这个数组,提高效率
- self.bSelectPlayer = {}
- end
-
- function ClubPlayerMatchAdjustAllHongHua:onEnter()
- ClubPlayerMatchAdjustAllHongHua.super.onEnter(self)
-
- self.ui.Items.Button_Sure:registerClick(handler(self , self.onClickConfirm))
-
- -- 关闭
- self.ui.Items.Button_guanbi:registerClick(handler(self , self.onClickClose))
-
- self.ui.Items.CheckBox_select:addEventListener(handler(self , self.onClickSelect))
- --翻页
- self.ui.Items.Button_page_up:registerClick(handler(self , self.onClickUpPage))
- self.ui.Items.Button_page_next:registerClick(handler(self , self.onClickNextPage))
-
- self:initBindEvent()
-
- self:onUpdatePlayerListEvent({type = ClubDefine.PlayListType.MATCH_MEMBER})
- end
-
- -- 关闭
- function ClubPlayerMatchAdjustAllHongHua:onClickClose()
- playBtnCloseEffect()
- self:removeFromParent()
- end
-
- --下一页
- function ClubPlayerMatchAdjustAllHongHua:onClickNextPage()
- playBtnEffect()
- if self.totolPage == 0 then
- return
- end
- self.curPage = self.curPage + 1
- if self.curPage>self.totolPage then
- self.curPage = self.totolPage
- end
- self:updatePlayerList()
- end
-
- --上一页
- function ClubPlayerMatchAdjustAllHongHua:onClickUpPage()
- playBtnEffect()
- if self.totolPage == 0 then
- return
- end
- self.curPage = self.curPage - 1
- if self.curPage<1 then
- self.curPage = 1
- end
- self:updatePlayerList()
- end
-
- function ClubPlayerMatchAdjustAllHongHua:onUpdatePlayerListEvent(data)
- if not data or not data.type then
- return
- end
- local mType = data.type
- if mType == ClubDefine.PlayListType.MATCH_MEMBER or mType == ClubDefine.PlayListType.MATCH_RECORD then
- local players = {}
- for k,v in pairs(self.clubInfo.playersMatch) do
- if v and v.role ~= self.clubInfo.role then
- table.insert(players,v)
- end
- end
-
- local function sortFunc(a, b)
- local aRole = tonumber(a.role)
- local bRole = tonumber(b.role)
- if aRole ~= bRole and (aRole == ClubDefine.Job.Copartner or bRole == ClubDefine.Job.Copartner
- or aRole == ClubDefine.Job.LevelOneCopartner or aRole == ClubDefine.Job.LevelTwoCopartner
- or bRole == ClubDefine.Job.LevelOneCopartner or bRole == ClubDefine.Job.LevelTwoCopartner) then
- if (aRole == ClubDefine.Job.LevelTwoCopartner and bRole == ClubDefine.Job.LevelOneCopartner) or (bRole == ClubDefine.Job.LevelTwoCopartner and aRole == ClubDefine.Job.LevelOneCopartner)then
- return aRole < bRole
- elseif aRole == ClubDefine.Job.Copartner or aRole == ClubDefine.Job.LevelOneCopartner or aRole == ClubDefine.Job.LevelTwoCopartner then
- return bRole ~= ClubDefine.Job.Manager and bRole ~= ClubDefine.Job.Creator
- else
- return aRole == ClubDefine.Job.Manager or aRole == ClubDefine.Job.Creator
- end
- end
- return aRole > bRole
- end
-
- table.sort(players,sortFunc)
- self:updatePlayerList(players)
- end
- end
-
- function ClubPlayerMatchAdjustAllHongHua:updatePlayerList(data)
- local mListView = self.ui.Items.ScrollView
- mListView:getInnerContainer():setAutoSize(true)
- mListView:removeAllChildren()
- mListView:hideAllBar()
- local players = {}
- if data then
- players = data
- --记录上一次排序后的players数组,点上一页下一页时用
- self.lastSortPlayer = players
- else
- if self.lastSortPlayer and #self.lastSortPlayer >0 then
- players = self.lastSortPlayer
- else
- for k,v in pairs(self.clubInfo.playersMatch) do
- if v and v.role ~= self.clubInfo.role then
- table.insert(players,v)
- end
- end
- end
- end
-
- self.totolPage = math.ceil(table.nums(players)/PAGE_COUNT)
-
- local startIndex = (self.curPage-1) * PAGE_COUNT + 1
- local endIndex = startIndex + PAGE_COUNT - 1
- self.curPageItems = {}
- for i=startIndex,endIndex do
- local v = players[i]
- if v then
- local isSel = self.bSelectPlayer[v.uid] or false
- item = import("luaScript.Views.Club.ClubPlayerMatchAdjustItem"):new(v,self.clubInfo.clubId,isSel,handler(self,self.onSelectCallBack))
- mListView:addChild(item.ui)
- table.insert(self.curPageItems,item)
- end
- end
-
- mListView:jumpToTopOnSizeChanged()
-
- self.ui.Items.Text_Cur_page:setString(self.curPage)
- self.ui.Items.Text_Total_page:setString("/"..self.totolPage)
- if self.totolPage == 0 then
- self.ui.Items.Text_Total_page:setString("/1")
- end
- end
-
- function ClubPlayerMatchAdjustAllHongHua:onSelectCallBack(player,isDel)
- if isDel then
- table.removeItem(self.selectPlayer,player.uid)
- self.bSelectPlayer[player.uid] = false
- else
- table.insert(self.selectPlayer,player.uid)
- self.bSelectPlayer[player.uid] = true
- end
- end
-
-
- function ClubPlayerMatchAdjustAllHongHua:initBindEvent()
- --绑定请求成员列表成功回调事件
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_PLAYER_LIST , handler(self , self.onUpdatePlayerListEvent))
- end
-
- function ClubPlayerMatchAdjustAllHongHua:onClickSelect()
- playBtnEffect()
-
- local isDel = not self.ui.Items.CheckBox_select:getSelectedState()
-
- for _,v in ipairs(self.curPageItems) do
- v:getSelectBox():setSelectedState(self.ui.Items.CheckBox_select:getSelectedState())
- end
-
- --清空数据
- self.selectPlayer = {}
- self.bSelectPlayer = {}
-
- for k,v in pairs(self.lastSortPlayer) do
- if v.role ~= self.clubInfo.role then
- self:onSelectCallBack(v,isDel)
- end
- end
- end
-
- function ClubPlayerMatchAdjustAllHongHua:onClickConfirm()
- local function callback()
- self:removeFromParent()
- end
- local view = import("luaScript.Views.Club.ClubPlayerMatchAdjustHongHua"):new(self.clubId,self.selectPlayer,callback)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view);
- end
-
- return ClubPlayerMatchAdjustAllHongHua;
|