Compare commits

..

No commits in common. "3c4f9ac024aa4141ae4833bd095656ddef862c0d" and "bf3ba1c5ad47d63f180f911da82805274af1d554" have entirely different histories.

11 changed files with 485 additions and 308 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -13,7 +13,12 @@
"commandLine": "-workdir ${workspaceRoot}/../ -file src/main.lua", "commandLine": "-workdir ${workspaceRoot}/../ -file src/main.lua",
"port": 7003, "port": 7003,
"exePath": "", "exePath": "",
"fileExtNames": [".lua", ".txt", ".lua.txt", ".bytes"], "fileExtNames": [
".lua",
".txt",
".lua.txt",
".bytes"
],
"isFoxGloryProject": false, "isFoxGloryProject": false,
"printType": 1 "printType": 1
}, },
@ -24,7 +29,12 @@
"runtimeType": "Cocos2", "runtimeType": "Cocos2",
"localRoot": "${workspaceRoot}", "localRoot": "${workspaceRoot}",
"port": 7003, "port": 7003,
"fileExtNames": [".lua", ".txt", ".lua.txt", ".bytes"], "fileExtNames": [
".lua",
".txt",
".lua.txt",
".bytes"
],
"isFoxGloryProject": false, "isFoxGloryProject": false,
"printType": 1 "printType": 1
}, },
@ -34,7 +44,12 @@
"request": "attach", "request": "attach",
"runtimeType": "Unity", "runtimeType": "Unity",
"localRoot": "${workspaceRoot}", "localRoot": "${workspaceRoot}",
"fileExtNames": [".lua", ".txt", ".lua.txt", ".bytes"], "fileExtNames": [
".lua",
".txt",
".lua.txt",
".bytes"
],
"port": 7003, "port": 7003,
"printType": 1 "printType": 1
}, },
@ -44,7 +59,12 @@
"request": "attach", "request": "attach",
"runtimeType": "Unity", "runtimeType": "Unity",
"localRoot": "${workspaceRoot}", "localRoot": "${workspaceRoot}",
"fileExtNames": [".lua", ".txt", ".lua.txt", ".bytes"], "fileExtNames": [
".lua",
".txt",
".lua.txt",
".bytes"
],
"port": 7003, "port": 7003,
"printType": 1 "printType": 1
}, },
@ -54,7 +74,12 @@
"request": "attach", "request": "attach",
"runtimeType": "Unity", "runtimeType": "Unity",
"localRoot": "${workspaceRoot}", "localRoot": "${workspaceRoot}",
"fileExtNames": [".lua", ".txt", ".lua.txt", ".bytes"], "fileExtNames": [
".lua",
".txt",
".lua.txt",
".bytes"
],
"port": 7003, "port": 7003,
"printType": 1 "printType": 1
}, },
@ -65,7 +90,9 @@
"runtimeType": "OpenResty", "runtimeType": "OpenResty",
"localRoot": "${workspaceRoot}", "localRoot": "${workspaceRoot}",
"port": 7003, "port": 7003,
"fileExtNames": [".lua"], "fileExtNames": [
".lua"
],
"printType": 1 "printType": 1
}, },
{ {
@ -76,18 +103,14 @@
"mainFile": "${fileBasenameNoExtension}", "mainFile": "${fileBasenameNoExtension}",
"localRoot": "${fileDirname}", "localRoot": "${fileDirname}",
"curFileExtname": "${fileExtname}", "curFileExtname": "${fileExtname}",
"fileExtNames": [".lua", ".txt", ".lua.txt", ".bytes"], "fileExtNames": [
".lua",
".txt",
".lua.txt",
".bytes"
],
"port": 7003, "port": 7003,
"printType": 1 "printType": 1
},
{
"type": "emmylua_new",
"request": "launch",
"name": "EmmyLua-Debug",
"host": "localhost",
"port": 9966,
"ext": ["lua", "lua.txt", "lua.bytes"],
"ideConnectDebugger": false
} }
] ]
} }

View File

