From eda3fb873e59544ff36301b51e05aef64f87b0f9 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期五, 27 八月 2021 13:21:21 +0800
Subject: [PATCH] Merge branch 'newBranch1' of http://172.16.1.23:6688/r/~wxr/HDL_APP_Project into newBranch1

---
 HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockSettingsPageBLL.cs |  530 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 357 insertions(+), 173 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..43e9dc3 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");
             };
         }
 
@@ -32,71 +32,44 @@
                 {
                     btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = true;
                     btnStartupBg.IsSelected = btnStartupSelectionIcon.IsSelected = btnStartupSelectionTip.IsSelected = false;
-                    btnSecurityBg.IsSelected = btnSecuritySelectionIcon.IsSelected = btnSecuritySelectionTip.IsSelected = false;
+                    #region F3闃舵
+                    //btnSecurityBg.IsSelected = btnSecuritySelectionIcon.IsSelected = btnSecuritySelectionTip.IsSelected = false;
                     btnDoorlockBg.IsSelected = btnDoorlockSelectionIcon.IsSelected = btnDoorlockSelectionTip.IsSelected = false;
+                    #endregion
 
                     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();
                 };
-                Action action1 = () => {
+                Action action1 = () =>
+                {
                     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) =>
-                            {
-                                if (e == TouchIDUtils.TouchIDState.NotSupport)
-                                {
-                                    MainPage.Log("KK:褰撳墠璁惧涓嶆敮鎸乀ouchID楠岃瘉,璇疯緭鍏ュ瘑鐮佹潵楠岃瘉");
-                                }
-                                else if (e == TouchIDUtils.TouchIDState.Success)
-                                {
-                                    MainPage.Log("KK:TouchID楠岃瘉鎴愬姛");
-                                    action();
-                                }
-                                else if (e == TouchIDUtils.TouchIDState.InputPassword || e == TouchIDUtils.TouchIDState.TouchIDLockout)
-                                {
-                                    MainPage.Log("KK:鐢ㄦ埛閫夋嫨鎵嬪姩杈撳叆瀵嗙爜");
-                                    if (MainPage.LoginUser.appUnlockType.Contains("1"))
-                                    {
-                                        var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, action);
-                                        MainPage.BasePageView.AddChidren(page);
-                                        page.LoadPage("4");
-                                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                                    }
-                                    else if (MainPage.LoginUser.appUnlockType.Contains("1"))
-                                    {
-                                        var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, action);
-                                        MainPage.BasePageView.AddChidren(page);
-                                        page.LoadPage("4");
-                                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                                    }
-                                }
-                            };
+                            TouchIDVerification_TurnOffUnlock(action);
                         }
-                        else if (MainPage.LoginUser.appUnlockType.Contains("4"))
+                        else if (UserInfo.Current.appUnlockType.Contains("4"))
                         {
                             //Face ID楠岃瘉
-                            //
+                            FaceIDVerification_TurnOffUnlock(action);
                         }
-                        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 +77,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,117 +93,133 @@
             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;
             btnStartupSelectionIcon.MouseUpEventHandler = eventHandler2;
             btnStartupSelectionTip.MouseUpEventHandler = eventHandler2;
 
