From 7d9e5d946d08f0b53ff25d1c25dcf83efb68b734 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期二, 15 十二月 2020 09:08:59 +0800
Subject: [PATCH] 20201215-1

---
 HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockSettingsPageBLL.cs |  169 +++++++++++++++++++++++++++++++++----------------------
 1 files changed, 101 insertions(+), 68 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockSettingsPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockSettingsPageBLL.cs
index 31f34f9..01125ba 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockSettingsPageBLL.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockSettingsPageBLL.cs
@@ -14,10 +14,10 @@
             refreshAction = () =>
             {
                 LoadView_UnlockView();
-                //fingerprintUnlockDiv.Visible = sTouchID && (MainPage.LoginUser.appUnlockType.Contains("1") || MainPage.LoginUser.appUnlockType.Contains("2"));
-                //faceIdUnlockDiv.Visible = sFaceID && (MainPage.LoginUser.appUnlockType.Contains("1") || MainPage.LoginUser.appUnlockType.Contains("2"));
-                //btnFingerprintUnlockSwtichIcon.IsSelected = MainPage.LoginUser.appUnlockType.Contains("3");
-                //btnFaceIdUnlockSwtichIcon.IsSelected = MainPage.LoginUser.appUnlockType.Contains("4");
+                //fingerprintUnlockDiv.Visible = sTouchID && (UserInfo.Current.appUnlockType.Contains("1") || UserInfo.Current.appUnlockType.Contains("2"));
+                //faceIdUnlockDiv.Visible = sFaceID && (UserInfo.Current.appUnlockType.Contains("1") || UserInfo.Current.appUnlockType.Contains("2"));
+                //btnFingerprintUnlockSwtichIcon.IsSelected = UserInfo.Current.appUnlockType.Contains("3");
+                //btnFaceIdUnlockSwtichIcon.IsSelected = UserInfo.Current.appUnlockType.Contains("4");
             };
         }
 
@@ -37,10 +37,10 @@
 
                     btnTipMsg.TextID = StringId.UnprotectedTipMsg;
 
-                    MainPage.LoginUser.appUnlockPage = new System.Collections.Generic.List<string>();
-                    MainPage.LoginUser.appUnlockType = new System.Collections.Generic.List<string>();
-                    MainPage.LoginUser.appUnlockPasswrod = "";
-                    MainPage.LoginUser.SaveUserInfo();
+                    UserInfo.Current.appUnlockPage = new System.Collections.Generic.List<string>();
+                    UserInfo.Current.appUnlockType = new System.Collections.Generic.List<string>();
+                    UserInfo.Current.appUnlockPasswrod = "";
+                    UserInfo.Current.SaveUserInfo();
                     unlockOptionView.Visible = false;
                     refreshAction();
                 };
@@ -48,7 +48,7 @@
                     if (!btnUnprotectedBg.IsSelected)
                     {
                         //1:楠岃瘉鎸囩汗
-                        if (MainPage.LoginUser.appUnlockType.Contains("3"))
+                        if (UserInfo.Current.appUnlockType.Contains("3"))
                         {
                             TouchIDUtils.Instance.showTouchIDWithDescribe(null, Language.StringByID(StringId.PleaseVerifyTheFingerprint));
                             TouchIDUtils.Instance.OnHDLTouchIDStateBackEvent = (sender1, e) =>
@@ -65,16 +65,16 @@
                                 else if (e == TouchIDUtils.TouchIDState.InputPassword || e == TouchIDUtils.TouchIDState.TouchIDLockout)
                                 {
                                     MainPage.Log("KK:鐢ㄦ埛閫夋嫨鎵嬪姩杈撳叆瀵嗙爜");
-                                    if (MainPage.LoginUser.appUnlockType.Contains("1"))
+                                    if (UserInfo.Current.appUnlockType.Contains("1"))
                                     {
-                                        var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, action);
+                                        var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, action);
                                         MainPage.BasePageView.AddChidren(page);
                                         page.LoadPage("4");
                                         MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                                     }
-                                    else if (MainPage.LoginUser.appUnlockType.Contains("1"))
+                                    else if (UserInfo.Current.appUnlockType.Contains("1"))
                                     {
-                                        var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, action);
+                                        var page = new AppUnlockGesturePage(UserInfo.Current.appUnlockPasswrod, action);
                                         MainPage.BasePageView.AddChidren(page);
                                         page.LoadPage("4");
                                         MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
@@ -82,21 +82,21 @@
                                 }
                             };
                         }
