From e87985ec1dcb69beedaf9f95e8e7aba14b7c08d6 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期三, 09 十二月 2020 18:50:14 +0800 Subject: [PATCH] 2020-12-09 1.信息中心,增加下划线和点击Alter提醒详情。 --- HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs | 471 ++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 400 insertions(+), 71 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs index 285c2f0..ffbbe89 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs @@ -1,4 +1,7 @@ 锘縰sing System; +using System.Threading; +using HDL_ON.DAL.Server; +using HDL_ON.Entity; using Shared; namespace HDL_ON.UI @@ -14,6 +17,11 @@ LoadEvent_Logout(); LoadEvent_EditUserName(); LoadEvent_SkipInterpretationSettings(); + LoadEvent_ChangeBindEmail(); + LoadEvent_ChangeBindPhone(); + LoadEvent_SkipModifyPassword(); + LoadEvent_MyQRcode(); + GetUserInfo(); } /// <summary> @@ -21,9 +29,115 @@ /// </summary> void LoadEvent_ChangeHeadImageView() { - userHeadImageView.MouseUpEventHandler = (sender, e) => { + userHeadImageView.MouseUpEventHandler = (sender, e) => + { LoadPictureOptionView(); }; + } + + ///// <summary> + ///// 閫�鍑虹櫥褰曟搷浣� + ///// </summary> + //void Logout() + //{ + // #region 淇濆瓨鏈湴鏁版嵁鑷虫枃浠跺す + // string oldRegionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID.ToString()); + // new System.Threading.Thread(() => + // { + // try + // { + // var backuplist = FileUtils.ReadFiles(); + // //绉诲姩鏂囦欢 + // 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); + // } + // } + // FileUtils.DeleteRegionFiles(oldRegionRootPath); + // } + // 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.headImagePagePath = "LoginIcon/2.png";//閲嶇疆鐢ㄦ埛澶村儚 + // UserInfo.Current.SaveUserInfo(); + // MainPage.GoLoginPage(UserInfo.Current); + // DB_ResidenceData.residenceData.EixtAccount(); + //} + + /// <summary> + /// 閫�鍑虹櫥褰曟搷浣� + /// </summary> + public void LogoutNew() + { + //鍔犺浇Loading鏁堟灉 + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + + new Thread(() => + { + try + { + #region 淇濆瓨鏈湴鏁版嵁鑷虫枃浠跺す + string oldRegionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID.ToString()); + //娓呯┖涔嬪墠鐨勪綇瀹呮枃浠� + FileUtils.DeleteRegionFiles(oldRegionRootPath); + var backuplist = FileUtils.ReadFiles(); + //绉诲姩鏂囦欢 + 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); + } + } + #endregion + } + catch (Exception ex) + { + MainPage.Log($"xxx:{ex.Message}"); + } + finally + { + FileUtils.DeleteAllFile(); + //2.娉ㄩ攢鎺ㄩ�� + new HttpServerRequest().SignOutPush(); + //3.璺宠浆鐧诲綍椤甸潰 + UserInfo.Current.LastTime = DateTime.MinValue; + UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//閲嶇疆鐢ㄦ埛澶村儚 + UserInfo.Current.SaveUserInfo(); + Shared.Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + + MainPage.GoLoginPage(UserInfo.Current); + DB_ResidenceData.residenceData.EixtAccount(); + + }); + } + }).Start(); } /// <summary> @@ -31,72 +145,176 @@ /// </summary> void LoadEvent_Logout() { - btnLogout.MouseUpEventHandler += (sender, e) => { - MainPage.LoginUser.lastTime = DateTime.MinValue; - MainPage.LoginUser.SaveUserInfo(); - MainPage.GoLoginPage(MainPage.LoginUser.accountString); + btnLogout.MouseUpEventHandler += (sender, e) => + { + Action okAction = () => + { + LogoutNew(); + }; + 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) => { - var pid = Guid.NewGuid(); - CropImage.TakePicture((Action<string>)((imagePath) => + btnTakePicture.IsSelected = true; + }; + btnTakePicture.MouseUpEventHandler = (sender, e) => + { + btnTakePicture.IsSelected = false; + + //鎷嶇収瑁佸壀 + //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, 1, 1); + pictureOptionView.RemoveFromParent(); + baseView.RemoveFromParent(); }; btnAlbum.MouseUpEventHandler = (sender, e) => { - var pid = Guid.NewGuid(); + btnAlbum.IsSelected = true; + }; + + btnAlbum.MouseUpEventHandler = (sender, e) => + { + btnAlbum.IsSelected = false; + //浠庣浉鍐岄�夋嫨鍥剧墖瑁佸壀 + 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, 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="selectImagePath">瑁佸壀鍚庣殑鐪熷疄璺緞</param> + void CropImageCallBack(string selectImagePath) + { + if (string.IsNullOrEmpty(selectImagePath) == true) + { + return; + } + + //涓婁紶鎴愬姛鍒板洖璋� + Action<string> uploadSuccessAction = (imageUrl) => + { + //鐢熸垚鍥剧墖 + UserInfo.Current.headImagePagePath = imageUrl; + updataHeadImage(); + UserInfo.Current.SaveUserInfo(); + }; + + //涓婁紶鍥剧墖鍒颁簯绔� + UploadImage(selectImagePath, userHeadImageView, UserInfo.Current.ID, uploadSuccessAction); + } + + /// <summary> + /// 涓婁紶鍥剧墖鏂规硶 + /// </summary> + /// <param name="selectImagePath">瑁佸壀鍚庣殑鍥剧墖璺緞</param> + /// <param name="imageView"></param> + /// <param name="uploadSuccessAction"></param> + void UploadImage(string selectImagePath, ImageView imageView, string userId, Action<string> uploadSuccessAction) + { + try + { + MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + selectImagePath); + //1.璇诲彇瑁佸壀鍚庣殑鍥剧墖锛岀劧鍚庡垹闄� + var imageBytes = Shared.IO.FileUtils.ReadFile(selectImagePath); + System.IO.File.Delete(selectImagePath); + + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + //寮�濮嬩笂浼� + new Thread(() => + { + try + { + var uploadImageObj = ImageUtlis.Current.GetHeadImageUploadKeyObj(userId); + uploadImageObj.content = imageBytes; + var imageUrl = ImageUtlis.Current.UploadImage(uploadImageObj); + if (!string.IsNullOrEmpty(imageUrl) && imageUrl.Contains(userId)) + { + //涓婁紶鎴愬姛 + Application.RunOnMainThread(() => + { + Utlis.WriteLine("涓婁紶鎴愬姛锛�" + imageUrl); + //1.2濡傛灉鏄嚜瀹氫箟鍥剧墖鍒犻櫎涔嬪墠鐨� + if (!imageView.ImagePath.Contains("LoginIcon/2.png")) + { + Utlis.WriteLine("鍒犻櫎: " + imageView.ImagePath); + System.IO.File.Delete(imageView.ImagePath); + } + //閲嶅懡鍚嶄繚瀛� + FileUtils.WriteFileByBytes(imageUrl, imageBytes); + imageView.ImagePath = null; + imageView.ImageBytes = imageBytes; + //涓婁紶鎴愬姛 + Utlis.ShowTip(Language.StringByID(StringId.UploadSuccessfully)); + uploadSuccessAction?.Invoke(imageUrl); + }); + } + else + { + //涓婁紶澶辫触 + Application.RunOnMainThread(() => + { + //涓婁紶澶辫触 + Utlis.ShowTip(Language.StringByID(StringId.UploadFailed)); + }); + } + + } + catch (Exception ex) + { + } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + } + }) + { IsBackground = true }.Start(); + } + catch { } } /// <summary> @@ -112,23 +330,28 @@ { 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(); + bodyView.AddChidren(waitPage); waitPage.Start(Language.StringByID(StringId.PleaseWait)); new System.Threading.Thread(() => { 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; @@ -137,47 +360,125 @@ } 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) + } + catch (Exception ex) { MainPage.Log($"update user name error : {ex.Message}"); } finally { - Application.RunOnMainThread(() => { - waitPage.Hide(); + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } }); } }) { IsBackground = true }.Start(); }; - new PublicAssmebly().LoadDialog_EditParater(StringId.UesrName, MainPage.LoginUser.userName, callBack); + 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() @@ -197,5 +498,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