local UIOfficialPositionAdmissionResult = UIViewClass() function UIOfficialPositionAdmissionResult:OnOpened(context) UIUtils.SetActive(self.section_Mine.gameObject, false) self:RegistSystemEvent(EventID.UI_UpdateAdmissionResult, self.UpdateInfo) self.title = context[1] UIUtils.SetLabel(self.UICommonPopUp.txt_Title, string.FormatByIdsId(Const_IDS.IDS_OfficialPosition_AdmissionResults, CTL.OfficialPosition.GetColorTitleFullTxt(self.title))) MDL.OfficialPosition.GetPromotionMemberInfoReq(self.title) end function UIOfficialPositionAdmissionResult:UpdateInfo(info) local myIndex = 0 for i, v in ipairs(info) do if v.PersonalInformation.acid == BattleDataGetter.GetAcID() then self.MyInfo = v myIndex = i end self.LoopScroll_Main_OfficialPositionAdmissionResult:AddData(v, 0) end if self.MyInfo then UIUtils.SetActive(self.section_Mine.gameObject, true) self:LoadCompData(self.section_Mine, self.MyInfo, myIndex) end end function UIOfficialPositionAdmissionResult:OnCellInit(scrollRect, index, cellTable, data) UIUtils.SetActive(cellTable.img_Bg2, index % 2 == 1) self:LoadCompData(cellTable, data, index + 1) end function UIOfficialPositionAdmissionResult:OnCellClicked(scrollRect, index, cellTable, target, data) if target == cellTable.section_Zhanji then CTL.OfficialPosition.ShowRecordBattleResult(data) elseif target == cellTable.img_BgPlayer then CTL.PlayerInteract.OpenFriendInteractView(data.PersonalInformation.acid) end end function UIOfficialPositionAdmissionResult:LoadCompData(comp, info, index) local personalInfo = info.PersonalInformation if personalInfo.acid == BattleDataGetter.GetAcID() then comp.txt_Name.text = UTL.Color.FormatGreenColor(personalInfo.name) else comp.txt_Name.text = personalInfo.name end CTL.Character.SetPortraitAndFrame(comp.UIHeroHead150, personalInfo.portraitId, personalInfo.frameId, personalInfo.level) if index <= 3 then UIUtils.SetActive(comp.img_Rank, true) comp.section_Rank:SetState(index - 1) comp.txt_Rank.text = nil else UIUtils.SetActive(comp.img_Rank, false) comp.txt_Rank.text = index end comp.txt_Zhanji.text = string.FormatByIdsId(Const_IDS.IDS_OfficialPosition_VictoryAndDefeat, info.winNums, info.failNums) local isPromotion = CTL.OfficialPosition.CheckIfPromotion(self.title, index) if isPromotion then comp.section_Jieguo:SetState(0) else comp.section_Jieguo:SetState(1) end end function UIOfficialPositionAdmissionResult:OnBackButtonPressed() self:OnButtonClicked(self.UICommonPopUp.btn_Close) end function UIOfficialPositionAdmissionResult:OnButtonClicked(comp) if comp == self.UICommonPopUp.btn_Close then self:CloseView() elseif comp == self.section_Mine.section_Zhanji then if self.MyInfo then CTL.OfficialPosition.ShowRecordBattleResult(self.MyInfo) end end end return UIOfficialPositionAdmissionResult