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 |  426 ++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 385 insertions(+), 41 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs
index 0820be1..fd746a4 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 HDL_ON.DAL.Server;
+using HDL_ON.Entity;
 using Shared;
 
 namespace HDL_ON.UI
@@ -12,6 +14,13 @@
         {
             LoadEvent_ChangeHeadImageView();
             LoadEvent_Logout();
+            LoadEvent_EditUserName();
+            LoadEvent_SkipInterpretationSettings();
+            LoadEvent_ChangeBindEmail();
+            LoadEvent_ChangeBindPhone();
+            LoadEvent_SkipModifyPassword();
+            LoadEvent_MyQRcode();
+            GetUserInfo();
         }
 
         /// <summary>
@@ -19,9 +28,54 @@
         /// </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();
+                    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>
@@ -29,74 +83,364 @@
         /// </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 = () =>
+                {
+                    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) =>
             {
-                var pid = Guid.NewGuid();
-                CropImage.TakePicture((Action<string>)((imagePath) =>
+                btnTakePicture.IsSelected = true;
+            };
+            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 = "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) =>
             {
-                var pid = Guid.NewGuid();
+                btnAlbum.IsSelected = true;
+            };
+
+            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();
+                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>
+        /// 鍔犺浇淇敼鐢ㄦ埛鍚嶇О浜嬩欢
+        /// </summary>
+        void LoadEvent_EditUserName()
+        {
+            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
+            {
+                Action<string> callBack = (str) =>
+                {
+                    if (string.IsNullOrEmpty(str))
+                    {
+                        new Tip()
+                        {
+                            CloseTime = 1,
+                            Text = Language.StringByID(StringId.UesrNameCannotBeEmpty),
+                            Direction = AMPopTipDirection.None,
+                        }.Show(bodyView);
+                        return;
+                    }
+                    if (str == UserInfo.Current.userName)
+                    {
+                        return;
+                    }
+                    var waitPage = new Loading();
+                    waitPage.Start(Language.StringByID(StringId.PleaseWait));
+                    new System.Threading.Thread(() =>
+                    {
+                        try
+                        {
+                            var resultObj = new HttpServerRequest().EditUserName(str);
+                            if (resultObj.Code == StateCode.SUCCESS)
+                            {
+                                UserInfo.Current.userName = str;
+                                UserInfo.Current.SaveUserInfo();
+                                Application.RunOnMainThread(() =>
+                                {
+                                    btnUserName.Text = str;
+                                    updataUserName();
+                                });
+                            }
+                            else
+                            {
+                                //澶辫触鎻愮ず
+                                IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code);
+                            }
+                        }
+                        catch (Exception ex)
+                        {
+                            MainPage.Log($"update user name error : {ex.Message}");
+                        }
+                        finally
+                        {
+                            Application.RunOnMainThread(() =>
+                            {
+                                waitPage.Hide();
+                            });
+                        }
+                    })
+                    { IsBackground = true }.Start();
+                };
+                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()
+        {
+            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
+            {
+                var page = new AppUnlockSettingsPage();
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+
+            btnInterpretationSettingsRight.MouseUpEventHandler = eventHandler;
+            btnInterpretationSettingsTitle.MouseUpEventHandler = eventHandler;
+            btnInterpretationSettingsTip.MouseUpEventHandler = eventHandler;
+        }
+
+        #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