统计结构性调整

master
罗家炜 2025-09-27 17:17:37 +08:00
parent 3b8ba6a93e
commit bf3ba1c5ad
6 changed files with 424 additions and 192 deletions

View File

@ -2122,9 +2122,9 @@ function M:__refreshManager()
local btn_stat = self._view:GetChild('btn_stat') local btn_stat = self._view:GetChild('btn_stat')
btn_stat.onClick:Set( btn_stat.onClick:Set(
function() function()
if not self.mng_view2 then -- if not self.mng_view2 then
self.mng_view2 = GroupManagerView.new(self._root_view, self.curGroup.id, 2) self.mng_view2 = GroupManagerView.new(self._root_view, self.curGroup.id, 2)
end -- end
-- self:SetRoomListVisible(false) -- self:SetRoomListVisible(false)
self.mng_view2:Show() self.mng_view2:Show()
end end

View File

@ -11,7 +11,7 @@ function GroupManagerView.new(blur_view, gid, btn_type, callback)
setmetatable(M, { __index = BaseWindow }) setmetatable(M, { __index = BaseWindow })
local self = setmetatable({}, { __index = M }) local self = setmetatable({}, { __index = M })
self.class = "GroupManagerView" self.class = "GroupManagerView"
-- self._close_destroy = true self._close_destroy = true
self._put_map = false self._put_map = false
self._new_hide = false self._new_hide = false
self._queue = false self._queue = false

View File

@ -7,7 +7,7 @@ local GroupMemberOperateView = import('.GroupMemberOperateView')
local GroupAddMemberInfoView = import('.GroupAddMemberInfoView') local GroupAddMemberInfoView = import('.GroupAddMemberInfoView')
local GroupStatMember = import('.GroupStatMember') local GroupStatMember = import('.GroupStatMember')
local GroupMngFagPackView = import('../GroupMngFagPackView') local GroupMngFagPackView = import('../GroupMngFagPackView')
local GroupMngPartnerStatViewAlone = import(".GroupMngPartnerStatViewAlone") local GroupMngPartnerStatViewAlone = import(".GroupMngPartnerStatViewAlone2")
local MngPermission = import('.MngPermission') local MngPermission = import('.MngPermission')

View File

@ -26,6 +26,9 @@ function M:initData()
self.begin_time = today self.begin_time = today
self.end_time = today + 86400 self.end_time = today + 86400
self._data_record = {} self._data_record = {}
self._partnerNumList = {}
self._memberNumList = {}
self._getAllPartnerList = {}
self._selectedLev = 0 self._selectedLev = 0
self:GetRecordData(0) self:GetRecordData(0)
--self:ShowPeopleNum() --self:ShowPeopleNum()
@ -36,14 +39,12 @@ function M:InitView()
local group = DataManager.groups:get(self.group_id) local group = DataManager.groups:get(self.group_id)
self.lst_record = self._view:GetChild("lst_record") self:InitListRecord()
self.time_panel = TimeSettingPanel.new(self._view, self._view:GetChild("btn_date1"), self._view:GetChild("btn_date2"), self.time_panel = TimeSettingPanel.new(self._view, self._view:GetChild("btn_date1"), self._view:GetChild("btn_date2"),
-308, 0, function() -308, 0, function()
self.begin_time, self.end_time = self.time_panel:GetDate() self.begin_time, self.end_time = self.time_panel:GetDate()
self.lst_record:RemoveChildren(0, -1, true) self:InitListRecord()
self.lst_record = nil
self.lst_record = self._view:GetChild("lst_record")
self.record_data = {} self.record_data = {}
if self._view:GetController('search').selectedIndex == 1 then if self._view:GetController('search').selectedIndex == 1 then
ViewUtil.ShowModalWait(nil) ViewUtil.ShowModalWait(nil)
@ -74,14 +75,17 @@ function M:InitView()
if res.ReturnCode ~= 0 then if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, '找不到成员') ViewUtil.ErrorTip(res.ReturnCode, '找不到成员')
else else
self.item_result = self._view:GetChild('lst_member_find') self:ChangedClear(0)
self.item_result:RemoveChildren() self:InitListRecordFind()
self:NewRecordTableFind(res.Data.members[1]) self:InsertTableRecord(1, res.Data.members[1])
self._selectedLev = 1
self:GetAllRecordData(0, { lev = 1, index = 1 })
end end
end end
) )
else else
self:GetRecordData(0) self:ChangedClear(0)
self:GetRecordData()
end end
end, { showDay = group.lev < 3 and 30 or 7 }) end, { showDay = group.lev < 3 and 30 or 7 })
self.begin_time, self.end_time = self.time_panel:GetDate() self.begin_time, self.end_time = self.time_panel:GetDate()
@ -100,11 +104,10 @@ function M:InitView()
self.begin_time = today - 86400 * ctr_page.selectedIndex self.begin_time = today - 86400 * ctr_page.selectedIndex
self.end_time = today - 86400 * (ctr_page.selectedIndex - 1) self.end_time = today - 86400 * (ctr_page.selectedIndex - 1)
end end
self:GetRecordData(0) self:GetRecordData()
end) end)
-- 搜索玩家 -- 搜索玩家
local ctr_search = self._view:GetController('search')
self._view:GetChild('btn_search').onClick:Set( self._view:GetChild('btn_search').onClick:Set(
function() function()
--printlog("aaaaaaaaaa1111111111111111111111111111111111111111111111") --printlog("aaaaaaaaaa1111111111111111111111111111111111111111111111")
@ -136,10 +139,12 @@ function M:InitView()
if res.ReturnCode ~= 0 then if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, '找不到成员') ViewUtil.ErrorTip(res.ReturnCode, '找不到成员')
else else
ctr_search.selectedIndex = 1 self.ctr_search.selectedIndex = 1
self.item_result = self._view:GetChild('lst_member_find') self:ChangedClear(0)
self.item_result:RemoveChildren() self:InitListRecordFind()
self:NewRecordTableFind(res.Data.members[1]) self:InsertTableRecord(1, res.Data.members[1])
self._selectedLev = 1
self:GetAllRecordData(0, { lev = 1, index = 1 })
end end
end end
) )
@ -150,15 +155,13 @@ function M:InitView()
btn_back.onClick:Set( btn_back.onClick:Set(
function() function()
self._view:GetChild('tex_id').text = "" self._view:GetChild('tex_id').text = ""
if #self.record_total_data == 0 then self:ChangedClear(0)
self:GetRecordData(0) self:GetRecordData()
end
end end
) )
end end
function M:InsertTableRecord(lev, data) function M:InsertTableRecord(lev, data)
self._data_record.count = (self._data_record.count or 0) + 1
if self._data_record[lev] then if self._data_record[lev] then
table.insert(self._data_record[lev], data) table.insert(self._data_record[lev], data)
else else
@ -167,14 +170,259 @@ function M:InsertTableRecord(lev, data)
end end
end end
function M:InitListRecord() function M:GetDataRecordLevList(data)
if self.lst_record then local count = 0
self.lst_record = self._view:GetChild("lst_record") self._data_record.levList = {}
self.lst_record.itemRenderer = function(index, obj) for i = 1, #self._data_record do
count = count + #self._data_record[i]
table.insert(self._data_record.levList, count)
end
self._data_record.count = count
if self.ctr_search.selectedIndex == 1 then
if self.item_result.numItems == self._data_record.count then
self.item_result:RefreshVirtualList()
else
self.item_result.numItems = self._data_record.count
end
local orderIndex = 0
if data and data.orderIndex then
orderIndex = data.orderIndex
end
self.item_result:ScrollToView(self._selectedLev == 0 and 0 or
self._data_record.levList[self._selectedLev] - 1 + orderIndex)
else
if self.lst_record.numItems == self._data_record.count then
self.lst_record:RefreshVirtualList()
else
self.lst_record.numItems = self._data_record.count
end
local orderIndex = 0
if data and data.orderIndex then
orderIndex = data.orderIndex
end
self.lst_record:ScrollToView(self._selectedLev == 0 and 0 or
self._data_record.levList[self._selectedLev] - 1 + orderIndex)
end
end
function M:InitListRecord()
if not self.lst_record then
self.lst_record = self._view:GetChild("lst_record")
self.lst_record:SetVirtual()
self.lst_record.itemRenderer = function(index, obj)
local tempLev = 0
for i = 1, #self._data_record.levList do
if index < self._data_record.levList[i] then
tempLev = i
break
end
end
printlog("lingmeng InitListRecord", tempLev)
local tempIndex = index + 1 - (tempLev == 1 and 0 or self._data_record.levList[tempLev - 1])
local dataInfo = self._data_record[tempLev][tempIndex]
obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(dataInfo.nick)
obj:GetChild("tex_id").text = "ID:" .. dataInfo.uid
local tex_total_score = obj:GetChild("tex_total_score")
local ctr_show_total = obj:GetController("show_total")
if dataInfo.hpall then
tex_total_score.text = d2ad(dataInfo.hpall.hp)
ctr_show_total.selectedIndex = 1
else
ctr_show_total.selectedIndex = 0
end
obj:GetChild("tex_round_valid").text = d2ad((dataInfo.reward_tongji or dataInfo.reward_hp) + dataInfo
.total_win) --d2ad(data.reward_hp) --data.valid_round / 100
obj:GetChild("tex_round_total").text = dataInfo.total_round
obj:GetChild("tex_total").text = d2ad(dataInfo.total_win)
obj:GetChild("tex_round_youxiao").text = dataInfo.valid_round / 100
pt("lingmeng log1", obj:GetChild('tex_reward').text)
pt("lingmeng log2", dataInfo)
obj:GetChild('tex_reward').text = d2ad(dataInfo.reward_tongji or dataInfo.reward_hp)
obj:GetChild("btn_more").visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetController("more").onChanged:Set(function() end)
if tempLev <= self._selectedLev and tempIndex == #self._data_record[tempLev] then
obj:GetController("more").selectedIndex = 1
else
obj:GetController("more").selectedIndex = 0
end
obj:GetController("more").onChanged:Set(function(context)
self:MoreChanged(context, { lev = tempLev, index = tempIndex })
end)
local btn_check_members = obj:GetChild("btn_check_members")
btn_check_members.visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
btn_check_members.onClick:Set(function()
ViewUtil.ShowModalWait(self._root_view)
local fgCtr = ControllerManager.GetController(NewGroupController)
if dataInfo.uid == DataManager.SelfUser.account_id then
fgCtr:FG_GetMembersCount(self.group_id, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
tex_total_score.text = d2ad(res.Data.hp_num1 + res.Data.otherHp)
ctr_show_total.selectedIndex = 1
else
ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值")
end
end)
else
fgCtr:FG_GetTotalHp(self.group_id, dataInfo.uid, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
local hp = d2ad(res.Data.hp)
tex_total_score.text = hp
dataInfo._total_hp = hp
ctr_show_total.selectedIndex = 1
end
end)
end
end)
obj:GetChild('btn_super').visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetChild('btn_super').onClick:Set(function()
self.record_data = {}
if tempLev == 1 and not dataInfo.partnerLev and #self._data_record >= 2 then
ViewUtil.ShowModalWait("正在获取成员中")
self:GetNumberRecordForLev1(0, { lev = tempLev, index = tempIndex })
ViewUtil.CloseModalWait()
else
self:GetNumberRecord(0, { lev = tempLev, index = tempIndex })
end
end)
end end
self.lst_record.scrollPane.onPullUpRelease:Set(function() self.lst_record.scrollPane.onPullUpRelease:Set(function()
if self._selectedLev == 1 then
if self._getAllPartnerList[self._selectedLev + 1] then
local dataInfo = self._data_record[1][1]
if not dataInfo.partnerLev and #self._data_record >= 2 then
ViewUtil.ShowModalWait("正在获取成员中")
self:GetNumberRecordForLev1(self._memberNumList[2] or 0,
{ lev = 1, index = 1 })
ViewUtil.CloseModalWait()
else
self:GetNumberRecord(self._memberNumList[2] or 0, { lev = 1, index = 1 })
end
else
self:LevGetRecordData(self._partnerNumList[2], self._data_record[1][1])
end
else
if self._getAllPartnerList[self._selectedLev + 1] then
self:GetNumberRecord(self._memberNumList[self._selectedLev + 1] or 0,
{ lev = self._selectedLev, index = #self._data_record[self._selectedLev] })
else
self:GetAllRecordData(self._partnerNumList[self._selectedLev + 1] or 0,
{ lev = self._selectedLev, index = #self._data_record[self._selectedLev] })
end
end
end)
end
end
function M:InitListRecordFind()
if not self.item_result then
self.item_result = self._view:GetChild("lst_member_find")
self.item_result:SetVirtual()
self.item_result.itemRenderer = function(index, obj)
local tempLev = 0
for i = 1, #self._data_record.levList do
if index < self._data_record.levList[i] then
tempLev = i
break
end
end
printlog("lingmeng InitListRecord", tempLev)
local tempIndex = index + 1 - (tempLev == 1 and 0 or self._data_record.levList[tempLev - 1])
local dataInfo = self._data_record[tempLev][tempIndex]
obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(dataInfo.nick)
obj:GetChild("tex_id").text = "ID:" .. dataInfo.uid
local tex_total_score = obj:GetChild("tex_total_score")
local ctr_show_total = obj:GetController("show_total")
if dataInfo.hpall then
tex_total_score.text = d2ad(dataInfo.hpall.hp)
ctr_show_total.selectedIndex = 1
else
ctr_show_total.selectedIndex = 0
end
obj:GetChild("tex_round_valid").text = d2ad((dataInfo.reward_tongji or dataInfo.reward_hp) + dataInfo
.total_win) --d2ad(data.reward_hp) --data.valid_round / 100
obj:GetChild("tex_round_total").text = dataInfo.total_round
obj:GetChild("tex_total").text = d2ad(dataInfo.total_win)
obj:GetChild("tex_round_youxiao").text = dataInfo.valid_round / 100
obj:GetChild('tex_reward').text = d2ad(dataInfo.reward_tongji or dataInfo.reward_hp)
obj:GetChild("btn_more").visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetController("more").onChanged:Set(function() end)
if tempLev <= self._selectedLev and tempIndex == #self._data_record[tempLev] then
obj:GetController("more").selectedIndex = 1
else
obj:GetController("more").selectedIndex = 0
end
obj:GetController("more").onChanged:Set(function(context)
self:MoreChanged(context, { lev = tempLev, index = tempIndex })
end)
local btn_check_members = obj:GetChild("btn_check_members")
btn_check_members.visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
btn_check_members.onClick:Set(function()
ViewUtil.ShowModalWait(self._root_view)
local fgCtr = ControllerManager.GetController(NewGroupController)
if dataInfo.uid == DataManager.SelfUser.account_id then
fgCtr:FG_GetMembersCount(self.group_id, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
tex_total_score.text = d2ad(res.Data.hp_num1 + res.Data.otherHp)
ctr_show_total.selectedIndex = 1
else
ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值")
end
end)
else
fgCtr:FG_GetTotalHp(self.group_id, dataInfo.uid, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
local hp = d2ad(res.Data.hp)
tex_total_score.text = hp
dataInfo._total_hp = hp
ctr_show_total.selectedIndex = 1
end
end)
end
end)
obj:GetChild('btn_super').visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetChild('btn_super').onClick:Set(function()
self.record_data = {}
if tempLev == 1 and not dataInfo.partnerLev and #self._data_record >= 2 then
ViewUtil.ShowModalWait("正在获取成员中")
self:GetNumberRecordForLev1(0, { lev = tempLev, index = tempIndex })
ViewUtil.CloseModalWait()
else
self:GetNumberRecord(0, { lev = tempLev, index = tempIndex })
end
end)
end
self.item_result.scrollPane.onPullUpRelease:Set(function()
if self._selectedLev == 1 then
if self._getAllPartnerList[self._selectedLev + 1] then
local dataInfo = self._data_record[1][1]
if not dataInfo.partnerLev and #self._data_record >= 2 then
ViewUtil.ShowModalWait("正在获取成员中")
self:GetNumberRecordForLev1(self._memberNumList[2] or 0,
{ lev = 1, index = 1 })
ViewUtil.CloseModalWait()
else
self:GetNumberRecord(self._memberNumList[2] or 0, { lev = 1, index = 1 })
end
else
self:LevGetRecordData(self._partnerNumList[2], self._data_record[1][1])
end
else
if self._getAllPartnerList[self._selectedLev + 1] then
self:GetNumberRecord(self._memberNumList[self._selectedLev + 1] or 0,
{ lev = self._selectedLev, index = #self._data_record[self._selectedLev] })
else
self:GetAllRecordData(self._partnerNumList[self._selectedLev + 1] or 0,
{ lev = self._selectedLev, index = #self._data_record[self._selectedLev] })
end
end
end) end)
end end
end end
@ -186,9 +434,7 @@ function M:GetRecordData()
if self.begin_time ~= nil and self.end_time ~= nil then if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0 time_type = 0
end end
if not self.lst_record then self:InitListRecord()
self.lst_record = self._view:GetChild("lst_record")
end
local fgCtr = ControllerManager.GetController(NewGroupController) local fgCtr = ControllerManager.GetController(NewGroupController)
if group.lev == 1 then if group.lev == 1 then
ViewUtil.ShowModalWait("获取盟主数据中") ViewUtil.ShowModalWait("获取盟主数据中")
@ -210,24 +456,23 @@ function M:GetFristData(fgCtr, index, time_type)
ViewUtil.CloseModalWait() ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then if res.ReturnCode == 0 then
if not self.lst_record then self:InitListRecord()
self.lst_record = self._view:GetChild("lst_record")
end
local members = res.Data.members local members = res.Data.members
if members and #members and #self.record_data == 0 then if members and #members and #self.record_data == 0 then
local mytable = {}
local othertable = {}
for i = 1, #members do for i = 1, #members do
if members[i].uid == DataManager.SelfUser.account_id then if members[i].uid == DataManager.SelfUser.account_id then
self.record_data[#self.record_data + 1] = members[i] self.record_data[#self.record_data + 1] = members[i]
table.insert(mytable, members[i]) self:InsertTableRecord(1, members[i])
else else
table.insert(othertable, members[i]) self:InsertTableRecord(2, members[i])
end end
end end
self._data_record[1] = mytable self._getAllPartnerList[1] = true
self._data_record[2] = othertable self._partnerNumList[1] = 1
self._partnerNumList[2] = #members
self._selectedLev = 1
self:GetDataRecordLevList()
else else
if index == 0 and (not members or #members == 0) then if index == 0 and (not members or #members == 0) then
ViewUtil.ErrorTip(nil, "你不是合伙人") ViewUtil.ErrorTip(nil, "你不是合伙人")
@ -259,19 +504,24 @@ function M:GetPropLog(members, index, time_type)
self.groupumberTemp.hpall = {} self.groupumberTemp.hpall = {}
self.groupumberTemp.hpall.hp = res.Data.hp_num1 + res.Data.otherHp self.groupumberTemp.hpall.hp = res.Data.hp_num1 + res.Data.otherHp
self.record_data[1] = self.groupumberTemp self.record_data[1] = self.groupumberTemp
self._data_record[1] = self.groupumberTemp self:InsertTableRecord(1, self.groupumberTemp)
fgCtr:FG_GetPartnerStat(self.group_id, index * 67, 67, time_type, self.begin_time, self.end_time, fgCtr:FG_GetPartnerStat(self.group_id, index * 67, 67, time_type, self.begin_time, self.end_time,
function(res) function(res)
ViewUtil.CloseModalWait() ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then if res.ReturnCode == 0 then
if not self.lst_record then self:InitListRecord()
self.lst_record = self._view:GetChild("lst_record")
end
local members = res.Data.members local members = res.Data.members
if members and #members and #self.record_data == 0 then if members and #members then
self._data_record[2] = members for i = 1, #members do
self:InsertTableRecord(2, members[i])
end
self._getAllPartnerList[1] = true
self._partnerNumList[1] = 1
self._partnerNumList[2] = #members
self._selectedLev = 1
self:GetDataRecordLevList()
else else
if index == 0 and (not members or #members == 0) then if index == 0 and (not members or #members == 0) then
ViewUtil.ErrorTip(nil, "你不是合伙人") ViewUtil.ErrorTip(nil, "你不是合伙人")
@ -402,121 +652,42 @@ function M:OnRenderRecordItem(index, obj)
self:FillRecordItem(data, obj) self:FillRecordItem(data, obj)
end end
function M:OnRenderRecordItemNew(obj, mainRecord, root_id) function M:MoreChanged(context, data)
obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(mainRecord.nick)
obj:GetChild("tex_id").text = "ID:" .. mainRecord.uid
local tex_total_score = obj:GetChild("tex_total_score")
local ctr_show_total = obj:GetController("show_total")
if mainRecord.hpall then
tex_total_score.text = d2ad(mainRecord.hpall.hp)
ctr_show_total.selectedIndex = 1
else
ctr_show_total.selectedIndex = 0
end
obj:GetChild("tex_round_valid").text = d2ad((mainRecord.reward_tongji or mainRecord.reward_hp) + mainRecord
.total_win) --d2ad(data.reward_hp) --data.valid_round / 100
obj:GetChild("tex_round_total").text = mainRecord.total_round
obj:GetChild("tex_total").text = d2ad(mainRecord.total_win)
obj:GetChild("tex_round_youxiao").text = mainRecord.valid_round / 100
obj:GetChild('tex_reward').text = d2ad(mainRecord.reward_tongji or mainRecord.reward_hp)
obj:GetChild("btn_more").visible = not mainRecord.partnerLev or mainRecord.partnerLev > 0
obj:GetController("more").onChanged:Set(function() end)
obj:GetController("more").selectedIndex = 0
obj:GetController("more").onChanged:Set(function(context)
self:MoreChanged(context, mainRecord.uid, obj)
end)
local btn_check_members = obj:GetChild("btn_check_members")
btn_check_members.visible = not mainRecord.partnerLev or mainRecord.partnerLev > 0
btn_check_members.onClick:Set(function()
ViewUtil.ShowModalWait(self._root_view)
local fgCtr = ControllerManager.GetController(NewGroupController)
if mainRecord.uid == DataManager.SelfUser.account_id then
fgCtr:FG_GetMembersCount(self.group_id, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
tex_total_score.text = d2ad(res.Data.hp_num1 + res.Data.otherHp)
ctr_show_total.selectedIndex = 1
else
ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值")
end
end)
else
fgCtr:FG_GetTotalHp(self.group_id, mainRecord.uid, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
local hp = d2ad(res.Data.hp)
tex_total_score.text = hp
mainRecord._total_hp = hp
-- mainRecord.total = res.Data.total_member - 1
-- obj:GetChild("tex_name").text = data.nick .. "(" .. data.total .. ")"
ctr_show_total.selectedIndex = 1
end
end)
end
end)
obj:GetChild('btn_super').visible = not mainRecord.partnerLev or mainRecord.partnerLev > 0
obj:GetChild('btn_super').onClick:Set(function()
self.record_data = {}
if not root_id and not mainRecord.partnerLev then
ViewUtil.ShowModalWait("正在获取成员中")
self:RecursionGetNumberRecordForLev1(0, mainRecord.uid, {})
ViewUtil.CloseModalWait()
else
self:RecursionGetNumberRecord(mainRecord.uid, root_id or mainRecord.uid, 0)
end
end)
end
function M:MoreChanged(context, id, obj)
print("lingmeng MoreChanged", context.sender.selectedIndex) print("lingmeng MoreChanged", context.sender.selectedIndex)
local fgCtr = ControllerManager.GetController(NewGroupController)
local time_type = self._view:GetController("type").selectedIndex
if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0
end
local show_total_table = self.ctr_search.selectedIndex == 0 and self.record_total_data or
self.record_total_data_Find
self.lastY = self.lst_record.scrollPane.posY
if context.sender.selectedIndex == 1 then if context.sender.selectedIndex == 1 then
self.record_data = {} self.record_data = {}
local myInfo = show_total_table[id] local myInfo = self._data_record[data.lev][data.index]
pt(myInfo, id, self.group_id)
if myInfo then if myInfo then
self:ChangedClear(data.lev)
ViewUtil:ShowModalWait() ViewUtil:ShowModalWait()
if myInfo.lev == 1 or not myInfo.father then if data.lev == 1 then
self:RecursionGetRecordData(0, 0, id) self._selectedLev = 1
self:LevGetRecordData(0, myInfo)
else else
-- if myInfo.father == nil then self._selectedLev = data.lev
-- fgCtr:FG_GetPartnerStat(self.group_id, 0, 6, time_type, self.begin_time, self.end_time, function(res) self:GetAllRecordData(0, data)
-- ViewUtil.CloseModalWait()
-- if res.ReturnCode == 0 then
-- local members = res.Data.members
-- for i = 1, #members do
-- self.record_data[#self.record_data + 1] = members[i]
-- end
-- self:RecursionGetRecordData(6, 1, id)
-- end
-- end)
-- else
show_total_table[myInfo.father].list:SetChildIndex(obj, show_total_table[myInfo.father].childCount - 1)
self:RecursionGetAllRecordData(0, id, myInfo.father)
-- end
end end
else else
ViewUtil.ErrorTip(nil, "统计页面失效,请重新打开") ViewUtil.ErrorTip(nil, "统计页面失效,请重新打开")
end end
else else
local info = show_total_table[id] self:ChangedClear(data.lev)
info.list:RemoveChildrenToPool() self._selectedLev = data.lev - 1
self:RecursionChangeHeight(id, -info.childCount) self:GetDataRecordLevList()
end end
end end
function M:RecursionGetNumberRecordForLev1(index, id, tempTable) function M:ChangedClear(lev)
for i = lev + 1, #self._data_record do
self._data_record[i] = nil
self._partnerNumList[i] = nil
self._getAllPartnerList[i] = nil
self._memberNumList[i] = nil
end
end
function M:GetNumberRecordForLev1(index, data)
local time_type = self._view:GetController("type").selectedIndex local time_type = self._view:GetController("type").selectedIndex
if self.begin_time ~= nil and self.end_time ~= nil then if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0 time_type = 0
@ -525,7 +696,7 @@ function M:RecursionGetNumberRecordForLev1(index, id, tempTable)
local fgCtr = ControllerManager.GetController(NewGroupController) local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GroupMembers12( fgCtr:FG_GroupMembers12(
self.group_id, self.group_id,
index * 67, index,
67, 67,
1, 1,
2, 2,
@ -536,22 +707,25 @@ function M:RecursionGetNumberRecordForLev1(index, id, tempTable)
local numbers = res.Data.members local numbers = res.Data.members
if #numbers == 0 then if #numbers == 0 then
local one = {} ViewUtil.ErrorTip(-1, "已获取全部成员")
if #tempTable > 0 then
one = table.remove(tempTable)
end
if one ~= nil then
self:RecursionGetNumberRecordByLev1(tempTable, one.uid, id)
else else
ViewUtil.ShowModalWait("没有下级成员") self:ChangedClear(3)
local lastIndex = 0
if self._data_record[2] then
lastIndex = #self._data_record[2]
end end
else
for i = 1, #numbers do for i = 1, #numbers do
if numbers[i].lev ~= 1 and numbers[i].partnerLev == 0 then if numbers[i].lev ~= 1 and numbers[i].partnerLev == 0 then
table.insert(tempTable, numbers[i]) self:InsertTableRecord(2, numbers[i])
end end
end end
self:RecursionGetNumberRecordForLev1(index + 1, id, tempTable) if not self._memberNumList[data.lev + 1] or self._memberNumList[data.lev + 1] == 0 then
self._memberNumList[data.lev + 1] = #numbers
else
self._memberNumList[data.lev + 1] = self._memberNumList[data.lev + 1] + #numbers
end
self._selectedLev = 1
self:GetDataRecordLevList({ orderIndex = lastIndex })
end end
end end
end end
@ -584,98 +758,156 @@ function M:RecursionGetNumberRecordByLev1(tempTable, id, root_id)
end) end)
end end
function M:RecursionGetNumberRecord(id, root_id, index) function M:GetNumberRecord(index, data)
ViewUtil.ShowModalWait("正在获取成员中") ViewUtil.ShowModalWait("正在获取成员中")
local time_type = self._view:GetController("type").selectedIndex local time_type = self._view:GetController("type").selectedIndex
if self.begin_time ~= nil and self.end_time ~= nil then if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0 time_type = 0
end end
local myInfo = self._data_record[data.lev][data.index]
local fatherInfo
if self.ctr_search.selectedIndex == 1 then
fatherInfo = {}
fatherInfo.uid = DataManager.SelfUser.account_id
else
fatherInfo = self._data_record[data.lev][data.index]
if data.lev > 1 then
fatherInfo = self._data_record[data.lev - 1][#self._data_record[data.lev - 1]]
end
end
local fgCtr = ControllerManager.GetController(NewGroupController) local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GetDirectMemberStat(self.group_id, id, root_id, index * 67, 67, fgCtr:FG_GetDirectMemberStat(self.group_id, myInfo.uid, fatherInfo.uid, index, 67,
time_type, time_type,
self.begin_time, self.begin_time,
self.end_time, function(res) self.end_time, function(res)
ViewUtil.CloseModalWait() ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then if res.ReturnCode == 0 then
local members = res.Data.members local members = res.Data.members
pt(members)
if #members > 0 then if #members > 0 then
local temp = self._data_record[data.lev][#self._data_record[data.lev]]
local lastIndex = 0
if temp.uid ~= myInfo.uid then
self:ChangedClear(data.lev)
self._data_record[data.lev][#self._data_record[data.lev]] = myInfo
self._data_record[data.lev][data.index] = temp
else
self:ChangedClear(data.lev + 1)
lastIndex = #self._data_record[data.lev + 1]
end
for i = 1, #members do for i = 1, #members do
if members[i].partnerLev and members[i].partnerLev == 0 then if members[i].partnerLev and members[i].partnerLev == 0 then
self.record_data[#self.record_data + 1] = members[i] self:InsertTableRecord(data.lev + 1, members[i])
end end
end end
self:RecursionGetNumberRecord(id, root_id, index + 1) if not self._memberNumList[data.lev + 1] or self._memberNumList[data.lev + 1] == 0 then
self._memberNumList[data.lev + 1] = #members
else else
self:NewRecordTableChildQian(self.record_data, 0, id) self._memberNumList[data.lev + 1] = self._memberNumList[data.lev + 1] + #members
-- self.lst_record.numItems = #self.record_data end
ViewUtil.CloseModalWait() self._selectedLev = data.lev
self:GetDataRecordLevList({ orderIndex = lastIndex })
else
ViewUtil.ErrorTip(-1, "已获取全部成员")
end end
end end
end) end)
end end
function M:RecursionGetRecordData(index, isMe, fatherId) function M:LevGetRecordData(index, data)
local time_type = self._view:GetController("type").selectedIndex local time_type = self._view:GetController("type").selectedIndex
if self.begin_time ~= nil and self.end_time ~= nil then if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0 time_type = 0
end end
local fgCtr = ControllerManager.GetController(NewGroupController) local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GetPartnerStat(self.group_id, index * 67, 67, time_type, self.begin_time, self.end_time, function(res) fgCtr:FG_GetPartnerStat(self.group_id, index, 67, time_type, self.begin_time, self.end_time, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then if res.ReturnCode == 0 then
local members = res.Data.members local members = res.Data.members
if #members > 0 then if #members > 0 then
local lastIndex = 0
if self._data_record[2] then
lastIndex = #self._data_record[2]
end
local haveMy = false
for i = 1, #members do for i = 1, #members do
if members[i].uid ~= DataManager.SelfUser.account_id then if data.uid ~= members[i].uid then
self.record_data[#self.record_data + 1] = members[i] self:InsertTableRecord(2, members[i])
end
end
self:RecursionGetRecordData(index + 1, isMe, fatherId)
else else
self:NewRecordTableChildHou(self.record_data, isMe, fatherId) haveMy = true
-- self.lst_record.numItems = #self.record_data end
ViewUtil.CloseModalWait() end
self._getAllPartnerList[1] = true
self._partnerNumList[1] = 1
self._partnerNumList[2] = #members - (haveMy and 0 or 1)
self._selectedLev = 1
self:GetDataRecordLevList({ orderIndex = lastIndex })
else
self._getAllPartnerList[2] = true
ViewUtil.ErrorTip(-1, "已获取全部代理成员")
end end
else else
ViewUtil.CloseModalWait() ViewUtil.ErrorTip(res.ReturnCode, "获取下级合伙人失败")
ViewUtil:ErrorTip(res.ReturnCode, "获取下级合伙人失败")
return return
end end
end) end)
end end
function M:RecursionGetAllRecordData(index, id, root_id) function M:GetAllRecordData(index, data)
ViewUtil.ShowModalWait() ViewUtil.ShowModalWait()
local time_type = self._view:GetController("type").selectedIndex local time_type = self._view:GetController("type").selectedIndex
if self.begin_time ~= nil and self.end_time ~= nil then if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0 time_type = 0
end end
local myInfo = self._data_record[data.lev][data.index]
local fatherInfo
if self.ctr_search.selectedIndex == 1 then
fatherInfo = {}
fatherInfo.uid = DataManager.SelfUser.account_id
else
fatherInfo = self._data_record[data.lev - 1][#self._data_record[data.lev - 1]]
end
local fgCtr = ControllerManager.GetController(NewGroupController) local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GetPartnerStatMember(self.group_id, id, root_id, index * 67, 67, fgCtr:FG_GetPartnerStatMember(self.group_id, myInfo.uid, fatherInfo.uid, index, 67,
time_type, time_type,
self.begin_time, self.begin_time,
self.end_time, function(res) self.end_time, function(res)
ViewUtil.CloseModalWait() ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then if res.ReturnCode == 0 then
local members = res.Data.members local members = res.Data.members
pt(members)
if #members > 0 then if #members > 0 then
local lastIndex = 0
if self._data_record[data.lev + 1] then
lastIndex = #self._data_record[data.lev + 1]
end
for i = data.index + 1, #self._data_record[data.lev] do
self._data_record[data.lev][i - 1] = self._data_record[data.lev][i]
end
self._data_record[data.lev][#self._data_record[data.lev]] = myInfo
local haveMy = false
for i = 1, #members do for i = 1, #members do
if members[i].uid ~= id then if members[i].uid ~= myInfo.uid then
self.record_data[#self.record_data + 1] = members[i] self:InsertTableRecord(self._selectedLev + 1, members[i])
end
end
self:RecursionGetAllRecordData(index + 1, id, root_id)
else else
self:NewRecordTableChildHou(self.record_data, 0, id) haveMy = true
-- self.lst_record.numItems = #self.record_data end
ViewUtil.CloseModalWait() end
if not self._partnerNumList[self._selectedLev + 1] or self._partnerNumList[self._selectedLev + 1] == 0 then
self._partnerNumList[self._selectedLev + 1] = #members - (haveMy and 0 or 1)
else
self._partnerNumList[self._selectedLev + 1] = self._partnerNumList[self._selectedLev + 1] +
#members - (haveMy and 0 or 1)
end
if not self._data_record[self._selectedLev + 1] or #self._data_record[self._selectedLev + 1] == 0 then
self._getAllPartnerList[self._selectedLev + 1] = true
end
self._selectedLev = data.lev
self:GetDataRecordLevList({ orderIndex = lastIndex })
else
self._getAllPartnerList[self._selectedLev + 1] = true
ViewUtil.ErrorTip(-1, "已获取全部代理成员")
end end
else else
ViewUtil.CloseModalWait()
ViewUtil:ErrorTip(res.ReturnCode, "获取下级合伙人失败") ViewUtil:ErrorTip(res.ReturnCode, "获取下级合伙人失败")
return return
end end

View File

@ -1,5 +1,5 @@
{ {
"libview.firstColumnWidth": 338, "libview.firstColumnWidth": 522,
"libview.iconScale": 0, "libview.iconScale": 0,
"doc.openedDocs": [ "doc.openedDocs": [
"ui://m7iejg46ilon7ias", "ui://m7iejg46ilon7ias",

View File

@ -91,7 +91,7 @@ public class VerCheck : MonoBehaviour
//公用 //公用
string init_url = "http://8.138.120.167:19898/NewFK/config/init2_1.json"; string init_url = "http://8.148.219.235:19898/NewFK/config/init2_1.json";