From 43b0d5870d528f23ecd6aeceb6cfd4325188b46f Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 01 七月 2021 15:50:43 +0800
Subject: [PATCH] Revert "1"

---
 HDL_ON/UI/UI0-Public/AppUnlockPage.cs |  367 ++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 300 insertions(+), 67 deletions(-)

diff --git a/HDL_ON/UI/UI0-Public/AppUnlockPage.cs b/HDL_ON/UI/UI0-Public/AppUnlockPage.cs
index b248f49..637798b 100644
--- a/HDL_ON/UI/UI0-Public/AppUnlockPage.cs
+++ b/HDL_ON/UI/UI0-Public/AppUnlockPage.cs
@@ -9,67 +9,35 @@
     {
         void LoadOption()
         {
-            if (MainPage.LoginUser == null)
+            //2020-12-12 鏈櫥褰曟垨鑰匒PP鏈惎鍔ㄩ兘杩斿洖锛岃В鍐抽棯閫�闂
+            if (UserInfo.Current == null || !UserInfo.Current.IsLogin || MainPage.BasePageView == null)
             {
                 return;
             }
             Action action = () =>
             {
-                OnAppConfig.Instance.unlockTime = DateTime.Now;
+                UserInfo.Current.unlockTime = DateTime.Now;
             };
             //1:楠岃瘉鎸囩汗
-            if (OnAppConfig.Instance.appUnlockType.Contains("3"))
+            if (UserInfo.Current.appUnlockType.Contains("3"))
             {
-                Action fAction = () =>
-                {
-                    LoadOption();
-                };
-                LoadGesturePage("7", fAction);
-                TouchIDUtils.Instance.showTouchIDWithDescribe(null, Language.StringByID(StringId.PleaseVerifyTheFingerprint));
-                TouchIDUtils.Instance.OnHDLTouchIDStateBackEvent = (sender1, e) =>
-                {
-                    if (e == TouchIDUtils.TouchIDState.Success)
-                    {
-                        MainPage.Log("KK:TouchID楠岃瘉鎴愬姛");
-                        OnAppConfig.Instance.unlockTime = DateTime.Now;
-                        MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
-                    }
-                    else
-                    {
-                        ///灏嗛獙璇佹寚绾圭殑椤甸潰绉婚櫎
-                        MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
-                        if (OnAppConfig.Instance.appUnlockType.Contains("1"))
-                        {
-                            var page = new AppUnlockPasswordPage(OnAppConfig.Instance.appUnlockPasswrod, action);
-                            MainPage.BasePageView.AddChidren(page);
-                            page.LoadPage("7");
-                            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                        }
-                        else if (OnAppConfig.Instance.appUnlockType.Contains("2"))
-                        {
-                            var page = new AppUnlockGesturePage(OnAppConfig.Instance.appUnlockPasswrod, action);
-                            MainPage.BasePageView.AddChidren(page);
-                            page.LoadPage("7");
-                            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                        }
-
-                    }
-                };
+                TouchIDVerification();
             }
-            else if (OnAppConfig.Instance.appUnlockType.Contains("4"))
+            else if (UserInfo.Current.appUnlockType.Contains("4"))
             {
                 //Face ID楠岃瘉
-                //
+                //2020-12-11 寰呭鍔犻潰瀹瑰け璐ラ獙璇侀〉闈紝涓嶇劧浼氬鑷撮攣灞忓姞瀵嗘棤鏁�
+                FaceIDVerification();
             }
-            else if (OnAppConfig.Instance.appUnlockType.Contains("1"))
+            else if (UserInfo.Current.appUnlockType.Contains("1"))
             {
-                var page = new AppUnlockPasswordPage(OnAppConfig.Instance.appUnlockPasswrod, action);
+                var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, action);
                 MainPage.BasePageView.AddChidren(page);
                 page.LoadPage("7");
             }
-            else if (OnAppConfig.Instance.appUnlockType.Contains("2"))
+            else if (UserInfo.Current.appUnlockType.Contains("2"))
             {
-                var page = new AppUnlockGesturePage(OnAppConfig.Instance.appUnlockPasswrod, action);
+                var page = new AppUnlockGesturePage(UserInfo.Current.appUnlockPasswrod, action);
                 MainPage.BasePageView.AddChidren(page);
                 page.LoadPage("7");
             }
@@ -95,19 +63,90 @@
 
         }
 
