From a1b0ab7044100daaa7e0f1da2d2ca45e38098963 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 29 三月 2021 09:13:25 +0800
Subject: [PATCH] 2021-3-29-2
---
HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs | 446 ++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 340 insertions(+), 106 deletions(-)
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs
index 0b08af1..6e178c4 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 System.Threading;
using HDL_ON.DAL.Server;
using HDL_ON.Entity;
using Shared;
@@ -20,7 +21,8 @@
LoadEvent_ChangeBindPhone();
LoadEvent_SkipModifyPassword();
LoadEvent_MyQRcode();
- GetUserInfo();
+ //GetUserInfo();
+ RefreshUserInfo();
}
/// <summary>
@@ -34,49 +36,110 @@
};
}
- /// <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
+ ///// <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.SaveUserInfo();
- MainPage.GoLoginPage(UserInfo.Current);
- DB_ResidenceData.residenceData.EixtAccount();
- }
+ // //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>
/// 閫�鍑鸿处鍙风櫥褰曚簨浠�
@@ -87,7 +150,7 @@
{
Action okAction = () =>
{
- Logout();
+ HDLCommon.Current.Logout();
};
new ConfirmDialog().ShowDialog(StringId.Tip, StringId.IfConfirmLogout, okAction);
};
@@ -118,29 +181,13 @@
btnTakePicture.MouseUpEventHandler = (sender, e) =>
{
btnTakePicture.IsSelected = false;
- //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 = Guid.NewGuid().ToString() + ".png";
+ //var imageName = "headImage";
+ var imageName = Guid.NewGuid().ToString();
CropImage.TakePicture((imagePath) =>
{
- CropImageCallBack(imagePath, imageName);
+ CropImageCallBack(imagePath);
}, imageName, 1, 1);
@@ -156,29 +203,12 @@
btnAlbum.MouseUpEventHandler = (sender, e) =>
{
btnAlbum.IsSelected = false;
- //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() + ".png";
+ var imageName = Guid.NewGuid().ToString();
+ //var imageName = "headImage";
CropImage.SelectPicture((imagePath) =>
{
- CropImageCallBack(imagePath, imageName);
+ CropImageCallBack(imagePath);
}, imageName, 1, 1);
pictureOptionView.RemoveFromParent();
@@ -187,36 +217,143 @@
}
/// <summary>
- ///
+ /// 瑁佸壀瀹岀収鐗囧洖璋冿紝缁熶竴澶勭悊
/// </summary>
- /// <param name="imagePath"></param>
- /// <param name="imageName"></param>
- void CropImageCallBack(string imagePath, string imageName)
+ /// <param name="selectImagePath">瑁佸壀鍚庣殑鐪熷疄璺緞</param>
+ void CropImageCallBack(string selectImagePath)
{
- if (string.IsNullOrEmpty(imagePath) == true)
+ if (string.IsNullOrEmpty(selectImagePath) == true)
{
return;
}
- //鍒犻櫎鍘熸潵鏈湴澶村儚
- System.IO.File.Delete(userHeadImageView.ImagePath);
- Utlis.WriteLine("鍒犻櫎: " + userHeadImageView.ImagePath);
- MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath);
- //userHeadImageView.ImageBytes = Shared.IO.FileUtils.ReadFile(imagePath);
- FileUtils.FileCopyToRootPath(imagePath, imageName);
- System.IO.File.Delete(imagePath);
- //鐢熸垚鍥剧墖
- //Shared.IO.FileUtils.WriteFileByBytes(imageName, userHeadImageView.ImageBytes);
- UserInfo.Current.headImagePagePath = imageName;
- userHeadImageView.ImagePath = imageName;
- updataHeadImage();
-
- new System.Threading.Thread(() =>
+ //涓婁紶鎴愬姛鍒板洖璋�
+ Action<string> uploadSuccessAction = (imageUrl) =>
{
- new DAL.Server.HttpServerRequest().UpdataUserHeadImage(imageName);
- })
- { IsBackground = true }.Start(); UserInfo.Current.SaveUserInfo();
+ //鐢熸垚鍥剧墖
+ 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));
+ //1.寮�濮嬩笂浼�
+ new Thread(() =>
+ {
+ try
+ {
+ //鐢熸垚涓婁紶澶村儚鍙傛暟
+ var uploadImageObj = new UploadImageObj()
+ {
+ prefix = "Icon" + Utlis.GetTimestamp(),
+ uid = userId,
+ fileName = ImageUtlis.HEADIMAGE,
+ content = imageBytes,
+ };
+
+ var imageUrl = ImageUtlis.Current.UploadImage(uploadImageObj);
+ if (!string.IsNullOrEmpty(imageUrl) && imageUrl.Contains(userId))
+ {
+ //2.涓婁紶鎴愬姛
+ //2.1鏇存柊鏈�鏂板浘鐗囪矾寰勫埌浜戠
+ var resultObj = UpdateMemberHeadIcon(imageUrl);
+ if (resultObj.Code == StateCode.SUCCESS)
+ {
+ //3.鏇存柊鏈�鏂板浘鐗囪矾寰勫埌浜戠鎴愬姛
+ Application.RunOnMainThread(() =>
+ {
+ //Utlis.WriteLine("涓婁紶鎴愬姛锛�" + imageUrl);
+ //1.2濡傛灉鏄嚜瀹氫箟鍥剧墖鍒犻櫎涔嬪墠鐨�
+ if (!string.IsNullOrEmpty(imageView.ImagePath) && !imageView.ImagePath.Contains("LoginIcon/2.png"))
+ {
+ //Utlis.WriteLine("鍒犻櫎: " + imageView.ImagePath);
+ System.IO.File.Delete(imageView.ImagePath);
+ }
+ //閲嶅懡鍚嶄繚瀛�
+ ImageUtlis.Current.WriteFileByBytes(imageUrl, imageBytes);
+ imageView.ImagePath = imageUrl;
+ imageView.ImageBytes = imageBytes;
+ //涓婁紶鎴愬姛
+ Utlis.ShowTip(Language.StringByID(StringId.UploadSuccessfully));
+ uploadSuccessAction?.Invoke(imageUrl);
+ });
+ }
+ else
+ {
+ //鏇存柊鏈�鏂板浘鐗囪矾寰勫埌浜戠澶辫触
+ Application.RunOnMainThread(() =>
+ {
+ //淇濆瓨鐢ㄦ埛澶村儚澶辫触
+ Utlis.ShowTip(Language.StringByID(StringId.FailedToSaveUserImage));
+ });
+
+ }
+
+ }
+ 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>
+ /// 鏇存柊鐢ㄦ埛澶村儚
+ /// </summary>
+ /// <param name="userName"></param>
+ /// <returns></returns>
+ public ResponsePackNew UpdateMemberHeadIcon(string memberHeadIcon)
+ {
+ var requestJson = HttpUtil.GetSignRequestJson(new UpdateMemberHeadIconRes()
+ {
+ memberHeadIcon = memberHeadIcon
+ });
+ return HttpUtil.RequestHttpsPost(NewAPI.API_POST_Member_UpdateMemberInfo, requestJson);
}
/// <summary>
@@ -243,6 +380,7 @@
return;
}
var waitPage = new Loading();
+ bodyView.AddChidren(waitPage);
waitPage.Start(Language.StringByID(StringId.PleaseWait));
new System.Threading.Thread(() =>
{
@@ -273,7 +411,11 @@
{
Application.RunOnMainThread(() =>
{
- waitPage.Hide();
+ if (waitPage != null)
+ {
+ waitPage.RemoveFromParent();
+ waitPage = null;
+ }
});
}
})
@@ -423,5 +565,97 @@
})
{ IsBackground = true }.Start();
}
+
+
+ /// <summary>
+ /// 2020-12-15 澧炲姞鍒锋柊鐢ㄦ埛淇℃伅
+ /// </summary>
+ /// <returns></returns>
+ public void RefreshUserInfo()
+ {
+ var waitPage = new Loading();
+ bodyView.AddChidren(waitPage);
+ waitPage.Start(Language.StringByID(StringId.PleaseWait));
+
+ new Thread(() =>
+ {
+ try
+ {
+ var requestJson = HttpUtil.GetSignRequestJson(new NullObj());
+ var resultObj = HttpUtil.RequestHttpsPost(NewAPI.API_POST_Member_GetMemberInfo, requestJson);
+ if (resultObj.Code == StateCode.SUCCESS)
+ {
+ var info = Newtonsoft.Json.JsonConvert.DeserializeObject<MemberInfoRes>(resultObj.Data.ToString());
+
+ if (!string.IsNullOrEmpty(info.memberPhonePrefix))
+ {
+ UserInfo.Current.areaCode = info.memberPhonePrefix;
+ }
+
+ var headImagePagePath = "";
+ //2020-12-15 淇敼澶村儚鏂规
+ if (!string.IsNullOrEmpty(info.memberHeadIcon))
+ {
+ var headImageBytes = ImageUtlis.Current.DownHeadImageByImageKey(info.memberHeadIcon);
+
+ if (headImageBytes != null && headImageBytes.Length > 0)
+ {
+ headImagePagePath = info.memberHeadIcon;
+ }
+ }
+
+ Application.RunOnMainThread(() =>
+ {
+ if (UserInfo.Current.userEmailInfo != info.memberEmail)
+ {
+ //鏇存柊閭
+ UserInfo.Current.userEmailInfo = info.memberEmail;
+ btnUserEmailInfo.Text = GetBindAccountText(UserInfo.Current.userEmailInfo);
+ }
+
+ if (UserInfo.Current.userMobileInfo != info.memberPhone)
+ {
+ //鏇存柊鎵嬫満鍙�
+ UserInfo.Current.userMobileInfo = info.memberPhone;
+ btnUserPhoneInfo.Text = GetBindAccountText(UserInfo.Current.userMobileInfo);
+ }
+
+ if (UserInfo.Current.userName != info.memberName)
+ {
+ //鏇存柊鐢ㄦ埛鍚嶅瓧
+ UserInfo.Current.userName = info.memberName;
+ btnUserName.Text = string.IsNullOrEmpty(UserInfo.Current.userName) ? Language.StringByID(StringId.UsersWhoNameIsEmpty) : UserInfo.Current.userName;
+ updataUserName();
+ }
+
+ if (!string.IsNullOrEmpty(headImagePagePath) && UserInfo.Current.headImagePagePath != headImagePagePath)
+ {
+ //鏇存柊澶村儚
+ UserInfo.Current.headImagePagePath = headImagePagePath;
+ userHeadImageView.ImagePath = UserInfo.Current.headImagePagePath;
+ updataHeadImage();
+ }
+
+ UserInfo.Current.SaveUserInfo();
+ Utlis.WriteLine("鍒锋柊鐢ㄦ埛淇℃伅鎴愬姛銆�");
+ });
+ }
+ }
+ catch { }
+ finally
+ {
+ Application.RunOnMainThread(() =>
+ {
+ if (waitPage != null)
+ {
+ waitPage.RemoveFromParent();
+ waitPage = null;
+ }
+ });
+ }
+
+ })
+ { IsBackground = true }.Start();
+ }
}
}
\ No newline at end of file
--
Gitblit v1.8.0