-                        else if (MainPage.LoginUser.appUnlockType.Contains("4"))
+                        else if (UserInfo.Current.appUnlockType.Contains("4"))
                         {
                             //Face ID楠岃瘉
                             //
                         }
-                        else if (MainPage.LoginUser.appUnlockType.Contains("1"))
+                        else if (UserInfo.Current.appUnlockType.Contains("1"))
                         {
-                            var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, action);
+                            var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, action);
                             MainPage.BasePageView.AddChidren(page);
                             page.LoadPage("4");
                             MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                         }
-                        else if (MainPage.LoginUser.appUnlockType.Contains("2"))
+                        else if (UserInfo.Current.appUnlockType.Contains("2"))
                         {
-                            var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, action);
+                            var page = new AppUnlockGesturePage(UserInfo.Current.appUnlockPasswrod, action);
                             MainPage.BasePageView.AddChidren(page);
                             page.LoadPage("4");
                             MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
@@ -104,9 +104,9 @@
                     }
                 };
 
-                if (MainPage.LoginUser.appUnlockPasswrod != "")
+                if (UserInfo.Current.appUnlockPasswrod != "")
                 {
-                    new PublicAssmebly().TipMsg(StringId.Tip, StringId.TipTurnOffUnlockingSetting, action1);
+                    new PublicAssmebly().TipOptionMsg(StringId.Tip, StringId.TipTurnOffUnlockingSetting, action1);
                 }
                 else
                 {
@@ -120,35 +120,40 @@
             EventHandler<MouseEventArgs> eventHandler2 = (sender, e) =>
             {
                 bool result = !btnStartupBg.IsSelected;
+                if (!result)
+                {
+                    //濡傛灉鍚姩瑙i攣 涓嶈兘鍙栨秷鍚姩瑙i攣
+                    if (!CheckIfCanDeselect("1")) return;
+                }
                 btnStartupBg.IsSelected = btnStartupSelectionIcon.IsSelected = btnStartupSelectionTip.IsSelected = result;
 
                 btnTipMsg.Text = Language.StringByID(StringId.AtStartupTipMsg);
                 if (result)
                 {
                     btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = false;
-                    if (!MainPage.LoginUser.appUnlockPage.Contains("1"))
+                    if (!UserInfo.Current.appUnlockPage.Contains("1"))
                     {
-                        MainPage.LoginUser.appUnlockPage.Add("1");
-                        if (MainPage.LoginUser.appUnlockPasswrod != "")
-                            MainPage.LoginUser.SaveUserInfo();
+                        UserInfo.Current.appUnlockPage.Add("1");
+                        if (UserInfo.Current.appUnlockPasswrod != "")
+                            UserInfo.Current.SaveUserInfo();
                     }
                     unlockOptionView.Visible = true;
                 }
                 else
                 {
-                    if (MainPage.LoginUser.appUnlockPage.Contains("1"))
+                    if (UserInfo.Current.appUnlockPage.Contains("1"))
                     {
-                        MainPage.LoginUser.appUnlockPage.Remove("1");
+                        UserInfo.Current.appUnlockPage.Remove("1");
                     }
-                    if (MainPage.LoginUser.appUnlockPage.Count == 0)
+                    if (UserInfo.Current.appUnlockPage.Count == 0)
                     {
                         btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = true;
                         btnTipMsg.TextID = StringId.UnprotectedTipMsg;
-                        MainPage.LoginUser.appUnlockPasswrod = "";
+                        UserInfo.Current.appUnlockPasswrod = "";
                         unlockOptionView.Visible = false;
                         refreshAction();
                     }
-                    MainPage.LoginUser.SaveUserInfo();
+                    UserInfo.Current.SaveUserInfo();
                 }
             };
             btnStartupBg.MouseUpEventHandler = eventHandler2;
@@ -158,6 +163,12 @@
             EventHandler<MouseEventArgs> eventHandler3 = (sender, e) =>
             {
                 bool result = !btnSecurityBg.IsSelected;
+                if (!result)
+                {
+                    //濡傛灉鍙墿甯冮槻/鎾ら槻涓�绉� 涓嶈兘鍙栨秷甯冮槻/鎾ら槻
+                    if (!CheckIfCanDeselect("2")) return;
+                }
+
                 btnSecurityBg.IsSelected = btnSecuritySelectionIcon.IsSelected = btnSecuritySelectionTip.IsSelected = result;
 
                 btnTipMsg.Text = Language.StringByID(StringId.DefenseAndUndefenseTipMsg);
@@ -165,29 +176,29 @@
                 if (result)
                 {
                     btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = false;
-                    if (!MainPage.LoginUser.appUnlockPage.Contains("2"))
+                    if (!UserInfo.Current.appUnlockPage.Contains("2"))
                     {
-                        MainPage.LoginUser.appUnlockPage.Add("2");
-                        if (MainPage.LoginUser.appUnlockPasswrod != "")
-                            MainPage.LoginUser.SaveUserInfo();
+                        UserInfo.Current.appUnlockPage.Add("2");
+                        if (UserInfo.Current.appUnlockPasswrod != "")
+                            UserInfo.Current.SaveUserInfo();
                     }
                     unlockOptionView.Visible = true;
                 }
                 else
                 {
-                    if (MainPage.LoginUser.appUnlockPage.Contains("2"))
+                    if (UserInfo.Current.appUnlockPage.Contains("2"))
                     {
-                        MainPage.LoginUser.appUnlockPage.Remove("2");
+                        UserInfo.Current.appUnlockPage.Remove("2");
                     }
-                    if (MainPage.LoginUser.appUnlockPage.Count == 0)
+                    if (UserInfo.Current.appUnlockPage.Count == 0)
                     {
                         btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = result;
                         btnTipMsg.TextID = StringId.UnprotectedTipMsg;
-                        MainPage.LoginUser.appUnlockPasswrod = "";
+                        UserInfo.Current.appUnlockPasswrod = "";
                         unlockOptionView.Visible = false;
                         refreshAction();
                     }
-                    MainPage.LoginUser.SaveUserInfo();
+                    UserInfo.Current.SaveUserInfo();
                 }
             };
             btnSecurityBg.MouseUpEventHandler = eventHandler3;
@@ -197,35 +208,41 @@
             EventHandler<MouseEventArgs> eventHandler4 = (sender, e) =>
             {
                 bool result = !btnDoorlockBg.IsSelected;
+                if (!result)
+                {
+                    //濡傛灉鍙墿杩滅▼寮�閿佷笉鑳藉彇娑堣繙绋嬪紑閿�
+                    if (!CheckIfCanDeselect("3")) return;
+                }
+
                 btnDoorlockBg.IsSelected = btnDoorlockSelectionIcon.IsSelected = btnDoorlockSelectionTip.IsSelected = result;
 
                 btnTipMsg.Text = Language.StringByID(StringId.RemoteUnlockingTipMsg);
                 if (result)
                 {
                     btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = false;
-                    if (!MainPage.LoginUser.appUnlockPage.Contains("3"))
+                    if (!UserInfo.Current.appUnlockPage.Contains("3"))
                     {
-                        MainPage.LoginUser.appUnlockPage.Add("3");
-                        if (MainPage.LoginUser.appUnlockPasswrod != "")
-                            MainPage.LoginUser.SaveUserInfo();
+                        UserInfo.Current.appUnlockPage.Add("3");
+                        if (UserInfo.Current.appUnlockPasswrod != "")
+                            UserInfo.Current.SaveUserInfo();
                     }
                     unlockOptionView.Visible = true;
                 }
                 else
                 {
-                    if (MainPage.LoginUser.appUnlockPage.Contains("3"))
+                    if (UserInfo.Current.appUnlockPage.Contains("3"))
                     {
-                        MainPage.LoginUser.appUnlockPage.Remove("3");
+                        UserInfo.Current.appUnlockPage.Remove("3");
                     }
-                    if (MainPage.LoginUser.appUnlockPage.Count == 0)
+                    if (UserInfo.Current.appUnlockPage.Count == 0)
                     {
                         btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = true;
                         btnTipMsg.TextID = StringId.UnprotectedTipMsg;
-                        MainPage.LoginUser.appUnlockPasswrod = "";
+                        UserInfo.Current.appUnlockPasswrod = "";
                         unlockOptionView.Visible = false;
                         refreshAction();
                     }
-                    MainPage.LoginUser.SaveUserInfo();
+                    UserInfo.Current.SaveUserInfo();
                 }
             };
             btnDoorlockBg.MouseUpEventHandler = eventHandler4;
@@ -238,23 +255,23 @@
         /// </summary>
         void LoadEvent_InitOptionState()
         {
-            if (MainPage.LoginUser.appUnlockPage.Count == 0)
+            if (UserInfo.Current.appUnlockPage.Count == 0)
             {
                 btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = true;
             }
             else
             {
-                if (MainPage.LoginUser.appUnlockPage.Contains("1"))
+                if (UserInfo.Current.appUnlockPage.Contains("1"))
                 {
                     btnStartupBg.IsSelected = btnStartupSelectionIcon.IsSelected = btnStartupSelectionTip.IsSelected = true;
                     btnTipMsg.Text = Language.StringByID(StringId.AtStartupTipMsg);
                 }
-                if (MainPage.LoginUser.appUnlockPage.Contains("2"))
+                if (UserInfo.Current.appUnlockPage.Contains("2"))
                 {
                     btnSecurityBg.IsSelected = btnSecuritySelectionIcon.IsSelected = btnSecuritySelectionTip.IsSelected = true;
                     btnTipMsg.Text = Language.StringByID(StringId.DefenseAndUndefenseTipMsg);
                 }
-                if (MainPage.LoginUser.appUnlockPage.Contains("3"))
+                if (UserInfo.Current.appUnlockPage.Contains("3"))
                 {
                     btnDoorlockBg.IsSelected = btnDoorlockSelectionIcon.IsSelected = btnDoorlockSelectionTip.IsSelected = true;
                     btnTipMsg.Text = Language.StringByID(StringId.RemoteUnlockingTipMsg);
@@ -269,15 +286,15 @@
         {
             btnPasswordUnlockTitle.MouseUpEventHandler = (sender, e) =>
             {
-                var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, refreshAction);
+                var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, refreshAction);
                 MainPage.BasePageView.AddChidren(page);
-                page.LoadPage(MainPage.LoginUser.appUnlockType.Contains("1") ? "3" : "1");
+                page.LoadPage(UserInfo.Current.appUnlockType.Contains("1") ? "3" : "1");
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
             };
 
             btnResetPasswordTitle.MouseUpEventHandler = (sender, e) =>
             {
-                var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, refreshAction);
+                var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, refreshAction);
                 MainPage.BasePageView.AddChidren(page);
                 page.LoadPage("2");
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
@@ -285,16 +302,16 @@
 
             btnGestureUnlockTitle.MouseUpEventHandler = (sender, e) =>
             {
-                var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, refreshAction);
+                var page = new AppUnlockGesturePage(UserInfo.Current.appUnlockPasswrod, refreshAction);
                 MainPage.BasePageView.AddChidren(page);
-                page.LoadPage(MainPage.LoginUser.appUnlockType.Contains("2") ? "3" : "1");
+                page.LoadPage(UserInfo.Current.appUnlockType.Contains("2") ? "3" : "1");
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
             };
             btnResetGestureTitle.MouseUpEventHandler = (sender, e) =>
             {
-                var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, refreshAction);
+                var page = new AppUnlockGesturePage(UserInfo.Current.appUnlockPasswrod, refreshAction);
                 MainPage.BasePageView.AddChidren(page);
-                page.LoadPage("3");
+                page.LoadPage("2");//2020-12-11
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
             };
 