@ -123,6 +123,7 @@ function M:InitView()
ViewUtil.ErrorTip(nil, '输入不能为空') ViewUtil.ErrorTip(nil, '输入不能为空')
return return
end end
self._view:GetChild('tex_id').text = ""
qid = tonumber(text) or 0 qid = tonumber(text) or 0
local fgCtr = ControllerManager.GetController(NewGroupController) local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GetMemberStat(self.group_id, qid, DataManager.SelfUser.account_id, fgCtr:FG_GetMemberStat(self.group_id, qid, DataManager.SelfUser.account_id,
@ -153,7 +154,6 @@ function M:InitView()
local btn_back = self._view:GetChild('btn_back') local btn_back = self._view:GetChild('btn_back')
btn_back.onClick:Set( btn_back.onClick:Set(
function() function()
self._view:GetChild('tex_id').text = ""
ctr_search.selectedIndex = 0 ctr_search.selectedIndex = 0
table.sort(self.record_data, function(a, b) table.sort(self.record_data, function(a, b)
return a.round > b.round return a.round > b.round

View File

@ -18,6 +18,7 @@ end
function M:initData() function M:initData()
self.lst_record.numItems = 0 self.lst_record.numItems = 0
self.record_data = {}
self.ctr_search = self._view:GetController('search') self.ctr_search = self._view:GetController('search')
local now_time = os.date("*t", now) local now_time = os.date("*t", now)
@ -28,8 +29,6 @@ function M:initData()
self._partnerNumList = {} self._partnerNumList = {}
self._memberNumList = {} self._memberNumList = {}
self._getAllPartnerList = {} self._getAllPartnerList = {}
self._selectIndexList = {}
self._selectIndex = 0
self._selectedLev = 0 self._selectedLev = 0
self:GetRecordData(0) self:GetRecordData(0)
--self:ShowPeopleNum() --self:ShowPeopleNum()
@ -80,8 +79,6 @@ function M:InitView()
self:InitListRecordFind() self:InitListRecordFind()
self:InsertTableRecord(1, res.Data.members[1]) self:InsertTableRecord(1, res.Data.members[1])
self._selectedLev = 1 self._selectedLev = 1
self._selectIndex = 1
self._selectIndexList[self._selectedLev] = self._selectIndex
self:GetAllRecordData(0, { lev = 1, index = 1 }) self:GetAllRecordData(0, { lev = 1, index = 1 })
end end
end end
@ -94,6 +91,7 @@ function M:InitView()
self.begin_time, self.end_time = self.time_panel:GetDate() self.begin_time, self.end_time = self.time_panel:GetDate()
local ctr_page = self._view:GetController("type") local ctr_page = self._view:GetController("type")
ctr_page.onChanged:Set(function() ctr_page.onChanged:Set(function()
self.record_data = {}
self.lst_record.numItems = 0 self.lst_record.numItems = 0
if ctr_page.selectedIndex == 0 then if ctr_page.selectedIndex == 0 then
local now_time = os.date("*t", now) local now_time = os.date("*t", now)
@ -146,8 +144,6 @@ function M:InitView()
self:InitListRecordFind() self:InitListRecordFind()
self:InsertTableRecord(1, res.Data.members[1]) self:InsertTableRecord(1, res.Data.members[1])
self._selectedLev = 1 self._selectedLev = 1
self._selectIndex = 1
self._selectIndexList[self._selectedLev] = self._selectIndex
self:GetAllRecordData(0, { lev = 1, index = 1 }) self:GetAllRecordData(0, { lev = 1, index = 1 })
end end
end end
@ -176,16 +172,10 @@ end
function M:GetDataRecordLevList(data) function M:GetDataRecordLevList(data)
local count = 0 local count = 0
local selectCount = 0 self._data_record.levList = {}
for i = 1, #self._data_record do for i = 1, #self._data_record do
count = count + #self._data_record[i] count = count + #self._data_record[i]
end table.insert(self._data_record.levList, count)
for i = 1, self._selectIndexList and #self._selectIndexList or 1 do
selectCount = selectCount + (self._selectIndexList and self._selectIndexList[i] or 1)
end
if self._lst_selectIndex then
selectCount = selectCount + self._lst_selectIndex
self._lst_selectIndex = nil
end end
self._data_record.count = count self._data_record.count = count
if self.ctr_search.selectedIndex == 1 then if self.ctr_search.selectedIndex == 1 then
@ -194,35 +184,24 @@ function M:GetDataRecordLevList(data)
else else
self.item_result.numItems = self._data_record.count self.item_result.numItems = self._data_record.count
end end
self.item_result:ScrollToView(self._selectedLev == 0 and 0 or selectCount - 1) 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 else
pt("lingmeng log ", self._data_record)
if self.lst_record.numItems == self._data_record.count then if self.lst_record.numItems == self._data_record.count then
self.lst_record:RefreshVirtualList() self.lst_record:RefreshVirtualList()
else else
self.lst_record.numItems = self._data_record.count self.lst_record.numItems = self._data_record.count
end end
self.lst_record:ScrollToView(self._selectedLev == 0 and 0 or selectCount - 1) local orderIndex = 0
if data and data.orderIndex then
orderIndex = data.orderIndex
end end
end self.lst_record:ScrollToView(self._selectedLev == 0 and 0 or
self._data_record.levList[self._selectedLev] - 1 + orderIndex)
function M:RecursionGetIndex(index, lev)
if lev <= #self._selectIndexList then
if self._selectIndexList[lev] == nil then
return 1, 1
end
if index <= self._selectIndexList[lev] then
return lev, index
end
return self:RecursionGetIndex(index - self._selectIndexList[lev], lev + 1)
else
local haveXia = self._data_record[self._selectedLev + 1] and 1 or 0
local tempLev = #self._selectIndexList - (lev - self._selectedLev - 1 - haveXia)
if index <= #self._data_record[tempLev] - (self._selectIndexList[tempLev] or 0) then
return tempLev, (self._selectIndexList[tempLev] or 0) + index
end
return self:RecursionGetIndex(index - (#self._data_record[tempLev] - (self._selectIndexList[tempLev] or 0)),
lev + 1)
end end
end end
@ -231,7 +210,15 @@ function M:InitListRecord()
self.lst_record = self._view:GetChild("lst_record") self.lst_record = self._view:GetChild("lst_record")
self.lst_record:SetVirtual() self.lst_record:SetVirtual()
self.lst_record.itemRenderer = function(index, obj) self.lst_record.itemRenderer = function(index, obj)
local tempLev, tempIndex = self:RecursionGetIndex(index + 1, 1) 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] local dataInfo = self._data_record[tempLev][tempIndex]
obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(dataInfo.nick) obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(dataInfo.nick)
obj:GetChild("tex_id").text = "ID:" .. dataInfo.uid obj:GetChild("tex_id").text = "ID:" .. dataInfo.uid
@ -248,15 +235,12 @@ function M:InitListRecord()
obj:GetChild("tex_round_total").text = dataInfo.total_round obj:GetChild("tex_round_total").text = dataInfo.total_round
obj:GetChild("tex_total").text = d2ad(dataInfo.total_win) obj:GetChild("tex_total").text = d2ad(dataInfo.total_win)
obj:GetChild("tex_round_youxiao").text = dataInfo.valid_round / 100 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('tex_reward').text = d2ad(dataInfo.reward_tongji or dataInfo.reward_hp)
obj:GetChild("btn_more").visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0 obj:GetChild("btn_more").visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetController("more").onChanged:Set(function() end) obj:GetController("more").onChanged:Set(function() end)
if tempLev <= self._selectedLev then if tempLev <= self._selectedLev and tempIndex == #self._data_record[tempLev] then
obj:GetController("select").selectedIndex = 1
else
obj:GetController("select").selectedIndex = 0
end
if tempIndex == self._selectIndexList[tempLev] then
obj:GetController("more").selectedIndex = 1 obj:GetController("more").selectedIndex = 1
else else
obj:GetController("more").selectedIndex = 0 obj:GetController("more").selectedIndex = 0
@ -295,27 +279,7 @@ function M:InitListRecord()
obj:GetChild('btn_super').visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0 obj:GetChild('btn_super').visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetChild('btn_super').onClick:Set(function() obj:GetChild('btn_super').onClick:Set(function()
if obj:GetController("more").selectedIndex == 0 then self.record_data = {}
self:ChangedClear(tempLev)
ViewUtil:ShowModalWait()
if tempLev == 1 then
self._selectedLev = 1
self._selectIndex = tempIndex
self._selectIndexList[self._selectedLev] = self._selectIndex
self:LevGetRecordData(0, dataInfo,
self.GetNumberRecordForLev1(self, 0, { lev = tempLev, index = tempIndex }))
else
self._selectedLev = tempLev
self._selectIndex = tempIndex
self._selectIndexList[self._selectedLev] = self._selectIndex
self:GetAllRecordData(0, { lev = tempLev, index = tempIndex },
self.GetNumberRecord(self, 0, { lev = tempLev, index = tempIndex }))
end
else
self:ChangedClear(tempIndex + 1)
self._selectedLev = tempLev
self._selectIndex = tempIndex
self._selectIndexList[self._selectedLev] = self._selectIndex
if tempLev == 1 and not dataInfo.partnerLev and #self._data_record >= 2 then if tempLev == 1 and not dataInfo.partnerLev and #self._data_record >= 2 then
ViewUtil.ShowModalWait("正在获取成员中") ViewUtil.ShowModalWait("正在获取成员中")
self:GetNumberRecordForLev1(0, { lev = tempLev, index = tempIndex }) self:GetNumberRecordForLev1(0, { lev = tempLev, index = tempIndex })
@ -323,34 +287,33 @@ function M:InitListRecord()
else else
self:GetNumberRecord(0, { lev = tempLev, index = tempIndex }) self:GetNumberRecord(0, { lev = tempLev, index = tempIndex })
end end
end
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._selectedLev == 1 then
-- if self._getAllPartnerList[self._selectedLev + 1] then if self._getAllPartnerList[self._selectedLev + 1] then
-- local dataInfo = self._data_record[1][1] local dataInfo = self._data_record[1][1]
-- if not dataInfo.partnerLev and #self._data_record >= 2 then if not dataInfo.partnerLev and #self._data_record >= 2 then
-- ViewUtil.ShowModalWait("正在获取成员中") ViewUtil.ShowModalWait("正在获取成员中")
-- self:GetNumberRecordForLev1(self._memberNumList[2] or 0, self:GetNumberRecordForLev1(self._memberNumList[2] or 0,
-- { lev = 1, index = 1 }) { lev = 1, index = 1 })
-- ViewUtil.CloseModalWait() ViewUtil.CloseModalWait()
-- else else
-- self:GetNumberRecord(self._memberNumList[2] or 0, { lev = 1, index = 1 }) self:GetNumberRecord(self._memberNumList[2] or 0, { lev = 1, index = 1 })
-- end end
-- else else
-- self:LevGetRecordData(self._partnerNumList[2], self._data_record[1][1]) self:LevGetRecordData(self._partnerNumList[2], self._data_record[1][1])
-- end end
-- else else
-- if self._getAllPartnerList[self._selectedLev + 1] then if self._getAllPartnerList[self._selectedLev + 1] then
-- self:GetNumberRecord(self._memberNumList[self._selectedLev + 1] or 0, self:GetNumberRecord(self._memberNumList[self._selectedLev + 1] or 0,
-- { lev = self._selectedLev, index = #self._data_record[self._selectedLev] }) { lev = self._selectedLev, index = #self._data_record[self._selectedLev] })
-- else else
-- self:GetAllRecordData(self._partnerNumList[self._selectedLev + 1] or 0, self:GetAllRecordData(self._partnerNumList[self._selectedLev + 1] or 0,
-- { lev = self._selectedLev, index = #self._data_record[self._selectedLev] }) { lev = self._selectedLev, index = #self._data_record[self._selectedLev] })
-- end end
-- end end
-- end) end)
end end
end end
@ -359,7 +322,15 @@ function M:InitListRecordFind()
self.item_result = self._view:GetChild("lst_member_find") self.item_result = self._view:GetChild("lst_member_find")
self.item_result:SetVirtual() self.item_result:SetVirtual()
self.item_result.itemRenderer = function(index, obj) self.item_result.itemRenderer = function(index, obj)
local tempLev, tempIndex = self:RecursionGetIndex(index + 1, 1) 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] local dataInfo = self._data_record[tempLev][tempIndex]
obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(dataInfo.nick) obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(dataInfo.nick)
obj:GetChild("tex_id").text = "ID:" .. dataInfo.uid obj:GetChild("tex_id").text = "ID:" .. dataInfo.uid
@ -379,12 +350,7 @@ function M:InitListRecordFind()
obj:GetChild('tex_reward').text = d2ad(dataInfo.reward_tongji or dataInfo.reward_hp) 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:GetChild("btn_more").visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetController("more").onChanged:Set(function() end) obj:GetController("more").onChanged:Set(function() end)
if tempLev <= self._selectedLev then if tempLev <= self._selectedLev and tempIndex == #self._data_record[tempLev] then
obj:GetController("select").selectedIndex = 1
else
obj:GetController("select").selectedIndex = 0
end
if tempIndex == self._selectIndexList[tempLev] then
obj:GetController("more").selectedIndex = 1 obj:GetController("more").selectedIndex = 1
else else
obj:GetController("more").selectedIndex = 0 obj:GetController("more").selectedIndex = 0
@ -423,27 +389,7 @@ function M:InitListRecordFind()
obj:GetChild('btn_super').visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0 obj:GetChild('btn_super').visible = not dataInfo.partnerLev or dataInfo.partnerLev > 0
obj:GetChild('btn_super').onClick:Set(function() obj:GetChild('btn_super').onClick:Set(function()
if obj:GetController("more").selectedIndex == 0 then self.record_data = {}
self:ChangedClear(tempLev)
ViewUtil:ShowModalWait()
if tempLev == 1 then
self._selectedLev = 1
self._selectIndex = tempIndex
self._selectIndexList[self._selectedLev] = self._selectIndex
self:LevGetRecordData(0, dataInfo,
self.GetNumberRecordForLev1(self, 0, { lev = tempLev, index = tempIndex }))
else
self._selectedLev = tempLev
self._selectIndex = tempIndex
self._selectIndexList[self._selectedLev] = self._selectIndex
self:GetAllRecordData(0, { lev = tempLev, index = tempIndex },
self.GetNumberRecord(self, 0, { lev = tempLev, index = tempIndex }))
end
else
self:ChangedClear(tempIndex + 1)
self._selectedLev = tempLev
self._selectIndex = tempIndex
self._selectIndexList[self._selectedLev] = self._selectIndex
if tempLev == 1 and not dataInfo.partnerLev and #self._data_record >= 2 then if tempLev == 1 and not dataInfo.partnerLev and #self._data_record >= 2 then
ViewUtil.ShowModalWait("正在获取成员中") ViewUtil.ShowModalWait("正在获取成员中")
self:GetNumberRecordForLev1(0, { lev = tempLev, index = tempIndex }) self:GetNumberRecordForLev1(0, { lev = tempLev, index = tempIndex })
@ -451,34 +397,33 @@ function M:InitListRecordFind()
else else
self:GetNumberRecord(0, { lev = tempLev, index = tempIndex }) self:GetNumberRecord(0, { lev = tempLev, index = tempIndex })
end end
end
end) end)
end end
-- self.item_result.scrollPane.onPullUpRelease:Set(function() self.item_result.scrollPane.onPullUpRelease:Set(function()
-- if self._selectedLev == 1 then if self._selectedLev == 1 then
-- if self._getAllPartnerList[self._selectedLev + 1] then if self._getAllPartnerList[self._selectedLev + 1] then
-- local dataInfo = self._data_record[1][1] local dataInfo = self._data_record[1][1]
-- if not dataInfo.partnerLev and #self._data_record >= 2 then if not dataInfo.partnerLev and #self._data_record >= 2 then
-- ViewUtil.ShowModalWait("正在获取成员中") ViewUtil.ShowModalWait("正在获取成员中")
-- self:GetNumberRecordForLev1(self._memberNumList[2] or 0, self:GetNumberRecordForLev1(self._memberNumList[2] or 0,
-- { lev = 1, index = 1 }) { lev = 1, index = 1 })
-- ViewUtil.CloseModalWait() ViewUtil.CloseModalWait()
-- else else
-- self:GetNumberRecord(self._memberNumList[2] or 0, { lev = 1, index = 1 }) self:GetNumberRecord(self._memberNumList[2] or 0, { lev = 1, index = 1 })
-- end end
-- else else
-- self:LevGetRecordData(self._partnerNumList[2], self._data_record[1][1]) self:LevGetRecordData(self._partnerNumList[2], self._data_record[1][1])
-- end end
-- else else
-- if self._getAllPartnerList[self._selectedLev + 1] then if self._getAllPartnerList[self._selectedLev + 1] then
-- self:GetNumberRecord(self._memberNumList[self._selectedLev + 1] or 0, self:GetNumberRecord(self._memberNumList[self._selectedLev + 1] or 0,
-- { lev = self._selectedLev, index = #self._data_record[self._selectedLev] }) { lev = self._selectedLev, index = #self._data_record[self._selectedLev] })
-- else else
-- self:GetAllRecordData(self._partnerNumList[self._selectedLev + 1] or 0, self:GetAllRecordData(self._partnerNumList[self._selectedLev + 1] or 0,
-- { lev = self._selectedLev, index = #self._data_record[self._selectedLev] }) { lev = self._selectedLev, index = #self._data_record[self._selectedLev] })
-- end end
-- end end
-- end) end)
end end
end end
@ -519,13 +464,15 @@ function M:GetFristData(fgCtr, index, time_type)
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]
self:InsertTableRecord(1, members[i]) self:InsertTableRecord(1, members[i])
else
self:InsertTableRecord(2, members[i])
end
end
self._getAllPartnerList[1] = true
self._partnerNumList[1] = 1
self._partnerNumList[2] = #members
self._selectedLev = 1 self._selectedLev = 1
self._selectIndex = 1 self:GetDataRecordLevList()
self._selectIndexList[self._selectedLev] = self._selectIndex
self:LevGetRecordData(0, members[i])
break
end
end
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, "你不是合伙人")
@ -556,11 +503,35 @@ function M:GetPropLog(members, index, time_type)
if res.ReturnCode == 0 then if res.ReturnCode == 0 then
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:InsertTableRecord(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,
function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
self:InitListRecord()
local members = res.Data.members
if members and #members then
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._selectedLev = 1
self._selectIndex = 1 self:GetDataRecordLevList()
self._selectIndexList[self._selectedLev] = self._selectIndex else
self:LevGetRecordData(0, self.groupumberTemp) if index == 0 and (not members or #members == 0) then
ViewUtil.ErrorTip(nil, "你不是合伙人")
return
end
end
else
ViewUtil.ErrorTip(res.ReturnCode, "当前成员获取失败")
end
end)
else else
ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值") ViewUtil.ErrorTip(res.ReturnCode, "目标没有总线值")
end end
@ -569,6 +540,118 @@ function M:GetPropLog(members, index, time_type)
end) end)
end end
function M:FillRecordItem(data, obj)
local group = DataManager.groups:get(self.group_id)
if group.lev == 1 then
obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(data.nick)
else
obj:GetChild("tex_name").text = ViewUtil.stringEllipsis(data.nick) .. "(" .. data.total .. ")"
end
obj:GetChild("tex_id").text = "ID:" .. data.uid
local tex_total_score = obj:GetChild("tex_total_score")
local ctr_show_total = obj:GetController("show_total")
if data.hpall then
tex_total_score.text = data.hpall.hp
ctr_show_total.selectedIndex = 1
else
ctr_show_total.selectedIndex = 0
end
obj:GetChild("tex_round_valid").text = d2ad(data.reward_hp + data.total_win) --d2ad(data.reward_hp) --data.valid_round / 100
obj:GetChild("tex_round_total").text = data.total_round
obj:GetChild("tex_total").text = d2ad(data.total_win)
obj:GetChild("tex_round_youxiao").text = data.valid_round / 100
obj:GetChild('tex_reward').text = d2ad(data.reward_hp)
local btn_check_members = obj:GetChild("btn_check_members")
btn_check_members.onClick:Set(function()
ViewUtil.ShowModalWait(self._root_view)
local fgCtr = ControllerManager.GetController(NewGroupController)
if data.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, data.uid, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
local hp = d2ad(res.Data.hp)
tex_total_score.text = hp
data._total_hp = hp
data.total = res.Data.total_member - 1
obj:GetChild("tex_name").text = data.nick .. "(" .. data.total .. ")"
ctr_show_total.selectedIndex = 1
end
end)
end
end)
local btn_award = obj:GetChild("btn_award")
btn_award.text = d2ad(data.reward_hp) --d2ad(data.reward_hp+data.total_win)
btn_award.onClick:Set(function()
local time_type = self._view:GetController("type").selectedIndex
local gniv = GroupPartnerStatPlay.new(self.group_id, data.uid, data.partnerLev, DataManager.SelfUser.account_id,
time_type, self.begin_time, self.end_time)
gniv:Show()
end)
local btn_detail = obj:GetChild("btn_detail")
btn_detail.onClick:Set(function()
local time_type = self._view:GetController("type").selectedIndex
--printlog("ccccccccccwwwwwwwwwwwwwwwwwwwwwwwwwwww ",self.begin_time," ",self.end_time)
local gniv = GroupPartnerStatMember.new(self.group_id, data.uid, 0, self.begin_time, self.end_time)
gniv:Show()
end)
local btnMen = obj:GetChild("btnMen")
-- btnMen.text = d2ad(data.autoscore)
local menControl = obj:GetController("menkan")
-- if group.lev == 1 or (group.lev == 3 and group.partnerLev > 0) then
-- if (DataManager.SelfUser.account_id ~= data.uid) then
-- menControl.selectedIndex = 1
-- btnMen.text = d2ad(data.autoscore)
-- btnMen.touchable = true
-- else
-- btnMen.text = d2ad(data.autoscore)
-- menControl.selectedIndex = 1
-- btnMen.touchable = false
-- end
-- else
-- menControl.selectedIndex = 0
-- end
btnMen.onClick:Set(function()
local gfiv = GroupNumberInputView.new(self._root_view, function(num)
local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_SetPartnerThreshold(self.group_id, data.uid, num, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "设置失败")
else
ViewUtil.ShowBannerOnScreenCenter("设置成功")
btnMen.text = num
data.autoscore = ad2d(num)
end
end)
end, 0)
gfiv:Show()
end)
end
function M:OnRenderRecordItem(index, obj)
local data = self.record_data[index + 1]
self:FillRecordItem(data, obj)
end
function M:MoreChanged(context, data) function M:MoreChanged(context, data)
print("lingmeng MoreChanged", context.sender.selectedIndex) print("lingmeng MoreChanged", context.sender.selectedIndex)
if context.sender.selectedIndex == 1 then if context.sender.selectedIndex == 1 then
@ -580,34 +663,24 @@ function M:MoreChanged(context, data)
ViewUtil:ShowModalWait() ViewUtil:ShowModalWait()
if data.lev == 1 then if data.lev == 1 then
self._selectedLev = 1 self._selectedLev = 1
self._selectIndex = data.index
self._selectIndexList[self._selectedLev] = self._selectIndex
self:LevGetRecordData(0, myInfo) self:LevGetRecordData(0, myInfo)
else else
self._selectedLev = data.lev self._selectedLev = data.lev
self._selectIndex = data.index
self._selectIndexList[self._selectedLev] = self._selectIndex
self:GetAllRecordData(0, data) self:GetAllRecordData(0, data)
end end
else else
ViewUtil.ErrorTip(nil, "统计页面失效,请重新打开") ViewUtil.ErrorTip(nil, "统计页面失效,请重新打开")
end end
else else
self._lst_selectIndex = self._selectIndexList[data.lev]
self:ChangedClear(data.lev) self:ChangedClear(data.lev)
self._selectedLev = data.lev - 1 self._selectedLev = data.lev - 1
self._selectIndex = self._selectIndexList[self._selectedLev] or 0
self:GetDataRecordLevList() self:GetDataRecordLevList()
end end
end end
function M:ChangedClear(lev) function M:ChangedClear(lev)
if lev ~= 0 then
self._selectIndexList[lev] = nil
end
for i = lev + 1, #self._data_record do for i = lev + 1, #self._data_record do
self._data_record[i] = nil self._data_record[i] = nil
self._selectIndexList[i] = nil
self._partnerNumList[i] = nil self._partnerNumList[i] = nil
self._getAllPartnerList[i] = nil self._getAllPartnerList[i] = nil
self._memberNumList[i] = nil self._memberNumList[i] = nil
@ -623,7 +696,7 @@ function M:GetNumberRecordForLev1(index, data)
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,
@ -634,21 +707,57 @@ function M:GetNumberRecordForLev1(index, data)
local numbers = res.Data.members local numbers = res.Data.members
if #numbers == 0 then if #numbers == 0 then
self:GetDataRecordLevList() ViewUtil.ErrorTip(-1, "已获取全部成员")
else else
self:ChangedClear(3) self:ChangedClear(3)
local lastIndex = 0
if self._data_record[2] then
lastIndex = #self._data_record[2]
end
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
self:InsertTableRecord(2, numbers[i]) self:InsertTableRecord(2, numbers[i])
end end
end end
self:GetNumberRecordForLev1(index + 1, data) 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
) )
end end
function M:RecursionGetNumberRecordByLev1(tempTable, id, root_id)
local time_type = self._view:GetController("type").selectedIndex
if self.begin_time ~= nil and self.end_time ~= nil then
time_type = 0
end
ViewUtil.ShowModalWait(nil)
local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GetDirectMemberStat(self.group_id, id, root_id, 0, 1,
time_type,
self.begin_time,
self.end_time, function(res)
ViewUtil.CloseModalWait()
if res.ReturnCode == 0 then
local members = res.Data.members
self.record_data[#self.record_data + 1] = members[1]
local numberid = table.remove(tempTable)
if numberid then
self:RecursionGetNumberRecordByLev1(tempTable, numberid.uid, root_id)
else
self:NewRecordTableChildQian(self.record_data, 0, root_id)
ViewUtil.CloseModalWait()
end
end
end)
end
function M:GetNumberRecord(index, data) 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
@ -663,11 +772,11 @@ function M:GetNumberRecord(index, data)
else else
fatherInfo = self._data_record[data.lev][data.index] fatherInfo = self._data_record[data.lev][data.index]
if data.lev > 1 then if data.lev > 1 then
fatherInfo = self._data_record[data.lev - 1][self._selectIndexList[data.lev - 1]] fatherInfo = self._data_record[data.lev - 1][#self._data_record[data.lev - 1]]
end end
end end
local fgCtr = ControllerManager.GetController(NewGroupController) local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GetDirectMemberStat(self.group_id, myInfo.uid, fatherInfo.uid, 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)
@ -675,46 +784,67 @@ function M:GetNumberRecord(index, data)
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 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:InsertTableRecord(data.lev + 1, members[i]) self:InsertTableRecord(data.lev + 1, members[i])
end end
end end
self:GetNumberRecord(index + 1, data) if not self._memberNumList[data.lev + 1] or self._memberNumList[data.lev + 1] == 0 then
self._memberNumList[data.lev + 1] = #members
else else
self:GetDataRecordLevList() self._memberNumList[data.lev + 1] = self._memberNumList[data.lev + 1] + #members
end
self._selectedLev = data.lev
self:GetDataRecordLevList({ orderIndex = lastIndex })
else
ViewUtil.ErrorTip(-1, "已获取全部成员")
end end
end end
end) end)
end end
function M:LevGetRecordData(index, data, callback) 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() 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 if self._data_record[2] then
lastIndex = #self._data_record[2] lastIndex = #self._data_record[2]
end end
local haveMy = false
for i = 1, #members do for i = 1, #members do
if data.uid ~= members[i].uid then if data.uid ~= members[i].uid then
self:InsertTableRecord(2, members[i]) self:InsertTableRecord(2, members[i])
end
end
self:LevGetRecordData(index + 1, data)
else else
if callback then haveMy = true
callback()
return
end end
self:GetDataRecordLevList() 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.ErrorTip(res.ReturnCode, "获取下级合伙人失败") ViewUtil.ErrorTip(res.ReturnCode, "获取下级合伙人失败")
@ -723,7 +853,7 @@ function M:LevGetRecordData(index, data, callback)
end) end)
end end
function M:GetAllRecordData(index, data, callback) 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
@ -738,7 +868,7 @@ function M:GetAllRecordData(index, data, callback)
fatherInfo = self._data_record[data.lev - 1][#self._data_record[data.lev - 1]] 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_GetPartnerStatMember(self.group_id, myInfo.uid, fatherInfo.uid, 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)
@ -746,18 +876,36 @@ function M:GetAllRecordData(index, data, callback)
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[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 ~= myInfo.uid then if members[i].uid ~= myInfo.uid then
self:InsertTableRecord(self._selectedLev + 1, members[i]) self:InsertTableRecord(self._selectedLev + 1, members[i])
end
end
self:GetAllRecordData(index + 1, data)
else else
if callback then haveMy = true
callback()
return
end end
self:GetDataRecordLevList() 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:ErrorTip(res.ReturnCode, "获取下级合伙人失败") ViewUtil:ErrorTip(res.ReturnCode, "获取下级合伙人失败")
@ -766,4 +914,24 @@ function M:GetAllRecordData(index, data, callback)
end) end)
end end
function M:RecursionChangeHeight(fatherId, childNum)
if self.ctr_search.selectedIndex == 0 then
self.record_total_data[fatherId].childCount = self.record_total_data[fatherId].childCount + childNum
self.record_total_data[fatherId].list.height = self.record_total_data[fatherId].list.height + childNum * 113
self.record_total_data[fatherId].obj.height = self.record_total_data[fatherId].obj.height + childNum * 113
if self.record_total_data[fatherId].father ~= nil then
self:RecursionChangeHeight(self.record_total_data[fatherId].father, childNum)
end
else
self.record_total_data_Find[fatherId].childCount = self.record_total_data_Find[fatherId].childCount + childNum
self.record_total_data_Find[fatherId].list.height = self.record_total_data_Find[fatherId].list.height +
childNum * 113
self.record_total_data_Find[fatherId].obj.height = self.record_total_data_Find[fatherId].obj.height +
childNum * 113
if self.record_total_data_Find[fatherId].father ~= nil and self.record_total_data_Find[fatherId].father ~= DataManager.SelfUser.account_id then
self:RecursionChangeHeight(self.record_total_data_Find[fatherId].father, childNum)
end
end
end
return M return M

View File

@ -36,18 +36,6 @@ oldGameVersion = 2 --1 原始 2 老游戏新加功能
--主入口函数。从这里开始lua逻辑 --主入口函数。从这里开始lua逻辑
function Main() function Main()
-- if true then
-- local suc = pcall(function()
-- local path = Application.streamingAssetsPath .. "/../../.."
-- package.cpath = package.cpath .. ";" .. path .. "/?.dll"
-- local dbg = require("emmy_core")
-- dbg.tcpConnect('localhost', 9966)
-- end)
-- if suc then
-- print("=============================调试连接成功!===========================")
-- end
-- end
-- PlayerPrefs.DeleteKey('session_id') -- PlayerPrefs.DeleteKey('session_id')
Application.targetFrameRate = 60 Application.targetFrameRate = 60
FairyGUI.UIConfig.buttonSound = FairyGUI.NAudioClip(ResourcesManager.LoadObject("base/common/sound/click.mp3", FairyGUI.UIConfig.buttonSound = FairyGUI.NAudioClip(ResourcesManager.LoadObject("base/common/sound/click.mp3",

View File

@ -31,7 +31,6 @@
"ui://2d9xdj6zab5pcji", "ui://2d9xdj6zab5pcji",
"ui://2d9xdj6znld2cjm", "ui://2d9xdj6znld2cjm",
"ui://m7iejg46hsbhhjn", "ui://m7iejg46hsbhhjn",
"ui://m7iejg46t1hqhxw",
"ui://2d9xdj6zlumrgj", "ui://2d9xdj6zlumrgj",
"ui://2d9xdj6znlwcgk", "ui://2d9xdj6znlwcgk",
"ui://2d9xdj6zl0lzb", "ui://2d9xdj6zl0lzb",
@ -47,7 +46,7 @@
"test.device": "720p Phone", "test.device": "720p Phone",
"canvasColor": 10066329, "canvasColor": 10066329,
"auxline2": true, "auxline2": true,
"doc.activeDoc": "ui://m7iejg46hsbhhjn", "doc.activeDoc": "ui://m7iejg4610snh5j",
"libview.twoColumn": false, "libview.twoColumn": false,
"libview.expandedNodes": [ "libview.expandedNodes": [
"27vd145b", "27vd145b",

View File

@ -4,11 +4,10 @@
<controller name="show_total" pages="0,,1," selected="0"/> <controller name="show_total" pages="0,,1," selected="0"/>
<controller name="menkan" pages="0,,1," selected="0"/> <controller name="menkan" pages="0,,1," selected="0"/>
<controller name="more" pages="0,,1," selected="0"/> <controller name="more" pages="0,,1," selected="0"/>
<controller name="select" pages="0,,1," selected="1"/>
<displayList> <displayList>
<image id="n64_hp03" name="n64" src="ilon7ib8" fileName="mgr/imgs/numberHpAlone/Rectangle 347.png" xy="-1,-1" size="1036,113"> <image id="n64_hp03" name="n64" src="ilon7ib8" fileName="mgr/imgs/numberHpAlone/Rectangle 347.png" xy="37,-1" size="998,113">
<gearXY controller="select" pages="1" values="-1,-1" default="37,-1"/> <gearXY controller="more" pages="1" values="0,-1" default="37,-1"/>
<gearSize controller="select" pages="1" values="1036,113,1,1" default="998,113,1,1"/> <gearSize controller="more" pages="1" values="1036,113,1,1" default="998,113,1,1"/>
<relation target="" sidePair="width-width"/> <relation target="" sidePair="width-width"/>
</image> </image>
<text id="n19_oj7k" name="tex_name" xy="111,16" size="194,37" group="n20_oj7k" font="Microsoft YaHei" fontSize="26" color="#444444" vAlign="middle" autoSize="shrink" bold="true" text="玩家名字"> <text id="n19_oj7k" name="tex_name" xy="111,16" size="194,37" group="n20_oj7k" font="Microsoft YaHei" fontSize="26" color="#444444" vAlign="middle" autoSize="shrink" bold="true" text="玩家名字">
@ -65,7 +64,7 @@
<relation target="" sidePair="width-width%,left-right%"/> <relation target="" sidePair="width-width%,left-right%"/>
</text> </text>
<component id="n65_xt5s" name="btn_more" src="xt5s7iia" fileName="mgr/component/member/partner/btn_mul.xml" xy="43,21" size="68,68"> <component id="n65_xt5s" name="btn_more" src="xt5s7iia" fileName="mgr/component/member/partner/btn_mul.xml" xy="43,21" size="68,68">
<gearXY controller="more" pages="0,1" values="43,21|25,21"/> <gearXY controller="more" pages="0,1" values="43,21|13,21"/>
<relation target="" sidePair="right-right%"/> <relation target="" sidePair="right-right%"/>
<Button icon="ui://m7iejg46xt5s7iic" selectedIcon="ui://m7iejg46xt5s7iib" controller="more" page="1"/> <Button icon="ui://m7iejg46xt5s7iic" selectedIcon="ui://m7iejg46xt5s7iib" controller="more" page="1"/>
</component> </component>