hengyang_client/lua_probject/base_project/Game/View/Family/FamilyBanDesk.lua

157 lines
5.0 KiB
Lua

local FamilySelectNumber = import(".FamilySelectNumber")
--region LOCAL
local BanDesk = {}
local root = {}
local rootLastIndex = 0
local function HideMainView()
rootLastIndex = root.familyType.selectedIndex
root.familyType.selectedIndex = 0
end
local function ShowMainView()
root.familyType.selectedIndex = rootLastIndex or 1
end
local function DelPlayer()
end
local function AddPlayer()
end
--endregion
--[[ 禁止同桌数据
BanDesk.BanData = {
{ name = "备注1", deskList = {{name = "大哥", portrait = "https://thirdwx.qlogo.cn/mmopen/vi_32/Q3auHgzwzM5wiaLFFbHru0weDn6qaXkzW14MLJcqEMxsv2C0EuAxPH1Cf5DGZLmd4EppPeDWlksCuXtFJQC85mw/132"}, {name = "大哥2", portrait = "https://thirdwx.qlogo.cn/mmopen/vi_32/Q3auHgzwzM5wiaLFFbHru0weDn6qaXkzW14MLJcqEMxsv2C0EuAxPH1Cf5DGZLmd4EppPeDWlksCuXtFJQC85mw/132"}} },
{ name = "备注2", deskList = {{name = "大哥", portrait = "https://thirdwx.qlogo.cn/mmopen/vi_32/Q3auHgzwzM5wiaLFFbHru0weDn6qaXkzW14MLJcqEMxsv2C0EuAxPH1Cf5DGZLmd4EppPeDWlksCuXtFJQC85mw/132"}, {name = "大哥3", portrait = "https://thirdwx.qlogo.cn/mmopen/vi_32/Q3auHgzwzM5wiaLFFbHru0weDn6qaXkzW14MLJcqEMxsv2C0EuAxPH1Cf5DGZLmd4EppPeDWlksCuXtFJQC85mw/132"}} },
{ name = "备注3", deskList = {{name = "大哥", portrait = "https://thirdwx.qlogo.cn/mmopen/vi_32/Q3auHgzwzM5wiaLFFbHru0weDn6qaXkzW14MLJcqEMxsv2C0EuAxPH1Cf5DGZLmd4EppPeDWlksCuXtFJQC85mw/132"}, {name = "大哥4", portrait = "https://thirdwx.qlogo.cn/mmopen/vi_32/Q3auHgzwzM5wiaLFFbHru0weDn6qaXkzW14MLJcqEMxsv2C0EuAxPH1Cf5DGZLmd4EppPeDWlksCuXtFJQC85mw/132"}} },
}]]
function BanDesk:TryShow(r)
local view = BanDesk.New()
root = r
HideMainView()
view:Show()
end
function BanDesk:Show()
BaseWindow.Show(self)
self:Reflash()
end
function BanDesk:Close()
BaseView.Close(self)
ShowMainView()
end
function BanDesk.New()
setmetatable(BanDesk, {__index = BaseView})
local inst = setmetatable({}, {__index = BanDesk})
inst._close_destroy = true
inst._full = true
inst._animation = false
inst._full_offset = false
inst._anim_pop = 0
BaseWindow.init(inst, 'ui://Family/com_banDesk')
inst:Init()
inst._root_view:GetChild("win_mode").visible = false
return inst
end
function BanDesk:Init()
self.btn_close = self._view:GetChild("btn_close")
self.list_banItem = self._view:GetChild("list_banItem")
self.btn_close.onClick:Set(function()
self:Close()
end)
self.list_banItem.itemRenderer = function(index, obj)
local data = self.BanData[index +1]
local tex_name = obj:GetChild("tex_name")
local list_BanedPlayers = obj:GetChild("list_BanedPlayers")
local btn_del = obj:GetChild("btn_del")
tex_name.text = data.name
btn_del.onClick:Set(function()
-- 删除
end)
list_BanedPlayers.itemRenderer = function(playerIndex, playerObj, index)
local loader_icon = playerObj:GetChild("loader_icon")
local btn_delPlayer = playerObj:GetChild("btn_delPlayer")
local btn_addPlayer = playerObj:GetChild("btn_addPlayer")
local tex_name = playerObj:GetChild("tex_name")
local player = data.deskList[playerIndex + 1]
tex_name.text = player.name
ImageLoad.Load(loader_icon, player.portrait)
end
list_BanedPlayers.numItems = #data.deskList
local add_play = list_BanedPlayers:AddItemFromPool()
add_play:GetController("cStyle").selectedIndex = 1
add_play:GetChild("btn_addPlayer").onClick:Set(function()
local view = FamilySelectNumber.New()
view:Show(root._group.id, function(number)
data.deskList[#data.deskList + 1] = number.uid
local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_SetBanTable1(root._group.id, data.deskId, data.deskList, data.deskName, function() self:Reflash() end)
end)
end)
end
end
function BanDesk:Reflash()
local fgCtr = ControllerManager.GetController(NewGroupController)
local groupId = root._group.id
fgCtr:FG_GetBanTable1(groupId,function(res)
pt(res)
self.BanData = res.Data.ban_list
self.list_banItem.numItems = #self.BanData
self:GetBanTableCallback(res)
end)
end
function BanDesk:GetBanTableCallback(res)
print("BanDesk:GetBanTableCallback")
self.BanData = res.Data.ban_list
self.list_banItem.numItems = #self.BanData
-- 最后一个添加ban按钮
local addBanItem = self.list_banItem:AddItemFromPool()
local btn_addBanItem = addBanItem:GetChild("btn_addBanItem")
addBanItem:GetController("cStyle").selectedIndex = 1
btn_addBanItem.onClick:Set(function()
local fgCtr = ControllerManager.GetController(NewGroupController)
local groupId = root._group.id
local banList = {}
fgCtr:FG_SetBanTable1(groupId, -1, banList, "新建关系", function()
self:Reflash()
end)
end)
end
return BanDesk