-            EventHandler<MouseEventArgs> eventHandler3 = (sender, e) =>
-            {
-                bool result = !btnSecurityBg.IsSelected;
-                btnSecurityBg.IsSelected = btnSecuritySelectionIcon.IsSelected = btnSecuritySelectionTip.IsSelected = result;
-
-                btnTipMsg.Text = Language.StringByID(StringId.DefenseAndUndefenseTipMsg);
-
-                if (result)
-                {
-                    btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = false;
-                    if (!MainPage.LoginUser.appUnlockPage.Contains("2"))
-                    {
-                        MainPage.LoginUser.appUnlockPage.Add("2");
-                        if (MainPage.LoginUser.appUnlockPasswrod != "")
-                            MainPage.LoginUser.SaveUserInfo();
-                    }
-                    unlockOptionView.Visible = true;
-                }
-                else
-                {
-                    if (MainPage.LoginUser.appUnlockPage.Contains("2"))
-                    {
-                        MainPage.LoginUser.appUnlockPage.Remove("2");
-                    }
-                    if (MainPage.LoginUser.appUnlockPage.Count == 0)
-                    {
-                        btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = result;
-                        btnTipMsg.TextID = StringId.UnprotectedTipMsg;
-                        MainPage.LoginUser.appUnlockPasswrod = "";
-                        unlockOptionView.Visible = false;
-                        refreshAction();
-                    }
-                    MainPage.LoginUser.SaveUserInfo();
-                }
-            };
-            btnSecurityBg.MouseUpEventHandler = eventHandler3;
-            btnSecuritySelectionIcon.MouseUpEventHandler = eventHandler3;
-            btnSecuritySelectionTip.MouseUpEventHandler = eventHandler3;
+            #region F3闃舵
+            //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);
+            //    if (result)
+            //    {
+            //        btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = false;
+            //        if (!UserInfo.Current.appUnlockPage.Contains("2"))
+            //        {
+            //            UserInfo.Current.appUnlockPage.Add("2");
+            //            if (UserInfo.Current.appUnlockPasswrod != "")
+            //                UserInfo.Current.SaveUserInfo();
+            //        }
+            //        unlockOptionView.Visible = true;
+            //    }
+            //    else
+            //    {
+            //        if (UserInfo.Current.appUnlockPage.Contains("2"))
+            //        {
+            //            UserInfo.Current.appUnlockPage.Remove("2");
+            //        }
+            //        if (UserInfo.Current.appUnlockPage.Count == 0)
+            //        {
+            //            btnUnprotectedBg.IsSelected = btnUnprotectedSelectionIcon.IsSelected = btnUnprotectedSelectionTip.IsSelected = result;
+            //            btnTipMsg.TextID = StringId.UnprotectedTipMsg;
+            //            UserInfo.Current.appUnlockPasswrod = "";
+            //            unlockOptionView.Visible = false;
+            //            refreshAction();
+            //        }
+            //        UserInfo.Current.SaveUserInfo();
+            //    }
+            //};
+            //btnSecurityBg.MouseUpEventHandler = eventHandler3;
+            //btnSecuritySelectionIcon.MouseUpEventHandler = eventHandler3;
+            //btnSecuritySelectionTip.MouseUpEventHandler = eventHandler3;
 
             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;
             btnDoorlockSelectionIcon.MouseUpEventHandler = eventHandler4;
             btnDoorlockSelectionTip.MouseUpEventHandler = eventHandler4;
+            #endregion
         }
 
         /// <summary>
@@ -238,27 +227,29 @@
         /// </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"))
-                {
-                    btnSecurityBg.IsSelected = btnSecuritySelectionIcon.IsSelected = btnSecuritySelectionTip.IsSelected = true;
-                    btnTipMsg.Text = Language.StringByID(StringId.DefenseAndUndefenseTipMsg);
-                }
-                if (MainPage.LoginUser.appUnlockPage.Contains("3"))
+                #region F3闃舵
+                //if (UserInfo.Current.appUnlockPage.Contains("2"))
+                //{
+                //    btnSecurityBg.IsSelected = btnSecuritySelectionIcon.IsSelected = btnSecuritySelectionTip.IsSelected = true;
+                //    btnTipMsg.Text = Language.StringByID(StringId.DefenseAndUndefenseTipMsg);
+                //}
+                if (UserInfo.Current.appUnlockPage.Contains("3"))
                 {
                     btnDoorlockBg.IsSelected = btnDoorlockSelectionIcon.IsSelected = btnDoorlockSelectionTip.IsSelected = true;
                     btnTipMsg.Text = Language.StringByID(StringId.RemoteUnlockingTipMsg);
                 }
+                #endregion
             }
         }
 
@@ -269,15 +260,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 +276,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;
             };
 
