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/AppUnlockGesturePage.cs | 551 +++++++++++++++++++++++++++++++++--------------------- 1 files changed, 338 insertions(+), 213 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockGesturePage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockGesturePage.cs index 8e09b67..489d1a5 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockGesturePage.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockGesturePage.cs @@ -1,11 +1,23 @@ 锘縰sing System; using HDL_ON.UI.CSS; using Shared; +using HDL_ON.DAL.Server; + namespace HDL_ON.UI { + /// <summary> + /// 鎵嬪娍瑙i攣 + /// </summary> public class AppUnlockGesturePage : FrameLayout { + /// <summary> + /// + /// </summary> FrameLayout bodyView; + /// <summary> + /// 閿欒鎻愮ず鎸夐挳 + /// </summary> + Button btnTipMsg; string passwrod = ""; string oldPasswrod = ""; @@ -13,6 +25,7 @@ public AppUnlockGesturePage(string pw, Action action) { bodyView = this; + bodyView.Tag = "unlockpage"; oldPasswrod = pw; backAction = action; } @@ -54,11 +67,11 @@ IsBold = true, TextColor = CSS_Color.FirstLevelTitleColor, TextSize = CSS_FontSize.EmphasisFontSize_Secondary, - TextID = optionType == "7" ? StringId.SetGesturePassword : StringId.VerifyGesturePassword, + TextID = StringId.VerifyGesturePassword, }; bodyView.AddChidren(btnTipTitle); - Button btnTipMsg = new Button() + btnTipMsg = new Button() { Y = btnTipTitle.Bottom, TextAlignment = TextAlignment.Center, @@ -67,14 +80,27 @@ TextColor = CSS_Color.TextualColor, SelectedTextColor = CSS_Color.WarningColor, TextSize = CSS_FontSize.TextFontSize, - TextID = optionType == "2" ? StringId.DrawUnlockPatternAgain : StringId.DrawUnlockPattern, + TextID = StringId.DrawUnlockPattern, }; bodyView.AddChidren(btnTipMsg); - if (optionType == "7") + if (optionType == "1") { - btnTipTitle.TextID = StringId.DrawUnlockPattern; + btnTipMsg.TextID = string.IsNullOrEmpty(oldPasswrod) ? StringId.DrawUnlockPattern : StringId.DrawUnlockPatternAgain; + //璁剧疆鎵嬪娍瀵嗙爜 + btnTipTitle.TextID = StringId.SetGesturePassword; + }else if(optionType == "2") + { + //璇疯緭鍏ュ師鎵嬪娍瀵嗙爜 + btnTipTitle.TextID = StringId.PleaseDrawTheOriginalGesturePassword; } + + //if (optionType == "7") + //{ + // //璇风粯鍒惰В閿佸浘妗� + // btnTipTitle.TextID = StringId.DrawUnlockPattern; + //} + GestureLockView mGestureLockView = new GestureLockView { @@ -112,226 +138,325 @@ } else { - if (optionType == "2") - { - //绉婚櫎褰撳墠鐣岄潰锛屾瘡娆¤繑鍥為兘杩斿洖鍒版渶涓婄骇 - this.RemoveFromParent(); - var page = new AppUnlockGesturePage("", backAction); - MainPage.BasePageView.AddChidren(page); - page.LoadPage("1"); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - return; - } - if(optionType == "7") - { - if (passwrod == oldPasswrod) - { - this.RemoveFromParent(); - backAction(); - } - else - { - btnTipMsg.TextID = StringId.AuthenticationFailedGestureError; - btnTipMsg.IsSelected = true; - btnTipMsg.Visible = true; - } - return; - } - if (optionType == "3" || optionType == "4") - { - if (passwrod == oldPasswrod) - { - if (optionType == "4") - { - backAction(); - this.RemoveFromParent(); - return; - } - if (MainPage.LoginUser.appUnlockType.Contains("2")) - { - MainPage.LoginUser.appUnlockType = new System.Collections.Generic.List<string>(); - MainPage.LoginUser.appUnlockPasswrod = ""; - MainPage.LoginUser.SaveUserInfo(); - this.RemoveFromParent(); - backAction(); - } - } - else - { - btnTipMsg.TextID = StringId.AuthenticationFailedGestureError; - btnTipMsg.IsSelected = true; - btnTipMsg.Visible = true; - } - return; - } - if (optionType == "5" || optionType == "6"|| optionType == "8" || optionType == "9") - { - if (passwrod == oldPasswrod) - { - if (optionType == "5" )//&& MainPage.LoginUser.appUnlockType.Contains("3")) - { - if (MainPage.LoginUser.appUnlockType.Contains("3")) - MainPage.LoginUser.appUnlockType.Remove("3"); - else - MainPage.LoginUser.appUnlockType.Add("3"); - - MainPage.LoginUser.SaveUserInfo(); - this.RemoveFromParent(); - } - if ( optionType == "6") - { - if (MainPage.LoginUser.appUnlockType.Contains("4")) - MainPage.LoginUser.appUnlockType.Remove("4"); - else - MainPage.LoginUser.appUnlockType.Add("4"); - - MainPage.LoginUser.SaveUserInfo(); - this.RemoveFromParent(); - } - if (optionType == "8" && !MainPage.LoginUser.appUnlockType.Contains("3")) - { - MainPage.LoginUser.appUnlockType.Add("3"); - MainPage.LoginUser.SaveUserInfo(); - this.RemoveFromParent(); - } - if (!MainPage.LoginUser.appUnlockType.Contains("4") && optionType == "9") - { - MainPage.LoginUser.appUnlockType.Remove("4"); - MainPage.LoginUser.SaveUserInfo(); - this.RemoveFromParent(); - } - backAction(); - } - else - { - btnTipMsg.TextID = StringId.AuthenticationFailedGestureError; - btnTipMsg.IsSelected = true; - btnTipMsg.Visible = true; - } - return; - } + //2020-12-11 瀵嗙爜鏍¢獙 if (passwrod == oldPasswrod) { - this.RemoveFromParent(); - var page = new OperationResultDisPalyPage(); - page.Show(); - page.LoadPage(true, Language.StringByID(StringId.SetSuccessfully), Language.StringByID(StringId.SetSuccessfully), ""); - //page.LoadPage(true, Language.StringByID(StringId.SetSuccessfully), Language.StringByID(StringId.SetSuccessfully), ""); - string tipMsg = TouchIDUtils.getTouchIDSupperType() == TouchIDUtils.TouchIDSupperType.TouchID ? Language.StringByID(StringId.TurnOnFingerprintUnlocking) : - Language.StringByID(StringId.TurnOnFaceIdUnlocking); - if (TouchIDUtils.getTouchIDSupperType() != TouchIDUtils.TouchIDSupperType.None) - { - Action<bool> action = (result) => - { - var unlockType = TouchIDUtils.getTouchIDSupperType() == TouchIDUtils.TouchIDSupperType.TouchID ? "3" : "4"; - if (result) - { - if (!MainPage.LoginUser.appUnlockType.Contains(unlockType)) - { - MainPage.LoginUser.appUnlockType.Add(unlockType); - } - } - else - { - if (MainPage.LoginUser.appUnlockType.Contains(unlockType)) - { - MainPage.LoginUser.appUnlockType.Remove(unlockType); - } - } - MainPage.LoginUser.SaveUserInfo(); - backAction(); - }; - page.AdditionalOperations(tipMsg, action); - } - if (!MainPage.LoginUser.appUnlockType.Contains("2")) - { - MainPage.LoginUser.appUnlockType.Add("2"); - } - MainPage.LoginUser.appUnlockPasswrod = passwrod; - MainPage.LoginUser.SaveUserInfo(); - backAction(); + //瀵嗙爜楠岃瘉閫氳繃 + PasswordInputPassed(optionType); } else { - btnTipMsg.Text = Language.StringByID(StringId.DrawingInconsistencyError); - btnTipMsg.IsSelected = true; + //瀵嗙爜楠岃瘉澶辫触 + PasswordInputError(optionType); } + } }; - if (optionType == "5" || optionType == "6" || optionType == "7") + + if (optionType == "7") { - Button btnLoginAccountVerify = new Button() - { - Y = Application.GetRealHeight(517), - Height =Application.GetRealHeight(60), - TextAlignment = TextAlignment.Center, - TextSize = CSS_FontSize.TextFontSize, - TextColor = CSS_Color.MainColor, - TextID = StringId.EnterLoginPasswordVerification, - }; - bodyView.AddChidren(btnLoginAccountVerify); - - btnLoginAccountVerify.MouseUpEventHandler = (sender, e) => - { - if (optionType == "7") - { - MainPage.GoLoginPage(MainPage.LoginUser); - } - else - { - Action<string> action = (pw) => { - var loginResult = new DAL.Server.HttpServerRequest().LoginByPassword(MainPage.LoginUser.accountString, pw); - if (loginResult.StateCode.ToUpper() == "SUCCESS") - { - MainPage.LoginUser.appUnlockPasswrod = ""; - MainPage.LoginUser.appUnlockType = new System.Collections.Generic.List<string>(); - MainPage.LoginUser.SaveUserInfo(); - this.RemoveFromParent(); - backAction(); - } - //鐧诲綍澶辫触 - else - { - string tipStr = "Sever erorr"; - switch (loginResult.StateCode) - { - case "ValidCodeAndPhoneNoEqual": - tipStr = Language.StringByID(StringId.VerificationCodeError); - break; - case "USERNAMEORPWDERROR": - tipStr = Language.StringByID(StringId.LoginFailed_AccountOrPasswordError); - break; - case "ACCOUNTNOEXISTS": - tipStr = Language.StringByID(StringId.ACCOUNTNOEXISTS); - break; - case "NoRecord": - tipStr = Language.StringByID(StringId.PlsGetTheVerificationCode); - break; - case "Self:Net_Error": - tipStr = Language.StringByID(StringId.NetworkAnomaly); - break; - } - //璐﹀彿鎴栬�呭瘑鐮侀敊璇� - Application.RunOnMainThread(() => - { - //鎻愮ず鍘熷洜 - var tip = new Tip() - { - Text = tipStr, - CloseTime = 3, - Direction = AMPopTipDirection.None - }; - tip.Show(bodyView); - }); - } - - }; - new PublicAssmebly().LoadDialog_EditParater(StringId.EnterLoginPasswordVerification, "", action,StringId.PlsEntryPassword,0,new System.Collections.Generic.List<string>(),true); - } - }; + //浣跨敤璐︽埛瀵嗙爜鐧诲綍鎸夐挳 鎻愮ず鎸夐挳 + AddLoginTipButton(); } + else if (optionType != "1") + { + //杈撳叆鐧诲綍瀵嗙爜楠岃瘉 鎻愮ず鎸夐挳 + AddInputPasswordTipButton(optionType); + } + + + //if (optionType == "5" || optionType == "6" || optionType == "7") + //{ + // Button btnLoginAccountVerify = new Button() + // { + // Y = Application.GetRealHeight(517), + // Height = Application.GetRealHeight(60), + // TextAlignment = TextAlignment.Center, + // TextSize = CSS_FontSize.TextFontSize, + // TextColor = CSS_Color.MainColor, + // TextID = StringId.EnterLoginPasswordVerification, + // }; + // bodyView.AddChidren(btnLoginAccountVerify); + + // btnLoginAccountVerify.MouseUpEventHandler = (sender, e) => + // { + // if (optionType == "7") + // { + // MainPage.GoLoginPage(UserInfo.Current); + // } + // else + // { + // Action<string> action = (pw) => + // { + // var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw); + // if (resultObj.Code == StateCode.SUCCESS) + // { + // UserInfo.Current.appUnlockPasswrod = ""; + // UserInfo.Current.appUnlockType = new System.Collections.Generic.List<string>(); + // UserInfo.Current.SaveUserInfo(); + // this.RemoveFromParent(); + // backAction(); + // } + // else + // { + // //鐧诲綍澶辫触 + // IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code); + // } + + // }; + // new PublicAssmebly().LoadDialog_EditParater(StringId.EnterLoginPasswordVerification, "", action, StringId.PlsEntryPassword, 0, new System.Collections.Generic.List<string>(), true); + // } + // }; + //} + } + + /// <summary> + /// 鎵嬪娍瀵嗙爜杈撳叆閿欒鏄剧ず閿欒淇℃伅 + /// </summary> + /// <param name="optionType">1:璁剧疆瀵嗙爜锛�2:楠岃瘉瀵嗙爜;3:鍏抽棴瀵嗙爜;4:鍏抽棴瑙i攣璁剧疆;5:鎸囩汗ID寮�鍏筹紱6:闈㈠ID寮�鍏�;7:瑙i攣楠岃瘉</param> + void PasswordInputError(string optionType) + { + int errorTextID = 0; + if (optionType == "1") + { + //2娆$粯鍒剁偣鍥炬涓嶄竴鑷达紝璇烽噸鏂扮粯鍒� + errorTextID = StringId.DrawingInconsistencyError; + } + else + { + //楠岃瘉澶辫触锛屽瘑鐮侀敊璇�. + errorTextID = StringId.AuthenticationFailedPasswordError; + } + + btnTipMsg.TextID = errorTextID; + btnTipMsg.IsSelected = true; + btnTipMsg.Visible = true; + } + + + + /// <summary> + /// 鎵嬪娍瀵嗙爜楠岃瘉閫氳繃鍚庣殑鎿嶄綔 + /// </summary> + /// <param name="optionType">1:璁剧疆瀵嗙爜锛�2:楠岃瘉瀵嗙爜;3:鍏抽棴瀵嗙爜;4:鍏抽棴瑙i攣璁剧疆;5:鎸囩汗ID寮�鍏筹紱6:闈㈠ID寮�鍏�;7:瑙i攣楠岃瘉</param> + void PasswordInputPassed(string optionType) + { + if (optionType == "1") + { + //璁剧疆瀵嗙爜 楠岃瘉閫氳繃 + this.RemoveFromParent(); + var page = new OperationResultDisPalyPage(); + page.Show(); + page.LoadPage(true, Language.StringByID(StringId.SetSuccessfully), Language.StringByID(StringId.SetSuccessfully), ""); + //page.LoadPage(true, Language.StringByID(StringId.SetSuccessfully), Language.StringByID(StringId.SetSuccessfully), ""); + string tipMsg = TouchIDUtils.getTouchIDSupperType() == TouchIDUtils.TouchIDSupperType.TouchID ? Language.StringByID(StringId.TurnOnFingerprintUnlocking) : + Language.StringByID(StringId.TurnOnFaceIdUnlocking); + if (TouchIDUtils.getTouchIDSupperType() != TouchIDUtils.TouchIDSupperType.None) + { + var unlockType = TouchIDUtils.getTouchIDSupperType() == TouchIDUtils.TouchIDSupperType.TouchID ? "3" : "4"; + + //濡傛灉涔嬪墠娌¤缃寚绾规垨鑰呴潰瀹笽D鎵嶆樉绀烘槸鍚﹀紑鍚� + if (!UserInfo.Current.appUnlockType.Contains(unlockType)) + { + Action<bool> action = (result) => + { + if (result) + { + if (!UserInfo.Current.appUnlockType.Contains(unlockType)) + { + UserInfo.Current.appUnlockType.Add(unlockType); + } + } + else + { + if (UserInfo.Current.appUnlockType.Contains(unlockType)) + { + UserInfo.Current.appUnlockType.Remove(unlockType); + } + } + UserInfo.Current.SaveUserInfo(); + backAction(); + }; + page.AdditionalOperations(tipMsg, action); + } + } + if (!UserInfo.Current.appUnlockType.Contains("2")) + { + UserInfo.Current.appUnlockType.Add("2"); + } + UserInfo.Current.appUnlockPasswrod = passwrod; + UserInfo.Current.SaveUserInfo(); + backAction(); + } + else if (optionType == "2") + { + //楠岃瘉瀵嗙爜閫氳繃 + //绉婚櫎褰撳墠鐣岄潰锛屾瘡娆¤繑鍥為兘杩斿洖鍒版渶涓婄骇 + this.RemoveFromParent(); + var page = new AppUnlockGesturePage("", backAction); + MainPage.BasePageView.AddChidren(page); + page.LoadPage("1"); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + else if (optionType == "3" || optionType == "4") + { + //3:鍏抽棴瀵嗙爜;4:鍏抽棴瑙i攣璁剧疆 閫氳繃 + if (optionType == "4") + { + backAction(); + this.RemoveFromParent(); + return; + } + if (UserInfo.Current.appUnlockType.Contains("2")) + { + UserInfo.Current.appUnlockType = new System.Collections.Generic.List<string>(); + UserInfo.Current.appUnlockPasswrod = ""; + UserInfo.Current.SaveUserInfo(); + this.RemoveFromParent(); + backAction(); + } + + } + else if (optionType == "5") + { + //5:鎸囩汗ID寮�鍏� 閫氳繃 + if (UserInfo.Current.appUnlockType.Contains("3")) + UserInfo.Current.appUnlockType.Remove("3"); + else + UserInfo.Current.appUnlockType.Add("3"); + + UserInfo.Current.SaveUserInfo(); + this.RemoveFromParent(); + backAction(); + } + else if (optionType == "6") + { + //6:闈㈠ID寮�鍏� 閫氳繃 + if (UserInfo.Current.appUnlockType.Contains("4")) + UserInfo.Current.appUnlockType.Remove("4"); + else + UserInfo.Current.appUnlockType.Add("4"); + + UserInfo.Current.SaveUserInfo(); + this.RemoveFromParent(); + + } + else if (optionType == "7") + { + //7:瑙i攣楠岃瘉 閫氳繃 + this.RemoveFromParent(); + backAction(); + } + } + + + /// <summary> + /// 浣跨敤璐︽埛瀵嗙爜鐧诲綍鎸夐挳 鎻愮ず鎸夐挳 + /// </summary> + void AddLoginTipButton() + { + Button btnLoginAccountVerify = new Button() + { + Y = Application.GetRealHeight(517), + Height = Application.GetRealHeight(60), + TextAlignment = TextAlignment.Center, + TextSize = CSS_FontSize.TextFontSize, + TextColor = CSS_Color.MainColor, + TextID = StringId.LogWithAccountAndPassword, + }; + bodyView.AddChidren(btnLoginAccountVerify); + + btnLoginAccountVerify.MouseUpEventHandler = (sender, e) => + { + //閫�鍑虹櫥褰� + HDLCommon.Current.Logout(); + }; + } + + /// <summary> + /// 杈撳叆鐧诲綍瀵嗙爜楠岃瘉 鎻愮ず鎸夐挳 + /// </summary> + void AddInputPasswordTipButton(string optionType) + { + Button btnLoginAccountVerify = new Button() + { + Y = Application.GetRealHeight(517), + Height = Application.GetRealHeight(60), + TextAlignment = TextAlignment.Center, + TextSize = CSS_FontSize.TextFontSize, + TextColor = CSS_Color.MainColor, + TextID = StringId.EnterLoginPasswordVerification, + }; + bodyView.AddChidren(btnLoginAccountVerify); + + btnLoginAccountVerify.MouseUpEventHandler = (sender, e) => + { + //杈撳叆鐧诲綍瀵嗙爜楠岃瘉 + Action<string> action = (pw) => + { + AuthenticationByLoginPassword(pw, optionType); + //var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw); + //if (resultObj.Code == StateCode.SUCCESS) + //{ + // PasswordInputPassed(optionType); + //} + //else + //{ + // Application.RunOnMainThread(() => + // { + // Utlis.ShowTip(Language.StringByID(StringId.AuthenticationFailedPasswordError)); + // }); + //} + + }; + new PublicAssmebly().LoadDialog_EditParater(StringId.EnterLoginPasswordVerification, "", action, StringId.PlsEntryPassword, 0, new System.Collections.Generic.List<string>(), true); + }; + } + + /// <summary> + /// 鐧诲綍瀵嗙爜楠岃瘉 + /// </summary> + /// <param name="pw"></param> + /// <param name="optionType"></param> + void AuthenticationByLoginPassword(string pw, string optionType) + { + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + + new System.Threading.Thread(() => + { + try + { + var resultObj = new HttpServerRequest().LoginByPassword(UserInfo.Current.AccountString, pw); + Application.RunOnMainThread(() => + { + if (resultObj.Code == StateCode.SUCCESS) + { + PasswordInputPassed(optionType); + } + else + { + Utlis.ShowTip(Language.StringByID(StringId.AuthenticationFailedPasswordError)); + } + }); + } + catch { } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + } + }) + { IsBackground = true }.Start(); } } } \ No newline at end of file -- Gitblit v1.8.0