From 0414d9754bc61b5e496930ff184ede647ab4cc3a Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 11 十二月 2020 14:35:10 +0800
Subject: [PATCH] 2020-12-11-1
---
HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs | 471 +++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 399 insertions(+), 72 deletions(-)
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs
index e1c578d..ffbbe89 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs
@@ -1,4 +1,6 @@
锘縰sing System;
+using System.Threading;
+using HDL_ON.DAL.Server;
using HDL_ON.Entity;
using Shared;
@@ -15,6 +17,11 @@
LoadEvent_Logout();
LoadEvent_EditUserName();
LoadEvent_SkipInterpretationSettings();
+ LoadEvent_ChangeBindEmail();
+ LoadEvent_ChangeBindPhone();
+ LoadEvent_SkipModifyPassword();
+ LoadEvent_MyQRcode();
+ GetUserInfo();
}
/// <summary>
@@ -22,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>
@@ -32,73 +145,176 @@
/// </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();
+ 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>
@@ -114,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;
@@ -139,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,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()
@@ -199,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