From a1b0ab7044100daaa7e0f1da2d2ca45e38098963 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 29 三月 2021 09:13:25 +0800
Subject: [PATCH] 2021-3-29-2
---
HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockGesturePage.cs | 476 ++++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 339 insertions(+), 137 deletions(-)
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockGesturePage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/UnlockSetting/AppUnlockGesturePage.cs
index 5f7b43b..7fed444 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 = "";
@@ -54,11 +66,11 @@
IsBold = true,
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.EmphasisFontSize_Secondary,
- TextID = StringId.SetGesturePassword,
+ TextID = StringId.VerifyGesturePassword,
};
bodyView.AddChidren(btnTipTitle);
- Button btnTipMsg = new Button()
+ btnTipMsg = new Button()
{
Y = btnTipTitle.Bottom,
TextAlignment = TextAlignment.Center,
@@ -67,15 +79,27 @@
TextColor = CSS_Color.TextualColor,
SelectedTextColor = CSS_Color.WarningColor,
TextSize = CSS_FontSize.TextFontSize,
- TextID = string.IsNullOrEmpty(oldPasswrod) ? StringId.DrawUnlockPattern : StringId.DrawUnlockPatternAgain,
+ 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
{
@@ -88,7 +112,7 @@
BackgroundColor = CSS_Color.BackgroundColor,
};
bodyView.AddChidren(mGestureLockView);
-
+ mGestureLockView.SetSolidType(true);
//婊戝姩缁撴潫 鍥炶皟瀵嗙爜缁撴灉鍜屽瘑鐮侀暱搴�
mGestureLockView.OnLockVerifyEvent += (selectNumStr, selectCount) =>
{
@@ -113,147 +137,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.Remove("2");
- 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"))
- {
- MainPage.LoginUser.appUnlockType.Remove("3");
- MainPage.LoginUser.SaveUserInfo();
- this.RemoveFromParent();
- }
- if (MainPage.LoginUser.appUnlockType.Contains("4") && optionType == "6")
- {
- MainPage.LoginUser.appUnlockType.Remove("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 == "7")
+ {
+ //浣跨敤璐︽埛瀵嗙爜鐧诲綍鎸夐挳 鎻愮ず鎸夐挳
+ 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