changhong/lua_probject/base_project/Game/View/NewGroup/MngView/GroupPartnerRewardsView.lua

284 lines
12 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

-- 合伙人玩法奖励
local GroupNumberInputView = import(".GroupNumberInputView")
local GroupPartnerRewardsView = {}
local M = GroupPartnerRewardsView
function GroupPartnerRewardsView.new(group_id, partner_id, partner_lev)
setmetatable(M, {__index = BaseWindow})
local self = setmetatable({}, {__index = M})
self.class = "GroupPartnerRewardsView"
self._close_destroy = true
self._blur_view = blur_view
self.group_id = group_id
self.partner_id = partner_id
self.partner_lev = partner_lev
self.rewards_data = {}
self.showxipai = 1
self:initView()
return self
end
function M:initView(url)
BaseWindow.init(self, "ui://NewGroup/Win_PartnerRewards")
self.lst_rewards = self._view:GetChild("lst_rewards")
self.lst_rewards:SetVirtual()
self.lst_rewards.itemRenderer = function(index, obj)
self:OnRenderRewardsItem(index, obj)
end
self.fandianControl = self._view:GetController("fandian")
self:GetRewardsData()
end
-- 获取奖励设置数据
function M:GetRewardsData()
local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GetRewards(self.group_id, self.partner_id, self.partner_lev, function(res)
ViewUtil.CloseModalWait()
if self._is_destroy then
return
end
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "获取合伙人奖励失败")
else
local rewards = res.Data.rewards
self.showxipai = res.Data.showxipai == true and 1 or 0
--pt(res)
if rewards and #rewards == 0 then printlog("服务器未设置合伙人奖励===>>>") return end
--printlog("获取奖励===>>>",res.Data.rewards)
--pt(res.Data.rewards)
-- local rdata = self.rewards_data
-- for i = 1, #rewards do
-- rdata[#rdata + 1] = rewards[i]
-- end
for i=1,#rewards do
self.rewards_data[i] = rewards[i]
end
self.lst_rewards.numItems = #self.rewards_data
self.fandianControl.selectedIndex = self.showxipai
end
end)
end
-- 显示奖励
local function __showRewardsValue(rtype, cur_value, max_value, mng, value_type)
local str = ""
local tem = value_type == 1 and "%" or ""
if not mng then
if value_type == 2 then
str = string.format("%s%s/%s%s", d2ad(cur_value), tem, d2ad(max_value), tem)
else
str = string.format("%s%s/%s%s", cur_value, tem, max_value, tem)
end
else
if value_type == 2 then
str = string.format("%s%s", d2ad(cur_value), tem)
else
str = string.format("%s%s", cur_value, tem)
end
end
return str
end
-- 填充奖励设置对象
function M:OnRenderRewardsItem(index, obj)
local data = self.rewards_data[index + 1]
local group = DataManager.groups:get(self.group_id)
obj:GetController("fandian").selectedIndex = self.showxipai
--printlog("aaaaaaaaaaaaaaaaaaaaa ",__showRewardsValue(data.xipai_rewardType, data.xipai_cur_value, data.xipai_max_value, group.lev < 3, data.xipai_rewardValueType or 1))
obj:GetChild("tex_xipai").text = __showRewardsValue(data.xipai_rewardType, data.xipai_cur_value, data.xipai_max_value, group.lev < 3, data.xipai_rewardValueType or 1)
obj:GetChild("tex_rewards").text = __showRewardsValue(data.rewardType, data.cur_value, data.max_value, group.lev < 3, data.rewardValueType or 1)
obj:GetChild("tex_anchou").text = __showRewardsValue(data.anchou_rewardType, data.anchou_cur_value, data.anchou_max_value, group.lev < 3, data.anchou_rewardValueType or 1)
local play_name = group:getPlayName(data.pid)
obj:GetChild("tex_name").text = play_name
if data.rewardType == 3 or self.partner_id == DataManager.SelfUser.account_id then
obj:GetController("promote").selectedIndex = 1
else
obj:GetController("promote").selectedIndex = 0
end
local input_type = data.rewardValueType == 1 and 0 or 3
obj:GetChild("btn_set").onClick:Set(function()
local gfiv = GroupNumberInputView.new(self._root_view,function(num)
local tem = num
if data.rewardValueType == 2 then
tem = ad2d(tem)
end
if tem > data.max_value then
ViewUtil.ErrorTip(nil, "输入值超过上限")
return
-- elseif tem < data.cur_value then
-- ViewUtil.ErrorTip(nil, "不能下调奖励")
-- return
end
local fgCtr = ControllerManager.GetController(NewGroupController)
ViewUtil.ShowModalWait()
fgCtr:FG_SetRewards(self.group_id, data.pid, self.partner_lev, self.partner_id, false, tem, 0,function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "设置合伙人奖励失败")
else
data.cur_value = tem
obj:GetChild("tex_rewards").text = __showRewardsValue(data.rewardType, tem, data.max_value, group.lev < 3, data.rewardValueType or 1)
end
end)
end, input_type)
gfiv:Show()
end)
obj:GetChild("btn_set_all").onClick:Set(function()
local msg_win = MsgWindow.new(nil, string.format("是否设定所有玩法奖励为%s%%", data.cur_value), MsgWindow.MsgMode.OkAndCancel,nil,true)
msg_win.onOk:Add(function( ... )
local single = msg_win.btnCheck.selected and 1 or 0
local fgCtr = ControllerManager.GetController(NewGroupController)
ViewUtil.ShowModalWait()
fgCtr:FG_SetRewards(self.group_id, data.pid, self.partner_lev, self.partner_id, true, data.cur_value,single ,function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "设置奖励失败")
else
ViewUtil.ShowBannerOnScreenCenter("设置奖励成功")
-- for i = 1, #self.rewards_data do
-- if self.rewards_data[i].rewardValueType == data.rewardValueType then
-- self.rewards_data[i].cur_value = data.cur_value
-- end
-- end
-- self.lst_rewards.numItems = #self.rewards_data
self:GetRewardsData()
end
end)
end)
msg_win:Show()
end)
--xipai_reward
local input_type1 = data.xipai_rewardValueType == 1 and 0 or 3
obj:GetChild("btn_set1").onClick:Set(function()
local gfiv = GroupNumberInputView.new(self._root_view,function(num)
local tem = num
if data.xipai_rewardValueType == 2 then
tem = ad2d(tem)
end
if tem > data.xipai_max_value then
ViewUtil.ErrorTip(nil, "输入值超过上限")
return
-- elseif tem < data.cur_value then
-- ViewUtil.ErrorTip(nil, "不能下调奖励")
-- return
end
local fgCtr = ControllerManager.GetController(NewGroupController)
ViewUtil.ShowModalWait()
fgCtr:FG_SetXIPAI(self.group_id, data.pid, self.partner_lev, self.partner_id, false, tem, 0,function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "设置洗牌奖励失败")
else
data.xipai_cur_value = tem
obj:GetChild("tex_xipai").text = __showRewardsValue(data.xipai_rewardType, tem, data.xipai_max_value, group.lev < 3, data.xipai_rewardValueType or 1)
end
end)
end, input_type1)
gfiv:Show()
end)
obj:GetChild("btn_set_all1").onClick:Set(function()
local msg_win = MsgWindow.new(nil, string.format("是否设定所有洗牌奖励为%s%%", data.xipai_cur_value), MsgWindow.MsgMode.OkAndCancel)
msg_win.onOk:Add(function( ... )
local single = 0--msg_win.btnCheck.selected and 1 or 0
local fgCtr = ControllerManager.GetController(NewGroupController)
ViewUtil.ShowModalWait()
fgCtr:FG_SetXIPAI(self.group_id, data.pid, self.partner_lev, self.partner_id, true, data.xipai_cur_value,single,function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "设置洗牌失败")
else
ViewUtil.ShowBannerOnScreenCenter("设置洗牌成功")
-- printlog("ccccccccccccccccc11111111111111111111111")
-- pt(res)
-- for i = 1, #self.rewards_data do
-- if self.rewards_data[i].xipai_rewardValueType == data.xipai_rewardValueType then
-- self.rewards_data[i].xipai_cur_value = data.xipai_cur_value
-- end
-- end
-- self.lst_rewards.numItems = #self.rewards_data
self:GetRewardsData()
end
end)
end)
msg_win:Show()
end)
--xipai_reward
local input_type2 = data.anchou_rewardValueType == 1 and 0 or 3
obj:GetChild("btn_set2").onClick:Set(function()
local gfiv = GroupNumberInputView.new(self._root_view,function(num)
local tem = num
if data.anchou_rewardValueType == 2 then
tem = ad2d(tem)
end
if tem > data.xipai_max_value then
ViewUtil.ErrorTip(nil, "输入值超过上限")
return
-- elseif tem < data.cur_value then
-- ViewUtil.ErrorTip(nil, "不能下调奖励")
-- return
end
printlog("jefe btn_set2")
local fgCtr = ControllerManager.GetController(NewGroupController)
ViewUtil.ShowModalWait()
fgCtr:FG_SetANCHOU(self.group_id, data.pid, self.partner_lev, self.partner_id, false, tem, 0,function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "设置管理奖励失败")
else
data.anchou_cur_value = tem
obj:GetChild("tex_anchou").text = __showRewardsValue(data.anchou_rewardType, tem, data.anchou_max_value, group.lev < 3, data.anchou_rewardValueType or 1)
end
end)
end, input_type2)
gfiv:Show()
end)
obj:GetChild("btn_set_all2").onClick:Set(function()
local msg_win = MsgWindow.new(nil, string.format("是否设定所有管理奖励为%s%%", data.anchou_cur_value), MsgWindow.MsgMode.OkAndCancel)
msg_win.onOk:Add(function( ... )
local single = 0--msg_win.btnCheck.selected and 1 or 0
local fgCtr = ControllerManager.GetController(NewGroupController)
ViewUtil.ShowModalWait()
fgCtr:FG_SetANCHOU(self.group_id, data.pid, self.partner_lev, self.partner_id, true, data.anchou_cur_value,single,function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "设置管理失败")
else
ViewUtil.ShowBannerOnScreenCenter("设置管理成功")
-- printlog("ccccccccccccccccc11111111111111111111111")
-- pt(res)
-- for i = 1, #self.rewards_data do
-- if self.rewards_data[i].xipai_rewardValueType == data.xipai_rewardValueType then
-- self.rewards_data[i].xipai_cur_value = data.anchou_cur_value
-- end
-- end
-- self.lst_rewards.numItems = #self.rewards_data
self:GetRewardsData()
end
end)
end)
msg_win:Show()
end)
end
return M