-        public void LoadPage()
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="isFirstOpen">濡傛灉鏄涓�娆″惎鍔ㄧ洿鎺ュ脊绐楅獙璇佸瘑鐮�</param>
+        public void LoadPage(bool isFirstOpen = false)
         {
-            if (OnAppConfig.Instance.unlockTime.AddSeconds(60) > DateTime.Now || OnAppConfig.Instance.appUnlockPasswrod == "" || OnAppConfig.Instance.appUnlockPage.Count == 0)
+            try
             {
-                return;
+                if (!isFirstOpen)
+                {
+                    if (UserInfo.Current.unlockTime.AddMinutes(5) > DateTime.Now || UserInfo.Current.appUnlockPasswrod == "" || UserInfo.Current.appUnlockPage.Count == 0)
+                    {
+                        return;
+                    }
+                }
+                LoadOption();
             }
-            LoadOption();
+            catch
+            {
+                Utlis.WriteLine("AppUnlockPage error");
+            }
+        }
+
+        /// <summary>
+        /// 鎸囩汗楠岃瘉
+        /// </summary>
+        void TouchIDVerification()
+        {
+            //楠岃瘉鎴愬姛Action
+            Action successAction = () =>
+            {
+                UserInfo.Current.unlockTime = DateTime.Now;
+            };
+
+            //鎻愮ず鏁板瓧瀵嗙爜楠岃瘉杩樻槸缁樺埗鎵嬪娍楠岃瘉
+            string verificationTitleString = GetVerificationTitleString();
+
+            //寮瑰嚭鎸囩汗楠岃瘉瀵硅瘽妗�
+            Action fingerAction = () =>
+            {
+                TouchIDUtils.Instance.showTouchIDWithDescribe(verificationTitleString, Language.StringByID(StringId.PleaseVerifyTheFingerprint));
+            };
+            //鍔犺浇UI椤甸潰
+            LoadGesturePage("7", fingerAction, null);
+
+            TouchIDUtils.Instance.showTouchIDWithDescribe(verificationTitleString, Language.StringByID(StringId.PleaseVerifyTheFingerprint));
+            TouchIDUtils.Instance.OnHDLTouchIDStateBackEvent = (sender1, e) =>
+            {
+                if (e == TouchIDUtils.TouchIDState.Success)
+                {
+                    MainPage.Log("KK:TouchID楠岃瘉鎴愬姛");
+                    UserInfo.Current.unlockTime = DateTime.Now;
+                    MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
+                }
+                else
+                {
+                    ///灏嗛獙璇佹寚绾圭殑椤甸潰绉婚櫎
+                    MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
+                    if (UserInfo.Current.appUnlockType.Contains("1"))
+                    {
+                        var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, successAction);
+                        MainPage.BasePageView.AddChidren(page);
+                        page.LoadPage("7");
+                        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("7");
+                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                    }
+
+                }
+            };
         }
 
         /// <summary>
         /// 鍔犺浇鎸囩汗楠岃瘉鐣岄潰
         /// </summary>
-        public void LoadGesturePage(string optionType, Action fingerAction)
+        /// <param name="optionType"></param>
+        /// <param name="fingerAction"></param>
+        /// <param name="successAction"></param>
+        public void LoadGesturePage(string optionType, Action fingerAction, Action successAction)
         {
             var bodyView = new FrameLayout()
             {
@@ -137,7 +176,7 @@
                 Gravity = Gravity.CenterHorizontal,
                 Width = Application.GetRealWidth(102),
                 Height = Application.GetRealWidth(102),
-                UnSelectedImagePath = "PersonalCenter/AppUnlockSetting/FingerIconRed.png",
+                UnSelectedImagePath = "PersonalCenter/AppUnlockSetting/FingerIconBlue.png",
             };
             bodyView.AddChidren(btnFingerIcon);
 
@@ -153,7 +192,7 @@
                 TextAlignment = TextAlignment.Center,
                 TextColor = CSS.CSS_Color.MainColor,
                 TextSize = CSS.CSS_FontSize.TextFontSize,
-                TextID = OnAppConfig.Instance.appUnlockType.Contains("1") ? StringId.VerifyDigitalPassword : StringId.VerifyGesturePassword,
+                TextID = UserInfo.Current.appUnlockType.Contains("1") ? StringId.VerifyDigitalPassword : StringId.VerifyGesturePassword,
             };
             bodyView.AddChidren(btnOtherVerify);
 
