From 23c075a9c27946773feccf05abc90489a6bf5203 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期一, 06 七月 2020 15:58:53 +0800 Subject: [PATCH] 20200706 --- HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs | 93 ++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 80 insertions(+), 13 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs index 71400ce..77e9d49 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs @@ -15,11 +15,11 @@ { LoadEvent_SwitchHome(); LoadEvent_GoPersonalDataPage(); - if (MainPage.LoginUser.accountType == 0) + if (!DB_ResidenceData.residenceData.residecenInfo.IsOthreShare) { LoadEvent_SkipResdentialManagePage(); } - if (MainPage.LoginUser.accountType == 0) + if (!DB_ResidenceData.residenceData.residecenInfo.IsOthreShare) { LoadEvent_GoMemberManagement(); } @@ -102,13 +102,11 @@ }; #endif - - - btnCurResidenceName.MouseUpEventHandler += (sender, e) => { + EventHandler<MouseEventArgs> eventHandler = (sender, e) => { var dialog = new Dialog(); var dialogBody = new FrameLayout(); dialog.AddChidren(dialogBody); - dialogBody.MouseUpEventHandler += (sender1, e1) => { + dialogBody.MouseUpEventHandler = (sender1, e1) => { dialog.Close(); }; @@ -144,7 +142,7 @@ TextSize = home.Name.Length > 14 ? CSS.CSS_FontSize.TextFontSize : CSS.CSS_FontSize.SubheadingFontSize, IsSelected = DB_ResidenceData.residenceData.residecenInfo.RegionID == home.RegionID, IsMoreLines = true, - Tag = MainPage.LoginUser.regionList.IndexOf(home) + Tag = home.RegionID }; contentView.AddChidren(btnHomeName); //if(btnHomeName) @@ -162,17 +160,86 @@ btnHomeName.MouseUpEventHandler += (senderH, en) => { - var regionIndex = (int)btnHomeName.Tag; + var regionId = (string)btnHomeName.Tag; dialog.Close(); - - DB_ResidenceData.residenceData.CurReginIndex = regionIndex; - btnCurResidenceName.Text = DB_ResidenceData.residenceData.residecenInfo.Name; - OnAppConfig.Instance.SaveUserConfig(); + LoadEvent_ChangeCurHome(MainPage.LoginUser.regionList.Find((obj) => obj.RegionID == regionId)); + }; } dialog.Show(); }; + + btnResidenceDownIcon.MouseUpEventHandler = eventHandler; + btnCurResidenceName.MouseUpEventHandler = eventHandler; + } + + void LoadEvent_ChangeCurHome(RegionInfoRes homeTemp) + { + if (DB_ResidenceData.residenceData.CurReginID == homeTemp.RegionID) + { + return; + } + var waitPage = new Loading(); + new System.Threading.Thread(() => + { + try + { + var backuplist = FileUtils.ReadFiles(); + int index = 0; + string oldRegionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID.ToString()); + FileUtils.DeleteRegionFiles(oldRegionRootPath); + foreach (var fileName in backuplist) + { + System.IO.FileInfo fileInfo = new System.IO.FileInfo(FileUtils.RootPath + fileName); + if (fileInfo.Exists) + { + fileInfo.MoveTo(oldRegionRootPath + fileName); + MainPage.Log("move file : " + fileName); + } + index++; + Application.RunOnMainThread(() => + { + int pro = (int)(index * 1.0 / backuplist.Count * 50); + waitPage.Text = pro.ToString() + "%"; + }); + } + FileUtils.DeleteAllFile(); + //鍊掑嚭鏂颁綇瀹呮暟鎹� + string newRegionRootPath = FileUtils.CreateRegionBackup(homeTemp.RegionID.ToString()); + FileUtils.RestoreRegionFiles(newRegionRootPath); + MainPage.LoginUser.SaveUserInfo(); + DB_ResidenceData.residenceData.EixtAccount(); + DB_ResidenceData.residenceData.CurReginID = homeTemp.RegionID; + OnAppConfig.Instance.SaveUserConfig(); + DB_ResidenceData.InitRoomFunction(); + DB_ResidenceData.residenceData.SaveResidenceData(); + Application.RunOnMainThread(() => + { + btnCurResidenceName.Text = DB_ResidenceData.residenceData.residecenInfo.Name; + //new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.SwitchRegionSuccessfully), + // Language.StringByID(StringId.Close)).Show(); + }); + } + catch (Exception ex) + { + Application.RunOnMainThread(() => + { + new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.OperationFailed), + Language.StringByID(StringId.Close)).Show(); + }); + MainPage.Log(ex.Message); + } + finally + { + Application.RunOnMainThread(() => + { + waitPage.Hide(); + waitPage.RemoveFromParent(); + }); + } + }) + { IsBackground = true }.Start(); } #endregion @@ -180,7 +247,7 @@ #region 浣忓畢绠$悊 void LoadEvent_SkipResdentialManagePage() { - if (MainPage.LoginUser.accountType == 0) + if (!DB_ResidenceData.residenceData.residecenInfo.IsOthreShare) { EventHandler<MouseEventArgs> eventHandler = (sender, e) => { -- Gitblit v1.8.0