|
- --茶馆包间管理Layout
- local ClubBaojianManager = class("ClubBaojianManager" , cc.UIView);
-
- function ClubBaojianManager:ctor(clubId)
- ClubBaojianManager.super.ctor(self)
-
- --单个茶馆数据
- self.clubId = clubId
- self.clubInfo = app.club_php.clubList[clubId]
-
- self:loadUI()
- end
-
- function ClubBaojianManager:loadUI()
- local ui = loadUI("res/ui/ui_club/ui_club_baojian_manager.ui");
- self.ui = ui;
- self:addChild(ui)
- end
-
- function ClubBaojianManager:onEnter()
- ClubBaojianManager.super.onEnter(self)
-
- self.ui.Items.Layout_item:setVisible(false);
-
- self.ui.Items.Button_add:setVisible(false);
-
- -- 关闭
- self.ui.Items.Button_close:registerClick(handler(self , self.onClose))
-
- self.ui.Items.Button_add:registerClick(handler(self , self.onClickAddBaoJian))
-
- --规则修改推送
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_CHANGE_RULE_PUSH , handler(self , self.updateBaoJian))
-
- --无数据显示
- self.ui.Items.Layout_no_data:setVisible(false)
- self:updateBaoJian()
- end
-
- function ClubBaojianManager:onClose()
- playBtnCloseEffect()
- self:removeFromParent()
- end
-
- function ClubBaojianManager:updateBaoJian()
- local baoJians = self.clubInfo.baoJians
-
- --包间个数
- local baojianNum = table.nums(baoJians)
- self.ui.Items.Text_baojian_nums:setText(baojianNum)
-
- local groupView = self.ui.Items.ScrollView
- groupView:getInnerContainer():setAutoSize(true)
- groupView:hideAllBar()
- groupView:removeAllChildren()
-
- local uiTemplate = self.ui.Items.Layout_item
- local index = 1
- for baoJianId,baojian in pairsByKeys(baoJians) do
- self:addItem(baojian,index)
- index = index+1
- end
-
- --包间小于后台下发的个数 显示添加按钮
- local role = self.clubInfo.role;
- if self.clubInfo.config and self.clubInfo.config.gameRuleLimit and baojianNum < self.clubInfo.config.gameRuleLimit and (role == 2 or role == 3) then
- -- if baojianNum < 5 and (role == 2 or role == 3) then
- self.ui.Items.Button_add:setVisible(true)
-
- -- local uiAddItem = self.ui.Items.Layout_item_add:getCopied()
- -- uiAddItem.Items = getUIItems(uiAddItem)
- -- --新增包间
- -- uiAddItem.Items.Layout_add_touch:registerClick(function ()
- -- playBtnEffect()
- -- local view = import("luaScript.Views.Club.ClubChangeRule"):new(self.clubInfo.clubId)
- -- view:setAnchorPoint(cc.p(0.5, 0.5))
- -- app:showWaitDialog(view)
- -- end)
- -- groupView:addChild(uiAddItem);
- else
- self.ui.Items.Button_add:setVisible(false)
-
- end
-
- if baojianNum>0 then
- self.ui.Items.Layout_title:setVisible(true)
- self.ui.Items.Layout_no_data:setVisible(false)
- else
- self.ui.Items.Layout_title:setVisible(false)
- self.ui.Items.Layout_no_data:setVisible(true)
- end
-
- groupView:jumpToTopOnSizeChanged()
-
- end
-
- function ClubBaojianManager:onClickAddBaoJian()
- playBtnEffect()
- local view = import("luaScript.Views.Club.ClubChangeRule"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- function ClubBaojianManager:addItem(baojian,index)
- local groupView = self.ui.Items.ScrollView
- local uiTemplate = self.ui.Items.Layout_item
- local uiItem = uiTemplate:getCopied()
- autoAdapt(uiItem)
- uiItem.Items = getUIItems(uiItem)
-
- local gameId = baojian.gameId
- local baoJianId = baojian.baoJianId
- --包间下标
- uiItem.Items.TextBMFont_idx:setText(index)
-
- --包间名
- local role = self.clubInfo.role;
- local baojianName = baojian.title
- if not baojianName or baojianName == "" then
- if role == 2 or role == 3 then
- baojianName = "设置包间名"
- if app.club_php:getCestIsOpen(self.clubInfo.clubId) then
- baojianName = "设置赛事名"
- end
- else
- baojianName = "管理员未设置名字"
- end
- end
- uiItem.Items.Text_baojian_name:setText(baojianName)
-
- -- 局数
- uiItem.Items.Text_jushu:setText(baojian.gameNum.."局")
-
- -- 玩法名
- local rules = json.decode(baojian.strGameRule);
- local gamerule = rules.gamerule
- if gamerule then
- local ruleName = getSubGameRuleName(gameId, gamerule)
- uiItem.Items.Text_wanfa_name:setText(ruleName)
- end
-
- --在线桌数
- -- if self.clubInfo.mode == 1 then
- -- uiItem.Items.Text_3:setVisible(false)
- -- else
- -- uiItem.Items.Text_3:setVisible(true)
- -- uiItem.Items.Text_online:setText(baojian.onlineRoomNum.."桌")
- -- end
-
- --(1:成员 2:管理员 3:创始人)
- if role == 2 or role == 3 then
- uiItem.Items.Button_name_set:setVisible(true)
- uiItem.Items.Button_change_rule:setVisible(true)
- uiItem.Items.Button_delete:setVisible(true)
-
- --包间名修改
- uiItem.Items.Text_baojian_name:registerClick(function ()
- playBtnEffect();
- local view = import("luaScript.Views.Club.ClubBaojianChangeName"):new(self.clubInfo.clubId, baoJianId, baojian.title)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end)
-
- --包间名修改
- uiItem.Items.Button_name_set:registerClick(function ()
- playBtnEffect()
- local view = import("luaScript.Views.Club.ClubBaojianChangeName"):new(self.clubInfo.clubId, baoJianId, baojian.title)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end)
-
-
- --修改玩法规则
- uiItem.Items.Button_change_rule:registerClick(function ()
- playBtnEffect()
- local view = import("luaScript.Views.Club.ClubChangeRule"):new(self.clubInfo.clubId, gameId, gamerule, baoJianId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end)
-
- --删除包间
- uiItem.Items.Button_delete:registerClick(function ()
- playBtnEffect()
- local content = "是否将该游戏从列表中删除?"
-
- --确认回调
- local function okCallback()
- app.club_php:requestChangeRule(self.clubInfo.clubId, baoJianId, gameId, baojian.gameNum, baojian.strGameRule, 1)
- end
-
- local view = import("luaScript.Views.Club.ClubBaojianTips"):new(content, gameId, uiItem.Items.Text_wanfa_name:getString() , baojian.gameNum, okCallback, nil)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end)
-
- --查看玩法详情
- uiItem.Items.Button_look:registerClick(function ()
- playBtnEffect()
- --local view = import("luaScript.Views.Club.ClubBaojianRuleTips"):new(gameId, baojian.gameNum, baojian.strGameRule)
- local view = import("luaScript.Views.Club.ClubBaojianRule"):new(self.clubId, baoJianId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
-
- --计算坐标
- local parentNode = uiItem.Items.Button_look
- local worldPos = parentNode:getWorldPosition()
- local viewContentSize = cc.size(425, 195)
- local x = worldPos.x - viewContentSize.width
- local y = worldPos.y - viewContentSize.height/2
- local newPos = cc.p(x, y)
- view:setPosition(newPos)
-
- app:showWaitDialog(view, 0, true)
- end)
- else
- uiItem.Items.Button_name_set:setVisible(false)
- uiItem.Items.Button_change_rule:setVisible(false)
- uiItem.Items.Button_delete:setVisible(false)
- end
- groupView:addChild(uiItem)
- end
-
- return ClubBaojianManager
|