@@ -161,31 +200,225 @@
             {
                 ///灏嗛獙璇佹寚绾圭殑椤甸潰绉婚櫎
                 MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
-                Action action = () =>
+                //Action action = () =>
+                //{
+                //    UserInfo.Current.unlockTime = DateTime.Now;
+                //};
+                //if (UserInfo.Current.appUnlockType.Contains("1"))
+                //{
+                //    var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, action);
+                //    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, action);
+                //    MainPage.BasePageView.AddChidren(page);
+                //    page.LoadPage(optionType);
+                //    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                //}
+
+                if (successAction == null)
                 {
-                    OnAppConfig.Instance.unlockTime = DateTime.Now;
-                };
-                if (OnAppConfig.Instance.appUnlockType.Contains("1"))
-                {
-                    var page = new AppUnlockPasswordPage(OnAppConfig.Instance.appUnlockPasswrod, action);
-                    MainPage.BasePageView.AddChidren(page);
-                    page.LoadPage(optionType);
-                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                    Action action = () =>
+                    {
+                        UserInfo.Current.unlockTime = DateTime.Now;
+                    };
+                    GotogoToVerifyPasswordPage(optionType, action);
                 }
-                else if (OnAppConfig.Instance.appUnlockType.Contains("2"))
+                else
                 {
-                    var page = new AppUnlockGesturePage(OnAppConfig.Instance.appUnlockPasswrod, action);
-                    MainPage.BasePageView.AddChidren(page);
-                    page.LoadPage(optionType);
-                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                    GotogoToVerifyPasswordPage(optionType, successAction);
+                }
+            };
+
+            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+
+            //dialog.Show();
+            //Console.WriteLine("-0987654321");
+        }
+
+        /// <summary>
+        /// 闈㈠ID楠岃瘉
+        /// </summary>
+        void FaceIDVerification()
+        {
+            //楠岃瘉鎴愬姛Action
+            Action successAction = () =>
+            {
+                UserInfo.Current.unlockTime = DateTime.Now;
+            };
+
+            //鎻愮ず鏁板瓧瀵嗙爜楠岃瘉杩樻槸缁樺埗鎵嬪娍楠岃瘉
+            string verificationTitleString = GetVerificationTitleString();
+
+            //寮瑰嚭鎸囩汗楠岃瘉瀵硅瘽妗�
+            Action faceIDAction = () =>
+            {
+                TouchIDUtils.Instance.showTouchIDWithDescribe(verificationTitleString, Language.StringByID(StringId.VerifyFaceID));
+            };
+            //鍔犺浇UI椤甸潰
+            LoadFaceIDGesturePage("7", faceIDAction, null);
+
+            TouchIDUtils.Instance.showTouchIDWithDescribe(verificationTitleString, Language.StringByID(StringId.VerifyFaceID));
+            TouchIDUtils.Instance.OnHDLTouchIDStateBackEvent = (sender1, e) =>
+            {
+                if (e == TouchIDUtils.TouchIDState.Success)
+                {
+                    MainPage.Log("KK:TouchID楠岃瘉鎴愬姛");
+                    UserInfo.Current.unlockTime = DateTime.Now;
+                    MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
+                }
+                else
+                {
+                    ///灏嗛獙璇佹寚绾圭殑椤甸潰绉婚櫎
+                    MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
+                    if (UserInfo.Current.appUnlockType.Contains("1"))
+                    {
+                        var page = new AppUnlockPasswordPage(UserInfo.Current.appUnlockPasswrod, successAction);
+                        MainPage.BasePageView.AddChidren(page);
+                        page.LoadPage("7");
+                        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("7");
+                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                    }
+
+                }
+            };
+        }
+
+        /// <summary>
+        ///  鍔犺浇闈㈠ID楠岃瘉鐣岄潰
+        /// </summary>
+        /// <param name="optionType"></param>
+        /// <param name="faceIDAction"></param>
+        /// <param name="successAction">鎸囧畾鎴愬姛鐨勪簨浠跺洖璋�</param>
+        public void LoadFaceIDGesturePage(string optionType, Action faceIDAction, Action successAction)
+        {
+            var bodyView = new FrameLayout()
+            {
+                BackgroundColor = CSS.CSS_Color.MainBackgroundColor
+            };
+            MainPage.BasePageView.AddChidren(bodyView);
+
+            bodyView.AddChidren(new Button()
+            {
+                Height = Application.GetRealHeight(64),
+                BackgroundColor = CSS.CSS_Color.BackgroundColor,
+            });
+
+            bodyView.AddChidren(new Button()
+            {
+                Y = Application.GetRealHeight(196),
+                Height = Application.GetRealHeight(42),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS.CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS.CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.VerifyFaceID,
+            });
+
+            var btnFaceIdIcon = new Button()
+            {
+                Y = Application.GetRealHeight(260),
+                Gravity = Gravity.CenterHorizontal,
+                Width = Application.GetRealWidth(102),
+                Height = Application.GetRealWidth(102),
+                UnSelectedImagePath = "PersonalCenter/AppUnlockSetting/FaceIdIconBig.png",
+            };
+            bodyView.AddChidren(btnFaceIdIcon);
+
+            btnFaceIdIcon.MouseUpEventHandler = (sender, e) =>
+            {
+                faceIDAction();
+            };
+
+            var btnOtherVerify = new Button()
+            {
+                Y = Application.GetRealHeight(527),
+                Height = Application.GetRealHeight(40),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS.CSS_Color.MainColor,
+                TextSize = CSS.CSS_FontSize.TextFontSize,
+                TextID = UserInfo.Current.appUnlockType.Contains("1") ? StringId.VerifyDigitalPassword : StringId.VerifyGesturePassword,
+            };
+            bodyView.AddChidren(btnOtherVerify);
+
+            btnOtherVerify.MouseUpEventHandler = (sender, e) =>
+            {
+                ///灏嗛獙璇侀潰瀹笽D鐨勯〉闈㈢Щ闄�
+                MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
+               
+                if (successAction == null)
+                {
+                    Action action = () =>
+                    {
+                        UserInfo.Current.unlockTime = DateTime.Now;
+                    };
+                    GotogoToVerifyPasswordPage(optionType, action);
+                }
+                else
+                {
+                    GotogoToVerifyPasswordPage(optionType, successAction);
                 }
 
             };
 
             MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
 
-            //dialog.Show();
-            Console.WriteLine("-0987654321");
+        }
+
+        /// <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