From af1cb3ecd0f4b0589e00b28f7f9edccf39e6e12b Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 10 九月 2020 16:15:11 +0800 Subject: [PATCH] 202009101 --- HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs | 283 +++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 215 insertions(+), 68 deletions(-) diff --git a/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs b/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs index 237a1e9..ebbdac0 100644 --- a/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs +++ b/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs @@ -30,12 +30,19 @@ //閫夋嫨鎵嬫満鏂瑰紡 btnPhoneLogin.MouseUpEventHandler += (sender, e) => { + if (registerType == 0) + return; + etAccount.Text = registerPhone; + etPassword.Text = ""; + etRepeatPassword.Text = ""; #region 鍒囨崲閫変腑鎸夐挳 + btnGetVerificationCode_Phone.Visible = true; + btnGetVerificationCode_Mail.Visible = false; btnEmailLogin.TextColor = CSS_Color.PromptingColor1; btnEmailLogin.TextSize = CSS_FontSize.TextFontSize; btnPhoneLogin.TextColor = CSS_Color.MainColor; btnPhoneLogin.TextSize = CSS_FontSize.EmphasisFontSize_Secondary; - etAccount.PlaceholderText = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber); + etAccount.PlaceholderText = Language.StringByID(StringId.PlsEntryPhoneNumber); #endregion #region 鍒囨崲鏂瑰紡鏂瑰紡鍙婂浘鏍� @@ -51,7 +58,14 @@ //閫夋嫨閭鏂瑰紡 btnEmailLogin.MouseUpEventHandler += (sender, e) => { + if (registerType == 1) + return; + etAccount.Text = registerEmail; + etPassword.Text = ""; + etRepeatPassword.Text = ""; #region 鍒囨崲閫変腑鎸夐挳 + btnGetVerificationCode_Phone.Visible = false; + btnGetVerificationCode_Mail.Visible = true; btnPhoneLogin.TextColor = CSS_Color.PromptingColor1; btnPhoneLogin.TextSize = CSS_FontSize.TextFontSize; btnEmailLogin.TextColor = CSS_Color.MainColor; @@ -78,15 +92,31 @@ { etAccount.TextChangeEventHandler += (sender, e) => { - Regex reg = new Regex(@"^[1]+\d{9}"); + Regex reg = new Regex(@"^[1]+\d{10}"); var mFalg = reg.Match(etAccount.Text.Trim()); - if (!mFalg.Success || (btnGlobalRoaming.Text == "+86" && etAccount.Text.Trim().Length != 11)) + if (registerType == 0)//鎵嬫満鑾峰彇楠岃瘉鐮佹寜閽敓鏁堟潯浠� { - btnGetVerificationCode.IsSelected = false; + if (btnGlobalRoaming.Text == "+86" && etAccount.Text.Trim().Length != 11) + { + btnGetVerificationCode_Phone.IsSelected = false; + } + else + { + if (btnGetVerificationCode_Phone.Text == Language.StringByID(StringId.GetVerificationCode)) + btnGetVerificationCode_Phone.IsSelected = true; + } } - else + else//閭鑾峰彇楠岃瘉鐮佹寜閽敓鏁堟潯浠� { - btnGetVerificationCode.IsSelected = true; + if (!mFalg.Success) + { + btnGetVerificationCode_Mail.IsSelected = false; + } + else + { + if (btnGetVerificationCode_Mail.Text == Language.StringByID(StringId.GetVerificationCode)) + btnGetVerificationCode_Mail.IsSelected = true; + } } }; } @@ -107,12 +137,12 @@ else { //鏍囪鎵嬫満鍙风爜鏃犳晥 - btnGetVerificationCode.IsSelected = false; btnAccountViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; btnAccountViewBottomLine.Height = Application.GetRealHeight(1); //鎵嬫満鏂瑰紡-楠岃瘉鎵嬫満鍙风爜鏄惁姝g‘ if (registerType == 0) { + btnGetVerificationCode_Phone.IsSelected = false; Regex reg = new Regex(@"^[1]+\d{9}"); var mFalg = reg.Match(etAccount.Text.Trim()); if (!mFalg.Success || (btnGlobalRoaming.Text == "+86" && etAccount.Text.Trim().Length != 11)) @@ -121,36 +151,43 @@ btnAccountViewBottomLine.Height = Application.GetRealHeight(2); new Tip() { - CloseTime = 3, + CloseTime = 1, Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber), Direction = AMPopTipDirection.None, }.Show(bodyView); } else { - btnGetVerificationCode.IsSelected = true; + if (btnGetVerificationCode_Phone.Text == Language.StringByID( StringId.GetVerificationCode)) + { + btnGetVerificationCode_Phone.IsSelected = true; + } LoadMothed_EnableResetButton(); } } else if (registerType == 1) { + btnGetVerificationCode_Mail.IsSelected = false; //閭鏂瑰紡-楠岃瘉閭鏄惁姝g‘ var reg = new Regex("^\\s*([A-Za-z0-9_-]+(\\.\\w+)*@(\\w+\\.)+\\w{2,5})\\s*$"); var mFalg = reg.Match(etAccount.Text.Trim()); - if (!mFalg.Success || (btnGlobalRoaming.Text == "+86" && etAccount.Text.Trim().Length != 11)) + if (!mFalg.Success ) { btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; btnAccountViewBottomLine.Height = Application.GetRealHeight(2); new Tip() { - CloseTime = 3, + CloseTime = 1, Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress), Direction = AMPopTipDirection.None, }.Show(bodyView); } else { - btnGetVerificationCode.IsSelected = true; + if (btnGetVerificationCode_Mail.Text == Language.StringByID(StringId.GetVerificationCode)) + { + btnGetVerificationCode_Mail.IsSelected = true; + } LoadMothed_EnableResetButton(); } } @@ -170,13 +207,13 @@ btnPasswordViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; btnPasswordViewBottomLine.Height = Application.GetRealHeight(1); //鏍¢獙瀵嗙爜鏄惁绗﹀悎瑕佹眰 - if (etPassword.Text.Trim().Length < 6) + if (etPassword.Text.Trim().Length < 6 || etPassword.Text.Trim().Length > 13) { new Tip() { - CloseTime = 3, + CloseTime = 1, Direction = AMPopTipDirection.None, - Text = Language.StringByID(StringId.IncorrectRepeatPassword) + Text = Language.StringByID(StringId.PasswordIsUnqualified) }.Show(bodyView); } } @@ -201,7 +238,7 @@ btnRepeatPasswordViewBottomLine.Height = Application.GetRealHeight(2); new Tip() { - CloseTime = 3, + CloseTime = 1, Direction = AMPopTipDirection.None, Text = Language.StringByID(StringId.IncorrectRepeatPassword) }.Show(bodyView); @@ -258,63 +295,75 @@ /// </summary> void LoadEvent_GetVerificationCode() { - btnGetVerificationCode.MouseUpEventHandler += (sender, e) => + EventHandler<MouseEventArgs> eventHandler = (sender, e) => { - if (btnGetVerificationCode.IsSelected) + var account = etAccount.Text.Trim(); + if ((sender as Button).IsSelected) { + //鐭俊鍙戦�侀棿闅�60s + (sender as Button).IsSelected = false; + etVerificationCode.Foucs = true; //鑾峰彇楠岃瘉鐮� - var result = pm.SendSms(etAccount.Text.Trim()); - if (result.StateCode == "Success") - { - //鐭俊鍙戦�侀棿闅�60s - btnGetVerificationCode.IsSelected = false; - etVerificationCode.Foucs = true; int time = 60; - new Thread(() => + new Thread(() => { + while (time > 0) { - while (time > 0) - { - time--; - Application.RunOnMainThread(() => - { - btnGetVerificationCode.Text = time.ToString() + "s"; - }); - Thread.Sleep(1000); - } + time--; Application.RunOnMainThread(() => { - //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢 - btnGetVerificationCode.IsSelected = true; - btnGetVerificationCode.TextID = StringId.GetVerificationCode; + (sender as Button).Text = time.ToString() + "s"; }); - }) - { IsBackground = true }.Start(); - } - else - { - string tipString = "Server error"; - switch (result.StateCode) - { - case "Exist": - tipString = Language.StringByID(StringId.AccountAlreadyExists); - break; - case "SendFail": - tipString = Language.StringByID(StringId.FailedToSendVerificationCode); - break; - case "Self:Net_Error": - tipString = Language.StringByID(StringId.NetworkAnomaly); - break; + Thread.Sleep(1000); } - - new Tip() + Application.RunOnMainThread(() => { - CloseTime = 3, - Direction = AMPopTipDirection.None, - Text = tipString - }.Show(bodyView); - } + //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢 + (sender as Button).IsSelected = true; + (sender as Button).TextID = StringId.GetVerificationCode; + }); + }){ IsBackground = true}.Start(); + new Thread(() => + { + var result = pm.GetLoginVerCode(account); + if (result.StateCode.ToUpper() == "SUCCESS") + { + } + else + { + string tipString = "Server error"; + switch (result.StateCode) + { + case "Exist": + tipString = Language.StringByID(StringId.AccountAlreadyUse); + break; + case "SendFail": + tipString = Language.StringByID(StringId.FailedToSendVerificationCode); + break; + case "AccountNoExists": + tipString = Language.StringByID(StringId.AccountNotExist); + break; + case "Self:Net_Error": + tipString = Language.StringByID(StringId.NetworkAnomaly); + break; + } + + Application.RunOnMainThread(() => + { + new Tip() + { + CloseTime = 1, + Direction = AMPopTipDirection.None, + Text = tipString + }.Show(bodyView); + }); + } + }) + { IsBackground = true }.Start(); } }; + + btnGetVerificationCode_Mail.MouseUpEventHandler = eventHandler; + btnGetVerificationCode_Phone.MouseUpEventHandler = eventHandler; } /// <summary> @@ -329,7 +378,7 @@ //鍒涘缓淇敼瀵嗙爜绾跨▼ var loginThread = LoadMothed_ResetThread(); waitPage = new Loading(); - new WaitPageMothed().LoadPage_WaitPage(loginThread, bodyView, waitPage); + new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage); } }; } @@ -353,15 +402,15 @@ return new Thread(() => { var verResult = pm.ValidatorCode(account, verCode, countryIndex); - if (verResult.StateCode == "Success") + if (verResult.StateCode.ToUpper() == "SUCCESS") { var resetResult = pm.ResetPassword(account, password, repeatPassword, countryIndex); - if (resetResult.StateCode == "Success") + if (resetResult.StateCode.ToUpper() == "SUCCESS") { Application.RunOnMainThread(() => { - waitPage.Hide(); - this.Close(); + LoadEvent_AutoLogin(); + callbackAction?.Invoke(account); }); } @@ -385,7 +434,7 @@ waitPage.Hide(); new Tip() { - CloseTime = 3, + CloseTime = 1, Direction = AMPopTipDirection.None, Text = erorrInfo, }.Show(bodyView); @@ -399,6 +448,19 @@ { case "ValidCodeAndPhoneNoEqual"://楠岃瘉鐮侀敊璇� erorrInfo = Language.StringByID(StringId.VerificationCodeWrong); + Application.RunOnMainThread(() => + { + btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(2); + }); + break; + case "NoRecord": + erorrInfo = Language.StringByID(StringId.PlsGetTheVerificationCode); + Application.RunOnMainThread(() => + { + btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(2); + }); break; default: erorrInfo = "Server error"; @@ -409,7 +471,7 @@ waitPage.Hide(); new Tip() { - CloseTime = 3, + CloseTime = 1, Direction = AMPopTipDirection.None, Text = erorrInfo, }.Show(bodyView); @@ -433,5 +495,90 @@ } } + /// <summary> + /// 浣忓畢鎴愬姛涔嬪悗鑷姩鐧诲綍 + /// </summary> + void LoadEvent_AutoLogin() + { + Dialog dialog = new Dialog(); + + FrameLayout frame = new FrameLayout() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(198), + Width = Application.GetRealWidth(288), + Height = Application.GetRealHeight(206), + BackgroundColor = CSS_Color.MainBackgroundColor, + Radius = (uint)Application.GetRealWidth(12), + BorderWidth = 0, + BorderColor = 0x00000000, + }; + dialog.AddChidren(frame); + + Button btnAccountText = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(40), + Height = Application.GetRealHeight(17 + 14 + 14), + IsMoreLines = true, + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.TextFontSize, + //Text = "s鏄敓鐢熶笘涓�", + }; + frame.AddChidren(btnAccountText); + + Button btnTipRegisterSuccess = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(123), + Height = Application.GetRealHeight(30), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextID = StringId.PasswordChangeSuccessfully, + }; + frame.AddChidren(btnTipRegisterSuccess); + + Button btnAutoLoginTip = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = btnTipRegisterSuccess.Bottom, + Height = Application.GetRealHeight(17 + 8), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + TextID = StringId.AutomaticallyLogin, + }; + //frame.AddChidren(btnAutoLoginTip); + + Button btnHeadImage = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(150), + Width = Application.GetRealWidth(84), + Height = Application.GetRealWidth(84), + Radius = (uint)Application.GetRealWidth(42), + BorderColor = 0x00000000, + BorderWidth = 0, + UnSelectedImagePath = "LoginIcon/2.png", + }; + dialog.AddChidren(btnHeadImage); + + dialog.Show(); + + new Thread(() => + { + Thread.Sleep(1500); + Application.RunOnMainThread(() => + { + dialog.Close(); + this.Close(); + }); + }) + { IsBackground = true }.Start(); + } + + } } -- Gitblit v1.8.0