@@ -302,66 +293,259 @@
             {
                 btnFingerprintUnlockSwtichIcon.MouseUpEventHandler = (sender, e1) =>
                 {
-                    Action fingerAction = () => {
-                        TouchIDUtils.Instance.showTouchIDWithDescribe(null, Language.StringByID(StringId.PleaseVerifyTheFingerprint));
-                    };
-                    new AppUnlockPage().LoadGesturePage("5",fingerAction);
-
-                    TouchIDUtils.Instance.showTouchIDWithDescribe(null, Language.StringByID(StringId.PleaseVerifyTheFingerprint));
-
-                    TouchIDUtils.Instance.OnHDLTouchIDStateBackEvent = (sender1, e) =>
-                    {
-                        if (e == TouchIDUtils.TouchIDState.Success)
-                        {
-                            var result = btnFingerprintUnlockSwtichIcon.IsSelected = !btnFingerprintUnlockSwtichIcon.IsSelected;
-                            if (result)
-                            {
-                                if (!MainPage.LoginUser.appUnlockType.Contains("3"))
-                                {
-                                    MainPage.LoginUser.appUnlockType.Add("3");
-                                    MainPage.LoginUser.SaveUserInfo();
-                                }
-                            }
-                            else
-                            {
-                                if (MainPage.LoginUser.appUnlockType.Contains("3"))
-                                {
-                                    MainPage.LoginUser.appUnlockType.Remove("3");
-                                    MainPage.LoginUser.SaveUserInfo();
-                                }
-                            }
-                            //MainPage.BasePageView.RemoveAt(MainPage.BasePageView.ChildrenCount - 1);
-                            MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
-                        }
-                        else// if (e == TouchIDUtils.TouchIDState.InputPassword || e == TouchIDUtils.TouchIDState.TouchIDLockout)
-                        {
-                            if (MainPage.LoginUser.appUnlockType.Contains("1"))
-                            {
-                                var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, refreshAction);
-                                MainPage.BasePageView.AddChidren(page);
-                                page.LoadPage("5");
-                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                            }
-                            else if (MainPage.LoginUser.appUnlockType.Contains("2"))
-                            {
-                                var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, refreshAction);
-                                MainPage.BasePageView.AddChidren(page);
-                                page.LoadPage("5");
-                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                            }
-                        }
-                    };
+                    TouchIDVerification_SwtichOnOff();
                 };
             }
             if (sFaceID)
             {
                 btnFaceIdUnlockSwtichIcon.MouseUpEventHandler = (sender, e1) =>
                 {
-                    //btnFaceIdUnlockSwtichIcon.IsSelected = !btnFaceIdUnlockSwtichIcon.IsSelected;
-                    if (!btnFaceIdUnlockSwtichIcon.IsSelected)
-                    { }
+                    FaceIDVerification_SwtichOnOff();
                 };
             }
         }
