From 30b5770f56f99c1f92e933ad31cf7d2af58b033c Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期三, 02 十二月 2020 16:31:48 +0800 Subject: [PATCH] 20201202 --- HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs | 360 +++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 294 insertions(+), 66 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs index a4f5353..fd746a4 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs @@ -1,4 +1,5 @@ 锘縰sing System; +using HDL_ON.DAL.Server; using HDL_ON.Entity; using Shared; @@ -15,6 +16,11 @@ LoadEvent_Logout(); LoadEvent_EditUserName(); LoadEvent_SkipInterpretationSettings(); + LoadEvent_ChangeBindEmail(); + LoadEvent_ChangeBindPhone(); + LoadEvent_SkipModifyPassword(); + LoadEvent_MyQRcode(); + GetUserInfo(); } /// <summary> @@ -29,33 +35,80 @@ } /// <summary> + /// 閫�鍑虹櫥褰曟搷浣� + /// </summary> + void Logout() + { + #region 淇濆瓨鏈湴鏁版嵁鑷虫枃浠跺す + string oldRegionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID.ToString()); + new System.Threading.Thread(() => + { + try + { + var backuplist = FileUtils.ReadFiles(); + 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); + } + } + } + catch (Exception ex) + { + MainPage.Log($"xxx:{ex.Message}"); + } + finally + { + FileUtils.DeleteAllFile(); + } + }).Start(); + #endregion + + //2.娉ㄩ攢鎺ㄩ�� + new HttpServerRequest().SignOutPush(); + //3.璺宠浆鐧诲綍椤甸潰 + UserInfo.Current.LastTime = DateTime.MinValue; + UserInfo.Current.SaveUserInfo(); + MainPage.GoLoginPage(UserInfo.Current); + DB_ResidenceData.residenceData.EixtAccount(); + } + + /// <summary> /// 閫�鍑鸿处鍙风櫥褰曚簨浠� /// </summary> void LoadEvent_Logout() { btnLogout.MouseUpEventHandler += (sender, e) => { - MainPage.LoginUser.lastTime = DateTime.MinValue; - MainPage.LoginUser.SaveUserInfo(); - MainPage.GoLoginPage(MainPage.LoginUser.accountString); - FileUtils.DeleteAllFile(); - DB_ResidenceData.residenceData.EixtAccount(); + Action okAction = () => + { + Logout(); + }; + new ConfirmDialog().ShowDialog(StringId.Tip, StringId.IfConfirmLogout, okAction); }; } /// <summary> /// 鍔犺浇鑳屾櫙鍥鹃�夋嫨鍖哄煙浜嬩欢鍒楄〃 /// </summary> - void LoadEvent_PictureOptionViewEventList() + void LoadEvent_PictureOptionViewEventList(FrameLayout baseView) { pictureOptionView.MouseUpEventHandler = (sender, e) => { - pictureOptionView.RemoveFromParent(); + baseView.RemoveFromParent(); }; - + baseView.MouseUpEventHandler = (sender, e) => + { + baseView.RemoveFromParent(); + }; btnCancel.MouseUpEventHandler = (sender, e) => { - pictureOptionView.RemoveFromParent(); + baseView.RemoveFromParent(); }; btnTakePicture.MouseUpEventHandler = (sender, e) => @@ -65,24 +118,35 @@ btnTakePicture.MouseUpEventHandler = (sender, e) => { btnTakePicture.IsSelected = false; - var pid = Guid.NewGuid(); - CropImage.TakePicture((Action<string>)((imagePath) => + //var pid = Guid.NewGuid(); + //CropImage.TakePicture((Action<string>)((imagePath) => + //{ + // if (imagePath != null) + // { + // UserInfo.Current.headImagePagePath = imagePath.ToString(); + // userHeadImageView.ImagePath = imagePath.ToString(); + // updataHeadImage(); + // new System.Threading.Thread(() => + // { + // new DAL.Server.HttpServerRequest().UpdataUserHeadImage(imagePath); + // }) + // { IsBackground = true }.Start(); + // UserInfo.Current.SaveUserInfo(); + // MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); + // } + //}), pid.ToString(), 1, 1); + + //鎷嶇収瑁佸壀 + var imageName = "headImage"; + //var imageName = Guid.NewGuid().ToString(); + CropImage.TakePicture((imagePath) => { - if (imagePath != null) - { - MainPage.LoginUser.headImagePagePath = imagePath.ToString(); - userHeadImageView.ImagePath = imagePath.ToString(); - updataHeadImage(); - new System.Threading.Thread(() => - { - new DAL.Server.HttpServerRequest().UpdataUserHeadImage(imagePath); - }) - { IsBackground = true }.Start(); - MainPage.LoginUser.SaveUserInfo(); - MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); - } - }), pid.ToString(), 1, 1); + CropImageCallBack(imagePath, imageName); + + }, imageName, 1, 1); + pictureOptionView.RemoveFromParent(); + baseView.RemoveFromParent(); }; btnAlbum.MouseUpEventHandler = (sender, e) => @@ -93,25 +157,85 @@ btnAlbum.MouseUpEventHandler = (sender, e) => { btnAlbum.IsSelected = false; - var pid = Guid.NewGuid(); + //var pid = Guid.NewGuid(); + //CropImage.SelectPicture((imagePath) => + //{ + // if (imagePath != null) + // { + // UserInfo.Current.headImagePagePath = imagePath.ToString(); + // userHeadImageView.ImagePath = imagePath.ToString(); + // updataHeadImage(); + + // new System.Threading.Thread(() => + // { + // new DAL.Server.HttpServerRequest().UpdataUserHeadImage(imagePath); + // }) + // { IsBackground = true }.Start(); UserInfo.Current.SaveUserInfo(); + // MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); + // } + //}, pid.ToString(), 1, 1); + + //浠庣浉鍐岄�夋嫨鍥剧墖瑁佸壀 + //var imageName = Guid.NewGuid().ToString(); + var imageName = "headImage"; CropImage.SelectPicture((imagePath) => { - if (imagePath != null) - { - MainPage.LoginUser.headImagePagePath = imagePath.ToString(); - userHeadImageView.ImagePath = imagePath.ToString(); - updataHeadImage(); + CropImageCallBack(imagePath, imageName); + }, imageName, 1, 1); - new System.Threading.Thread(() => - { - new DAL.Server.HttpServerRequest().UpdataUserHeadImage(imagePath); - }) - { IsBackground = true }.Start(); MainPage.LoginUser.SaveUserInfo(); - MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); - } - }, pid.ToString(), 1, 1); pictureOptionView.RemoveFromParent(); + baseView.RemoveFromParent(); }; + } + + /// <summary> + /// 瑁佸壀瀹岀収鐗囧洖璋冿紝缁熶竴澶勭悊 + /// </summary> + /// <param name="imagePath">瑁佸壀鍚庣殑鐪熷疄璺緞</param> + /// <param name="imageName">鑷畾涔夌殑鍥剧墖鍚嶇О</param> + void CropImageCallBack(string imagePath, string imageName) + { + if (string.IsNullOrEmpty(imagePath) == true) + { + return; + } + try + { + MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); + + var headPath = imagePath; +#if __IOS__ + + +#else + //1.浣跨敤鏂板悕瀛楋紝瑙e喅鐩稿悓璺緞涓嶅埛鏂板浘鐗囬棶棰� + imageName = Guid.NewGuid().ToString() + ".png"; + //1.2鍒犻櫎鍘熸潵鏈湴澶村儚 + System.IO.File.Delete(userHeadImageView.ImagePath); + Utlis.WriteLine("鍒犻櫎: " + userHeadImageView.ImagePath); + //1.3濡傛灉鏄畨鍗撻渶瑕佹嫹璐濆洖鏉PP鏍圭洰褰� + FileUtils.FileCopyToRootPath(imagePath, imageName); + System.IO.File.Delete(imagePath); + headPath = imageName; + MainPage.Log("SelectPicture 鏈�缁堣矾寰�: " + imageName); +#endif + + //娓呯┖鍘熸潵鍥剧墖 + userHeadImageView.ImagePath = "NULL"; + //鐢熸垚鍥剧墖 + UserInfo.Current.headImagePagePath = headPath; + userHeadImageView.ImagePath = headPath; + updataHeadImage(); + + new System.Threading.Thread(() => + { + new DAL.Server.HttpServerRequest().UpdataUserHeadImage(headPath); + }) + { IsBackground = true }.Start(); + UserInfo.Current.SaveUserInfo(); + } + catch { } + } /// <summary> @@ -127,10 +251,14 @@ { new Tip() { - CloseTime = 3, + CloseTime = 1, Text = Language.StringByID(StringId.UesrNameCannotBeEmpty), Direction = AMPopTipDirection.None, }.Show(bodyView); + return; + } + if (str == UserInfo.Current.userName) + { return; } var waitPage = new Loading(); @@ -139,11 +267,11 @@ { try { - var responsePack = new DAL.Server.HttpServerRequest().EditUserName(str); - if (responsePack.StateCode.ToUpper() == "SUCCESS") + var resultObj = new HttpServerRequest().EditUserName(str); + if (resultObj.Code == StateCode.SUCCESS) { - MainPage.LoginUser.userName = str; - MainPage.LoginUser.SaveUserInfo(); + UserInfo.Current.userName = str; + UserInfo.Current.SaveUserInfo(); Application.RunOnMainThread(() => { btnUserName.Text = str; @@ -152,27 +280,8 @@ } else { - var tipStr = "Server erorr"; - switch (responsePack.StateCode) - { - case "NoLogin": - tipStr = Language.StringByID(StringId.InvalidLoginCertificate); - break; - case "AccountNoExists": - tipStr = ""; - break; - } - Application.RunOnMainThread(() => - { - //鎻愮ず鍘熷洜 - var tip = new Tip() - { - Text = tipStr, - CloseTime = 3, - Direction = AMPopTipDirection.None - }; - tip.Show(bodyView); - }); + //澶辫触鎻愮ず + IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code); } } catch (Exception ex) @@ -189,12 +298,103 @@ }) { IsBackground = true }.Start(); }; - new PublicAssmebly().LoadDialog_EditParater(StringId.UesrName, MainPage.LoginUser.userName, callBack, StringId.UesrNameCannotBeEmpty, 0, new System.Collections.Generic.List<string>()); + new PublicAssmebly().LoadDialog_EditParater(StringId.ChangeName, UserInfo.Current.userName, callBack, StringId.UesrNameCannotBeEmpty, 0, new System.Collections.Generic.List<string>()); }; btnUserName.MouseUpEventHandler = eventHandler; btnEditUserNameIcon.MouseUpEventHandler = eventHandler; } + /// <summary> + /// 鍔犺浇鎴戠殑浜岀淮鐮佷簨浠� + /// </summary> + void LoadEvent_MyQRcode() + { + EventHandler<MouseEventArgs> eventHandler = (sender, e) => + { + //鎴戠殑浜岀淮鐮� + var aep = new MyQRCodePage(); + MainPage.BasePageView.AddChidren(aep); + aep.LoadPage(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + }; + _QRcodeView.MouseUpEventHandler = eventHandler; + btnQRcode.MouseUpEventHandler = eventHandler; + btnQRcodeIcon.MouseUpEventHandler = eventHandler; + btnQRcodeRight.MouseUpEventHandler = eventHandler; + } + + #region 淇敼缁戝畾閭 + /// <summary> + /// 淇敼缁戝畾閭 + /// </summary> + void LoadEvent_ChangeBindEmail() + { + EventHandler<MouseEventArgs> eventHandler = (sender, e) => + { + Action<string> action = (email) => + { + + btnUserEmailInfo.Text = GetBindAccountText(email); + }; + + if (CheckIfUnbound(btnUserEmailInfo.Text)) + { + //鏈粦瀹�,璺宠浆鏂扮粦瀹氶〉闈� + var aep = new NewBindAccountPage(); + MainPage.BasePageView.AddChidren(aep); + aep.LoadPage(action); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + else + { + var aep = new AccountBindInfoPage(); + MainPage.BasePageView.AddChidren(aep); + aep.LoadPage(action, 1, StringId.EmailAddress); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + + }; + btnUserEmailInfo.MouseUpEventHandler = eventHandler; + btnUserEmailRight.MouseUpEventHandler = eventHandler; + userEmailInfoView.MouseUpEventHandler = eventHandler; + } + + /// <summary> + /// 淇敼缁戝畾鎵嬫満 + /// </summary> + void LoadEvent_ChangeBindPhone() + { + EventHandler<MouseEventArgs> eventHandler = (sender, e) => + { + Action<string> action = (phone) => + { + btnUserPhoneInfo.Text = GetBindAccountText(phone); + }; + + if (CheckIfUnbound(btnUserPhoneInfo.Text)) + { + //鏈粦瀹�,璺宠浆鏂扮粦瀹氶〉闈� + var aep = new NewBindAccountPage(); + MainPage.BasePageView.AddChidren(aep); + aep.LoadPage(action, true); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + else + { + var aep = new AccountBindInfoPage(); + MainPage.BasePageView.AddChidren(aep); + aep.LoadPage(action, 2, StringId.PhoneInfo); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + + + }; + btnUserPhoneInfo.MouseUpEventHandler = eventHandler; + btnUserPhoneRight.MouseUpEventHandler = eventHandler; + userPhoneInfoView.MouseUpEventHandler = eventHandler; + } + #endregion #region 瑙i攣璁剧疆鍖哄煙 void LoadEvent_SkipInterpretationSettings() @@ -214,5 +414,33 @@ #endregion + /// <summary> + /// 璺宠浆淇敼瀵嗙爜鐣岄潰 + /// </summary> + void LoadEvent_SkipModifyPassword() + { + EventHandler<MouseEventArgs> eventHandler = (sender, e) => + { + var page = new ResetPasswordOptionPage(); + MainPage.BasePageView.AddChidren(page); + page.LoadPage(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + btnResetPasswordRight.MouseUpEventHandler = eventHandler; + btnResetPasswordText.MouseUpEventHandler = eventHandler; + resetPasswordView.MouseUpEventHandler = eventHandler; + } + + /// <summary> + /// + /// </summary> + void GetUserInfo() + { + new System.Threading.Thread(() => + { + new HttpServerRequest().GetUserInfo(); + }) + { IsBackground = true }.Start(); + } } } \ No newline at end of file -- Gitblit v1.8.0