@@ -316,18 +333,18 @@
                             var result = btnFingerprintUnlockSwtichIcon.IsSelected = !btnFingerprintUnlockSwtichIcon.IsSelected;
                             if (result)
                             {
-                                if (!MainPage.LoginUser.appUnlockType.Contains("3"))
+                                if (!UserInfo.Current.appUnlockType.Contains("3"))
                                 {
-                                    MainPage.LoginUser.appUnlockType.Add("3");
-                                    MainPage.LoginUser.SaveUserInfo();
+                                    UserInfo.Current.appUnlockType.Add("3");
+                                    UserInfo.Current.SaveUserInfo();
                                 }
                             }
                             else
                             {
-                                if (MainPage.LoginUser.appUnlockType.Contains("3"))
+                                if (UserInfo.Current.appUnlockType.Contains("3"))
                                 {
-                                    MainPage.LoginUser.appUnlockType.Remove("3");
-                                    MainPage.LoginUser.SaveUserInfo();
+                                    UserInfo.Current.appUnlockType.Remove("3");
+                                    UserInfo.Current.SaveUserInfo();
                                 }
                             }
                             //MainPage.BasePageView.RemoveAt(MainPage.BasePageView.ChildrenCount - 1);
@@ -335,16 +352,16 @@
                         }
                         else// if (e == TouchIDUtils.TouchIDState.InputPassword || e == TouchIDUtils.TouchIDState.TouchIDLockout)
                         {
-                            if (MainPage.LoginUser.appUnlockType.Contains("1"))
+                            if (UserInfo.Current.appUnlockType.Contains("1"))
                             {
-                                var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, refreshAction);
+                                var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, refreshAction);
                                 MainPage.BasePageView.AddChidren(page);
                                 page.LoadPage("5");
                                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                             }
-                            else if (MainPage.LoginUser.appUnlockType.Contains("2"))
+                            else if (UserInfo.Current.appUnlockType.Contains("2"))
                             {
-                                var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, refreshAction);
+                                var page = new AppUnlockGesturePage(UserInfo.Current.appUnlockPasswrod, refreshAction);
                                 MainPage.BasePageView.AddChidren(page);
                                 page.LoadPage("5");
                                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
@@ -363,5 +380,21 @@
                 };
             }
         }
+
+        /// <summary>
+        /// 鍒ゆ柇鏄惁鑳藉鍙栨秷锛屽鏋滃彧鍓╂渶鍚庝竴绉嶈В閿佹柟妗堢姝㈠彇娑�
+        /// </summary>
+        /// <param name="appUnlockPageType">1:鍚姩鏃� 2:甯冮槻鎾ら槻鏃� 3:杩滅▼寮�閿佹椂</param>
+        /// <returns></returns>
+        bool CheckIfCanDeselect(string appUnlockPageType)
+        {
+            if (UserInfo.Current.appUnlockPage.Count == 1 && UserInfo.Current.appUnlockPage.Contains(appUnlockPageType))
+            {
+                return false;
+            }
+
+            return true;
+        }
+
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0