+
+        /// <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;
+        }
+
+        /// <summary>
+        /// 闈㈠ID楠岃瘉寮圭獥
+        /// </summary>
+        /// <param name="successAction"></param>
+        /// <param name="goToVerifyPasswordAction"></param>
+        void FaceIDVerification_Show(Action successAction, Action goToVerifyPasswordAction)
+        {
+            //鎻愮ず鏁板瓧瀵嗙爜楠岃瘉杩樻槸缁樺埗鎵嬪娍楠岃瘉
+            string verificationTitleString = GetVerificationTitleString();
+
+            TouchIDUtils.Instance.showTouchIDWithDescribe(verificationTitleString, Language.StringByID(StringId.VerifyFaceID));
+            TouchIDUtils.Instance.OnHDLTouchIDStateBackEvent = (sender1, e) =>
+            {
+                if (e == TouchIDUtils.TouchIDState.Success)
+                {
+                    MainPage.Log("KK:FaceID楠岃瘉鎴愬姛");
+                    successAction?.Invoke();
+                }
+                else if (e == TouchIDUtils.TouchIDState.NotSupport)
+                {
+                    MainPage.Log("KK:褰撳墠璁惧涓嶆敮鎸丗aceID楠岃瘉,璇疯緭鍏ュ瘑鐮佹潵楠岃瘉");
+                    goToVerifyPasswordAction();
+                }
+                else if (e == TouchIDUtils.TouchIDState.InputPassword || e == TouchIDUtils.TouchIDState.TouchIDLockout)
+                {
+                    MainPage.Log("KK:鐢ㄦ埛閫夋嫨鎵嬪姩杈撳叆瀵嗙爜");
+                    goToVerifyPasswordAction();
+                }
+            };
+        }
+
+        /// <summary>
+        /// 闈㈠ID寮�鍚拰鍏抽棴
+        /// </summary>
+        /// <param name="successAction">楠岃瘉鎴愬姛浜嬩欢</param>
+        void FaceIDVerification_SwtichOnOff()
+        {
+            //4:闈㈠ID
+            string faceIDUnlockType = "4";
+            //6:闈㈠ID寮�鍏�
+            string optionType = "6";
+            //鎴愬姛浜嬩欢
+            Action successAction = () =>
+            {
+                var result = btnFaceIdUnlockSwtichIcon.IsSelected = !btnFaceIdUnlockSwtichIcon.IsSelected;
+                if (result)
+                {
+                    if (!UserInfo.Current.appUnlockType.Contains(faceIDUnlockType))
+                    {
+                        UserInfo.Current.appUnlockType.Add(faceIDUnlockType);
+                        UserInfo.Current.SaveUserInfo();
+                    }
+                }
+                else
+                {
+                    if (UserInfo.Current.appUnlockType.Contains(faceIDUnlockType))
+                    {
+                        UserInfo.Current.appUnlockType.Remove(faceIDUnlockType);
+                        UserInfo.Current.SaveUserInfo();
+                    }
+                }
+            };
+            
+            //璺宠浆鏁板瓧瀵嗙爜鎴栬�呮墜鍔垮瘑鐮侀獙璇侀〉闈�
+            Action goToVerifyPasswordAction = () =>
+            {
+                //鍏抽棴瑙i攣楠岃瘉
+                GotogoToVerifyPasswordPage(optionType, successAction);
+            };
+
+            FaceIDVerification_Show(successAction, goToVerifyPasswordAction);
+
+        }
+
+        /// <summary>
+        /// FaceID楠岃瘉 鍏抽棴瑙i攣璁剧疆
+        /// </summary>
+        /// <param name="action">楠岃瘉鎴愬姛浜嬩欢</param>
+        void FaceIDVerification_TurnOffUnlock(Action successAction)
+        {
+            //璋冩暣鏁板瓧瀵嗙爜鎴栬�呮墜鍔垮瘑鐮侀獙璇侀〉闈�
+            Action goToVerifyPasswordAction = () =>
+            {
+                //鍏抽棴瑙i攣楠岃瘉
+                GotogoToVerifyPasswordPage("4", successAction);
+            };
+
+            FaceIDVerification_Show(successAction, goToVerifyPasswordAction);
+        }
+
+        /// <summary>
+        /// 鎸囩汗ID缁熶竴寮瑰嚭
+        /// </summary>
+        /// <param name="optionType"></param>
+        /// <param name="successAction"></param>
+        /// <param name="goToVerifyPasswordAction"></param>
+        void TouchIDVerification_Show(Action successAction, Action goToVerifyPasswordAction)
+        {
+            //鎻愮ず鏁板瓧瀵嗙爜楠岃瘉杩樻槸缁樺埗鎵嬪娍楠岃瘉
+            string verificationTitleString = GetVerificationTitleString();
+
+            TouchIDUtils.Instance.showTouchIDWithDescribe(verificationTitleString, Language.StringByID(StringId.PleaseVerifyTheFingerprint));
+            TouchIDUtils.Instance.OnHDLTouchIDStateBackEvent = (sender1, e) =>
+            {
+                if (e == TouchIDUtils.TouchIDState.NotSupport)
+                {
+                    MainPage.Log("KK:褰撳墠璁惧涓嶆敮鎸乀ouchID楠岃瘉,璇疯緭鍏ュ瘑鐮佹潵楠岃瘉");
+                    goToVerifyPasswordAction?.Invoke();
+                }
+                else if (e == TouchIDUtils.TouchIDState.Success)
+                {
+                    MainPage.Log("KK:TouchID楠岃瘉鎴愬姛");
+                    successAction?.Invoke();
+                }
+                else if (e == TouchIDUtils.TouchIDState.InputPassword || e == TouchIDUtils.TouchIDState.TouchIDLockout)
+                {
+                    MainPage.Log("KK:鐢ㄦ埛閫夋嫨鎵嬪姩杈撳叆瀵嗙爜");
+                    goToVerifyPasswordAction?.Invoke();
+                }
+
+            };
+        }
+
+        /// <summary>
+        /// 鎸囩汗ID寮�鍚拰鍏抽棴 5:鎸囩汗ID寮�鍏�
+        /// </summary>
+        void TouchIDVerification_SwtichOnOff()
+        {
+            //鎸囩汗鍏抽棴鎴愬姛浜嬩欢 鎴愬姛浜嬩欢
+            Action successAction = () =>
+            {
+                var result = btnFingerprintUnlockSwtichIcon.IsSelected = !btnFingerprintUnlockSwtichIcon.IsSelected;
+                if (result)
+                {
+                    if (!UserInfo.Current.appUnlockType.Contains("3"))
+                    {
+                        UserInfo.Current.appUnlockType.Add("3");
+                        UserInfo.Current.SaveUserInfo();
+                    }
+                }
+                else
+                {
+                    if (UserInfo.Current.appUnlockType.Contains("3"))
+                    {
+                        UserInfo.Current.appUnlockType.Remove("3");
+                        UserInfo.Current.SaveUserInfo();
+                    }
+                }
+            };
+
+            //5:鎸囩汗ID寮�鍏�
+            string optionType = "5";
+            //璺宠浆鏁板瓧瀵嗙爜鎴栬�呮墜鍔垮瘑鐮侀獙璇侀〉闈�
+            Action goToVerifyPasswordAction = () =>
+            {
+                //5:鎸囩汗ID寮�鍏�
+                GotogoToVerifyPasswordPage(optionType, successAction);
+            };
+
+            
+
+            TouchIDVerification_Show(successAction, goToVerifyPasswordAction);
+        }
+
+        /// <summary>
+        /// TouchID楠岃瘉 4:鍏抽棴瑙i攣璁剧疆
+        /// </summary>
+        /// <param name="action">楠岃瘉鎴愬姛浜嬩欢</param>
+        void TouchIDVerification_TurnOffUnlock(Action successAction)
+        {
+            //璺宠浆鏁板瓧瀵嗙爜鎴栬�呮墜鍔垮瘑鐮侀獙璇侀〉闈�
+            Action goToVerifyPasswordAction = () =>
+            {
+                //4.鍏抽棴瑙i攣楠岃瘉
+                GotogoToVerifyPasswordPage("4", successAction);
+            };
+
+            TouchIDVerification_Show(successAction, goToVerifyPasswordAction);
+        }
+
+        /// <summary>
+        /// 璺宠浆鎵嬪娍鎴栬�呭瘑鐮侀獙璇佺晫闈�
+        /// </summary>
+        /// <param name="optionType">1:璁剧疆瀵嗙爜锛�2:楠岃瘉瀵嗙爜;3:鍏抽棴瀵嗙爜;4:鍏抽棴瑙i攣璁剧疆;5:鎸囩汗ID寮�鍏筹紱6:闈㈠ID寮�鍏�;7:瑙i攣楠岃瘉</param>
+        /// <param name="successAction"></param>
+        void GotogoToVerifyPasswordPage(string optionType, Action successAction)
+        {
+            if (UserInfo.Current.appUnlockType.Contains("1"))
+            {
+                var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, successAction);
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage(optionType);
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            }
+            else if (UserInfo.Current.appUnlockType.Contains("2"))
+            {
+                var page = new AppUnlockGesturePage(UserInfo.Current.appUnlockPasswrod, successAction);
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage(optionType);
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            }
+        }
+
+        /// <summary>
+        /// 鍒ゆ柇鏄惁鏁板瓧楠岃瘉銆佸惁鍒欑粯鍒舵墜鍔块獙璇�
+        /// </summary>
+        /// <returns></returns>
+        bool CheckIfUnlockPassword()
+        {
+            return UserInfo.Current.appUnlockType.Contains("1");
+        }
+
+        /// <summary>
+        /// 鍒ゆ柇鏄惁鏁板瓧楠岃瘉銆佸惁鍒欑粯鍒舵墜鍔块獙璇�
+        /// </summary>
+        /// <returns></returns>
+        string GetVerificationTitleString()
+        {
+            if (CheckIfUnlockPassword())
+            {
+                return Language.StringByID(StringId.PasswordVerification);
+            }
+            else
+            {
+                return Language.StringByID(StringId.GestureVerification);
+            }
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0