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/UI1-Login/ForgetPasswordPageBLL.cs | 673 +++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 496 insertions(+), 177 deletions(-) diff --git a/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs b/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs index 98fbf25..79dced0 100644 --- a/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs +++ b/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs @@ -18,7 +18,8 @@ LoadEvent_EditTextFcousChange(); LoadEvent_ChangeTextVisble(); LoadEvent_GetVerificationCode(); - LoadEvent_Register(); + LoadEvent_Reset(); + LoadEvent_TextChange(); } /// <summary> @@ -29,13 +30,26 @@ //閫夋嫨鎵嬫満鏂瑰紡 btnPhoneLogin.MouseUpEventHandler += (sender, e) => { + if (registerType == 0) + return; + + if (!string.IsNullOrEmpty(etAccount.Text.Trim())) + { + //璁板綍涔嬪墠鐨勯偖绠� + registerEmail = etAccount.Text.Trim(); + } + etAccount.IsNumberKeyboardType = true; + 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; - btnChooseBottomLine.X = btnPhoneLogin.X + Application.GetRealWidth(27); - etAccount.PlaceholderText = Language.StringByID(R.InternationalizationString.PlsEntryCorrectMobilNeumber); + etAccount.PlaceholderText = Language.StringByID(StringId.PlsEntryPhoneNumber); #endregion #region 鍒囨崲鏂瑰紡鏂瑰紡鍙婂浘鏍� @@ -51,13 +65,27 @@ //閫夋嫨閭鏂瑰紡 btnEmailLogin.MouseUpEventHandler += (sender, e) => { + if (registerType == 1) + return; + + if (!string.IsNullOrEmpty(etAccount.Text.Trim())) + { + //璁板綍涔嬪墠鐨勬墜鏈哄彿 + registerPhone = etAccount.Text.Trim(); + } + etAccount.IsNumberKeyboardType = false; + etAccount.SecureTextEntry = false;//2020-12-10 瑙e喅Android鏁板瓧鍒囨崲鍥炶矾鏅�氶敭鐩樺彉鍔犲瘑闂 + 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; btnEmailLogin.TextSize = CSS_FontSize.EmphasisFontSize_Secondary; - btnChooseBottomLine.X = btnEmailLogin.X + Application.GetRealWidth(27); - etAccount.PlaceholderText = Language.StringByID(R.InternationalizationString.PlsEntryEmailAddress); + etAccount.PlaceholderText = Language.StringByID(StringId.PlsEntryEmailAddress); #endregion #region 鍒囨崲淇敼鏂瑰紡鍙婂浘鏍� @@ -73,6 +101,61 @@ } /// <summary> + /// 鍔犺浇鏂囨湰鍙樺寲浜嬩欢 + /// </summary> + void LoadEvent_TextChange() + { + etAccount.TextChangeEventHandler += (sender, e) => + { + //Regex reg = new Regex(@"^[1]+\d{10}"); + //var mFalg = reg.Match(etAccount.Text.Trim()); + if (registerType == 0)//鎵嬫満鑾峰彇楠岃瘉鐮佹寜閽敓鏁堟潯浠� + { + if (!Utlis.CheckPhoneNumber(etAccount.Text.Trim(), phoneZoneCode)) + { + btnGetVerificationCode_Phone.IsSelected = false; + } + else + { + if (btnGetVerificationCode_Phone.Text == Language.StringByID(StringId.GetVerificationCode)) + btnGetVerificationCode_Phone.IsSelected = true; + } + } + else//閭鑾峰彇楠岃瘉鐮佹寜閽敓鏁堟潯浠� + { + if (!Utlis.CheckEmail(etAccount.Text.Trim())) + { + btnGetVerificationCode_Mail.IsSelected = false; + } + else + { + if (btnGetVerificationCode_Mail.Text == Language.StringByID(StringId.GetVerificationCode)) + btnGetVerificationCode_Mail.IsSelected = true; + } + } + + LoadMothed_EnableResetButton(); + }; + + //etVerificationCode.TextChangeEventHandler = (sender, e) => { + + // if (etVerificationCode.Text.Length > 1) + // { + // LoadMothed_EnableResetButton(); + // } + //}; + + Action<View, string> textChangeEventHandler = (view, textStr) => + { + LoadMothed_EnableResetButton(); + }; + //etAccount.TextChangeEventHandler += textChangeEventHandler; + etPassword.TextChangeEventHandler += textChangeEventHandler; + etRepeatPassword.TextChangeEventHandler += textChangeEventHandler; + etVerificationCode.TextChangeEventHandler += textChangeEventHandler; + } + + /// <summary> /// 鍔犺浇鏂囨湰妗嗙劍鐐瑰彉鍖栦簨浠� /// </summary> void LoadEvent_EditTextFcousChange() @@ -82,153 +165,143 @@ { if (etAccount.Foucs) { - btnAccountViewBottomLine.BackgroundColor = CSS_Color.MainColor; - btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + HDLCommon.Current.BottomLineShowType(btnAccountViewBottomLine, BottomLineType.GotFocus); } else { - //鏍囪鎵嬫満鍙风爜鏃犳晥 - btnGetVerificationCode.IsSelected = false; - btnAccountViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; - btnAccountViewBottomLine.Height = Application.GetRealHeight(1); + if (isHitBack) return;//鐐瑰嚮杩斿洖鍏抽棴椤甸潰涓嶆娴嬫彁绀� + + HDLCommon.Current.BottomLineShowType(btnAccountViewBottomLine, BottomLineType.Normal); + if (etAccount.Text.Length == 0) return;//娌¤緭鍏ヤ笉妫�娴嬫彁绀� + //鎵嬫満鏂瑰紡-楠岃瘉鎵嬫満鍙风爜鏄惁姝g‘ if (registerType == 0) { - Regex reg = new Regex("^\\d+$"); - var mFalg = reg.Match(etAccount.Text.Trim()); - if (!mFalg.Success || (btnGlobalRoaming.Text == "+86" && etAccount.Text.Trim().Length != 11)) + btnGetVerificationCode_Phone.IsSelected = false; + if (!Utlis.CheckPhoneNumber(etAccount.Text.Trim(), phoneZoneCode)) { - btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + HDLCommon.Current.BottomLineShowType(btnAccountViewBottomLine, BottomLineType.Error); new Tip() { - CloseTime = 3, - Text = Language.StringByID(R.InternationalizationString.PlsEntryCorrectMobilNeumber), + CloseTime = 1, + Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber), Direction = AMPopTipDirection.None, }.Show(bodyView); } else { - //鏍囪鎵嬫満鍙风爜鏈夋晥 - btnGetVerificationCode.IsSelected = true; - //璐﹀彿鏈夋晥銆佸瘑鐮佹湁鏁堛�侀獙璇佺爜杈撳叆浜嗭紝鎵嶈兘鐐瑰嚮鏂瑰紡 - if (btnGetVerificationCode.IsSelected && ValidPassword && string.IsNullOrEmpty(etVerificationCode.Text.Trim())) + if (btnGetVerificationCode_Phone.Text == Language.StringByID(StringId.GetVerificationCode)) { - btnRegister.IsSelected = true; + 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 (!Utlis.CheckEmail(etAccount.Text.Trim())) { - btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + HDLCommon.Current.BottomLineShowType(btnAccountViewBottomLine, BottomLineType.Error); new Tip() { - CloseTime = 3, - Text = Language.StringByID(R.InternationalizationString.PlsEntryCorrectEmailAddress), + CloseTime = 1, + Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress), Direction = AMPopTipDirection.None, }.Show(bodyView); } else { - //鏍囪鎵嬫満鍙风爜鏈夋晥 - btnGetVerificationCode.IsSelected = true; - //璐﹀彿鏈夋晥銆佸瘑鐮佹湁鏁堛�侀獙璇佺爜杈撳叆浜嗭紝鎵嶈兘鐐瑰嚮鏂瑰紡 - if (btnGetVerificationCode.IsSelected && ValidPassword && string.IsNullOrEmpty(etVerificationCode.Text.Trim())) + if (btnGetVerificationCode_Mail.Text == Language.StringByID(StringId.GetVerificationCode)) { - btnRegister.IsSelected = true; + btnGetVerificationCode_Mail.IsSelected = true; } + LoadMothed_EnableResetButton(); } } } }; //瀵嗙爜鏂囨湰妗嗙劍鐐瑰彉鍖栦簨浠� - etPassword.FoucsChanged += (sender, e) => { + etPassword.FoucsChanged += (sender, e) => + { if (etPassword.Foucs) { - btnPasswordViewBottomLine.BackgroundColor = CSS_Color.MainColor; - btnPasswordViewBottomLine.Height = Application.GetRealHeight(2); + HDLCommon.Current.BottomLineShowType(btnPasswordViewBottomLine, BottomLineType.GotFocus); } else { - btnPasswordViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; - btnPasswordViewBottomLine.Height = Application.GetRealHeight(1); + if (isHitBack) return;//鐐瑰嚮杩斿洖鍏抽棴椤甸潰涓嶆娴嬫彁绀� + + HDLCommon.Current.BottomLineShowType(btnPasswordViewBottomLine, BottomLineType.Normal); + if (etPassword.Text.Length == 0) return;//娌¤緭鍏ヤ笉妫�娴嬫彁绀� + //鏍¢獙瀵嗙爜鏄惁绗﹀悎瑕佹眰 - if (etPassword.Text.Trim().Length < 6) + if (etPassword.Text.Trim().Length < 6 || etPassword.Text.Trim().Length > 13) { + HDLCommon.Current.BottomLineShowType(btnPasswordViewBottomLine, BottomLineType.Error); new Tip() { - CloseTime = 3, + CloseTime = 1, Direction = AMPopTipDirection.None, - Text = Language.StringByID(R.InternationalizationString.IncorrectRepeatPassword) + Text = Language.StringByID(StringId.PasswordIsUnqualified) }.Show(bodyView); } } }; //纭瀵嗙爜鏂囨湰妗嗙劍鐐瑰彉鍖栦簨浠� - etRepeatPassword.FoucsChanged += (sender, e) => { + etRepeatPassword.FoucsChanged += (sender, e) => + { if (etRepeatPassword.Foucs) { - btnRepeatPasswordViewBottomLine.BackgroundColor = CSS_Color.MainColor; - btnRepeatPasswordViewBottomLine.Height = Application.GetRealHeight(2); + HDLCommon.Current.BottomLineShowType(btnRepeatPasswordViewBottomLine, BottomLineType.GotFocus); } else { - btnRepeatPasswordViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; - btnRepeatPasswordViewBottomLine.Height = Application.GetRealHeight(1); + if (isHitBack) return;//鐐瑰嚮杩斿洖鍏抽棴椤甸潰涓嶆娴嬫彁绀� + + HDLCommon.Current.BottomLineShowType(btnRepeatPasswordViewBottomLine, BottomLineType.Normal); //鏍¢獙涓ゆ杈撳叆鐨勫瘑鐮佹槸鍚︿竴鑷� if (etPassword.Text.Trim() != etRepeatPassword.Text.Trim()) { - btnRepeatPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnRepeatPasswordViewBottomLine.Height = Application.GetRealHeight(2); + HDLCommon.Current.BottomLineShowType(btnRepeatPasswordViewBottomLine, BottomLineType.Error); new Tip() { - CloseTime = 3, + CloseTime = 1, Direction = AMPopTipDirection.None, - Text = Language.StringByID(R.InternationalizationString.IncorrectRepeatPassword) + MaxWidth = Application.GetRealWidth(300), + Text = Language.StringByID(StringId.IncorrectRepeatPassword) }.Show(bodyView); } else { - ValidPassword = true; - //璐﹀彿鏈夋晥銆佸瘑鐮佹湁鏁堛�侀獙璇佺爜杈撳叆浜嗭紝鎵嶈兘鐐瑰嚮鏂瑰紡 - if (btnGetVerificationCode.IsSelected && ValidPassword && string.IsNullOrEmpty(etVerificationCode.Text.Trim())) - { - btnRegister.IsSelected = true; - } + LoadMothed_EnableResetButton(); } } }; //楠岃瘉鐮佹枃鏈鐒︾偣鍙樺寲浜嬩欢 - etVerificationCode.FoucsChanged += (sender, e) => { + etVerificationCode.FoucsChanged += (sender, e) => + { if (etVerificationCode.Foucs) { - btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.MainColor; - btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(2); + HDLCommon.Current.BottomLineShowType(btnVerificationCodeViewBottomLine, BottomLineType.GotFocus); } else { - btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; - btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(1); + if (isHitBack) return;//鐐瑰嚮杩斿洖鍏抽棴椤甸潰涓嶆娴嬫彁绀� + + HDLCommon.Current.BottomLineShowType(btnVerificationCodeViewBottomLine, BottomLineType.Normal); if (etVerificationCode.Text.Length > 4) { - //璐﹀彿鏈夋晥銆佸瘑鐮佹湁鏁堛�侀獙璇佺爜杈撳叆浜嗭紝鎵嶈兘鐐瑰嚮鏂瑰紡 - if (btnGetVerificationCode.IsSelected && ValidPassword && string.IsNullOrEmpty(etVerificationCode.Text.Trim())) - { - btnRegister.IsSelected = true; - } + LoadMothed_EnableResetButton(); } } }; } + /// <summary> /// 鏇存敼瀵嗙爜鍙鎬� @@ -236,153 +309,399 @@ void LoadEvent_ChangeTextVisble() { //瀵嗙爜鏂囨湰鍙鎬у彉鍖� - btnVisiblePassword.MouseUpEventHandler += (sender, e) => { + btnVisiblePassword.MouseUpEventHandler += (sender, e) => + { btnVisiblePassword.IsSelected = !btnVisiblePassword.IsSelected; etPassword.SecureTextEntry = !btnVisiblePassword.IsSelected; }; //閲嶅瀵嗙爜鏂囨湰鍙鎬у彉鍖� - btnRepeatVisiblePassword.MouseUpEventHandler += (sender, e) => { + btnRepeatVisiblePassword.MouseUpEventHandler += (sender, e) => + { btnRepeatVisiblePassword.IsSelected = !btnRepeatVisiblePassword.IsSelected; etRepeatPassword.SecureTextEntry = !btnRepeatVisiblePassword.IsSelected; }; } /// <summary> + /// 妫�娴嬪綋鍓嶉厤缃煙鍚嶆槸鍚︿竴鑷达紝涓嶄竴鑷村垯鏇挎崲 + /// </summary> + /// <param name="result"></param> + void CheckAndSetUserRequestHost(ResponsePackNew result) + { + try + { + var mGlobalRegionListObj = Newtonsoft.Json.JsonConvert.DeserializeObject<GlobalRegionListRes>(result.Data.ToString()); + if (OnAppConfig.Instance.RequestHttpsHost != mGlobalRegionListObj.regionUrl) + { + OnAppConfig.Instance.RequestHttpsHost = mGlobalRegionListObj.regionUrl; + OnAppConfig.Instance.GlobalRegion = mGlobalRegionListObj; + OnAppConfig.Instance.SaveConfig(); + } + } + catch { } + } + + + /// <summary> /// 鑾峰彇楠岃瘉鐮� /// </summary> void LoadEvent_GetVerificationCode() { - btnGetVerificationCode.MouseUpEventHandler += (sender, e) => { - if (btnGetVerificationCode.IsSelected) + EventHandler<MouseEventArgs> eventHandler = (sender, e) => + { + var account = etAccount.Text.Trim(); + if ((sender as Button).IsSelected) { - //鐭俊鍙戦�侀棿闅�60s - btnGetVerificationCode.IsSelected = false; + //鍔犺浇Loading鏁堟灉 + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + int time = 60; new Thread(() => { - while (time == 0) + try { - time--; + //1.鍏堟鏌ヨ处鍙锋槸鍚︽敞鍐岃繃 + var result = pm.GetRegionByAccount(account); + if (result.Code != StateCode.SUCCESS) + { + IMessageCommon.Current.ShowErrorInfoAlter(result.Code); + return; + } + else + { + + //2.1妫�娴嬪綋鍓嶉厤缃煙鍚嶆槸鍚︿竴鑷达紝涓嶄竴鑷村垯鏇挎崲 + CheckAndSetUserRequestHost(result); + //2.2宸茬粡娉ㄥ唽杩囷紝鍙戦�侀獙璇佺爜鎵惧洖瀵嗙爜 + ResponsePackNew resultObj; + //2.3璇锋眰鑾峰彇楠岃瘉鐮� + if (registerType == 1)//閭 + { + resultObj = pm.VerificationCodeSend(VerifyType.FIND_PASSWORD, account); + } + else + { + resultObj = pm.VerificationCodeSend(VerifyType.FIND_PASSWORD, account, true, phoneZoneCode); + } + + if (resultObj.Code != StateCode.SUCCESS) + { + // 鎻愮ず閿欒 + IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code); + } + else + { + //3.鍙戦�侀獙璇佺爜鎴愬姛锛屽紑濮嬭鏃� + Application.RunOnMainThread(() => + { + //鐭俊鍙戦�侀棿闅�60s + (sender as Button).IsSelected = false; + etVerificationCode.Foucs = true; + }); + //2.1鑾峰彇楠岃瘉鐮佸�掕鏃� + new Thread(() => + { + while (time > 0) + { + time--; + Application.RunOnMainThread(() => + { + (sender as Button).Text = time.ToString() + "s"; + }); + Thread.Sleep(1000); + } + Application.RunOnMainThread(() => + { + //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢 + (sender as Button).IsSelected = true; + (sender as Button).TextID = StringId.GetVerificationCode; + }); + }) + { IsBackground = true }.Start(); + + } + } + } + catch { } + finally + { Application.RunOnMainThread(() => { - btnGetVerificationCode.Text = time.ToString() + "s"; + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } }); - Thread.Sleep(1000); } - Application.RunOnMainThread(() => - { - //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢 - btnGetVerificationCode.IsSelected = true; - }); }) { IsBackground = true }.Start(); - //妫�鏌ユ墜鏈烘槸鍚﹀凡缁忚鏂瑰紡 - var checkPhoneResult = pm.IsExistingAccount(etAccount.Text.Trim()); - //鎵嬫満鏈鏂瑰紡 - if (checkPhoneResult.StateCode != HttpRequesResult.SUCCESS.ToString()) - { - //鑾峰彇楠岃瘉鐮� - pm.GetPhoneVerificationCode(etAccount.Text.Trim(), MainPage.Company); - } - else - { - //鎻愮ず鎵嬫満鍙风爜宸茬粡鏂瑰紡 - new Tip() - { - CloseTime = 3, - Direction = AMPopTipDirection.None, - Text = Language.StringByID(R.InternationalizationString.AccountAlreadyExists) - }.Show(bodyView); - } } }; + + btnGetVerificationCode_Mail.MouseUpEventHandler = eventHandler; + btnGetVerificationCode_Phone.MouseUpEventHandler = eventHandler; } /// <summary> /// 鍔犺浇鏂瑰紡鎸夐挳浜嬩欢 /// </summary> - void LoadEvent_Register() + void LoadEvent_Reset() { - btnRegister.MouseUpEventHandler += (sender, e) => + btnReset.MouseUpEventHandler += (sender, e) => { - //鎵嬫満鏂瑰紡 - if (registerType == 0) + if (btnReset.IsSelected) { - //鏍¢獙楠岃瘉鐮� - var validateSmsResult = pm.ValidateSmsCode(etAccount.Text.Trim(), etVerificationCode.Text.Trim()); - //楠岃瘉鐮佹牎楠屾垚鍔� - if (validateSmsResult.StateCode == HttpRequesResult.SUCCESS.ToString()) - { - //楠岃瘉璐﹀彿 - var registerPhoneResult = pm.RegisterPhone(etAccount.Text.Trim(), etPassword.Text.Trim(), Language.CurrentLanguage); - if (registerPhoneResult.StateCode == HttpRequesResult.SUCCESS.ToString()) - { - //楠岃瘉鎴愬姛 - //鎵ц鍥炶皟浜嬩欢 - callbackAction?.Invoke(etAccount.Text.Trim()); - } - else - { - //楠岃瘉澶辫触 - new Tip() - { - CloseTime = 3, - Text = registerPhoneResult.ErrorInfo, - Direction = AMPopTipDirection.None, - }.Show(bodyView); - } - } - else - { - //楠岃瘉鐮佹牎楠屽け璐� - new Tip() - { - CloseTime = 3, - Direction = AMPopTipDirection.None, - Text = Language.StringByID(R.InternationalizationString.VerificationCodeWrong) - }.Show(bodyView); - } - } - else if (registerType == 1) - { - //閭鏂瑰紡 - //鏍¢獙楠岃瘉鐮� - var validateSmsResult = pm.ValidateSmsCode(etAccount.Text.Trim(), etVerificationCode.Text.Trim()); - //楠岃瘉鐮佹牎楠屾垚鍔� - if (validateSmsResult.StateCode == HttpRequesResult.SUCCESS.ToString()) - { - //鏂瑰紡璐﹀彿 - var registerPhoneResult = pm.RegisterPhone(etAccount.Text.Trim(), etPassword.Text.Trim(), Language.CurrentLanguage); - if (registerPhoneResult.StateCode == HttpRequesResult.SUCCESS.ToString()) - { - //鏂瑰紡鎴愬姛 - //鎵ц鍥炶皟浜嬩欢 - callbackAction?.Invoke(etAccount.Text.Trim()); - } - else - { - //鏂瑰紡澶辫触 - new Tip() - { - CloseTime = 3, - Text = registerPhoneResult.ErrorInfo, - Direction = AMPopTipDirection.None, - }.Show(bodyView); - } - } - else - { - //楠岃瘉鐮佹牎楠屽け璐� - new Tip() - { - CloseTime = 3, - Direction = AMPopTipDirection.None, - Text = Language.StringByID(R.InternationalizationString.VerificationCodeWrong) - }.Show(bodyView); - } + //妫�娴嬭处鍙� + if (!CheckAccount()) return; + //妫�娴嬪瘑鐮� + if (!CheckPassword()) return; + //妫�娴嬮獙璇佺爜 + if (!CheckVerificationCode()) return; + + //鍒涘缓淇敼瀵嗙爜绾跨▼ + var loginThread = LoadMothed_ResetThread(); + waitPage = new Loading(); + new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage); } }; } + /// <summary> + /// 鍔犺浇閲嶇疆瀵嗙爜鏂规硶 + /// </summary> + Thread LoadMothed_ResetThread() + { + string account = etAccount.Text.Trim(); + string password = etPassword.Text.Trim(); + string repeatPassword = etRepeatPassword.Text.Trim(); + string verCode = etVerificationCode.Text.Trim(); + int countryIndex = 0; + try + { + countryIndex = Convert.ToInt32(btnGlobalRoaming.Text.Trim().Remove('+')); + } + catch { } + + return new Thread(() => + { + // 蹇樿瀵嗙爜 + var isPhone = registerType == 0; + var resultObj = pm.ForgetPassword(account, password, verCode, isPhone); + if (resultObj.Code == StateCode.SUCCESS) + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.Hide(); + } + ShowAutoLoginDialog(account, password, isPhone); + }); + + } + else + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.Hide(); + } + + // 楠岃瘉鐮侀敊璇� 璀﹀憡鎻愮ず + if (resultObj.Code == StateCode.VERIFICATION_CODE_WRONG) + { + HDLCommon.Current.BottomLineShowType(btnVerificationCodeViewBottomLine, BottomLineType.Error); + } + }); + // 鎻愮ず閿欒 + IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code); + } + }); + } + + /// <summary> + /// 浣胯兘淇敼纭畾鎸夐挳 + /// </summary> + void LoadMothed_EnableResetButton() + { + if (!string.IsNullOrEmpty(etAccount.Text) && !string.IsNullOrEmpty(etPassword.Text) && !string.IsNullOrEmpty(etVerificationCode.Text) && (etPassword.Text.Trim() == etRepeatPassword.Text.Trim())) + { + btnReset.IsSelected = true; + } + else + { + btnReset.IsSelected = false; + } + } + + /// <summary> + /// 妫�娴嬭处鍙� + /// </summary> + /// <returns></returns> + bool CheckAccount() + { + //鎵嬫満鏂瑰紡-楠岃瘉鎵嬫満鍙风爜鏄惁姝g‘ + if (registerType == 0) + { + if (!Utlis.CheckPhoneNumber(etAccount.Text.Trim(), phoneZoneCode)) + { + Utlis.ShowTip(Language.StringByID(StringId.PlsEntryCorrectMobilNeumber)); + } + else + { + return true; + } + + } + else if (registerType == 1) + { + //閭鏂瑰紡-楠岃瘉閭鏄惁姝g‘ + if (!Utlis.CheckEmail(etAccount.Text.Trim())) + { + Utlis.ShowTip(Language.StringByID(StringId.PlsEntryCorrectEmailAddress)); + } + else + { + return true; + } + } + + return false; + } + + /// <summary> + /// 妫�娴嬪瘑鐮佹槸鍚︽纭� + /// </summary> + /// <returns></returns> + bool CheckPassword() + { + //鏍¢獙瀵嗙爜鏄惁绗﹀悎瑕佹眰 + if (etPassword.Text.Trim().Length < 6 || etPassword.Text.Trim().Length > 13) + { + Utlis.ShowTip(Language.StringByID(StringId.PasswordIsUnqualified)); + return false; + } + + if (etPassword.Text.Trim() != etRepeatPassword.Text.Trim()) + { + Utlis.ShowTip(Language.StringByID(StringId.IncorrectRepeatPassword)); + return false; + } + return true; + } + + /// <summary> + /// 妫�娴嬮獙璇佺爜鏄惁杈撳叆 + /// </summary> + /// <returns></returns> + bool CheckVerificationCode() + { + if (string.IsNullOrEmpty(etVerificationCode.Text)) + { + Utlis.ShowTip(Language.StringByID(StringId.PlsEntryVerificationCode)); + return false; + } + return true; + } + + /// <summary> + /// 鏄剧ず鑷姩鑷姩鐧诲綍浜嬩欢 + /// </summary> + void ShowAutoLoginDialog(string account, string password, bool isPhone) + { + Dialog dialog = new Dialog(); + + FrameLayout dialogView = new FrameLayout(); + dialogView.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + }; + dialog.AddChidren(dialogView); + + FrameLayout contentView = new FrameLayout() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealWidth(200), + Width = Application.GetRealWidth(288), + Height = Application.GetRealWidth(270), + Radius = (uint)Application.GetRealWidth(6), + BackgroundColor = CSS_Color.MainBackgroundColor, + }; + dialogView.AddChidren(contentView); + + contentView.Y = (dialogView.Height - contentView.Height) / 2; + + Button btnTitleIcon = new Button() + { + X = Application.GetRealWidth(108), + Y = contentView.Y - Application.GetRealWidth(71), + Width = Application.GetRealWidth(160), + Height = Application.GetRealWidth(160), + UnSelectedImagePath = "Public/Dialog/DialogTipTitleIcon_1.png" + }; + dialogView.AddChidren(btnTitleIcon); + btnTitleIcon.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + }; + + Button btnMsg = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealWidth(88), + Width = Application.GetRealWidth(220), + Height = Application.GetRealWidth(44), + TextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextID = StringId.ModifySuccess + }; + contentView.AddChidren(btnMsg); + + Button btnMsg2 = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = btnMsg.Bottom + Application.GetRealWidth(8), + Width = Application.GetRealWidth(220), + Height = Application.GetRealWidth(60), + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + TextID = StringId.YourPasswordHasBeenChanged, + TextAlignment = TextAlignment.TopCenter, + IsMoreLines = true + }; + contentView.AddChidren(btnMsg2); + + + Button btnSkipBindPage = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealWidth(194), + Width = Application.GetRealWidth(220), + Height = Application.GetRealWidth(44), + TextAlignment = TextAlignment.Center, + Radius = (uint)Application.GetRealWidth(22), + BackgroundColor = CSS_Color.MainColor, + TextID = StringId.Login, + TextSize = CSS_FontSize.SubheadingFontSize, + TextColor = CSS_Color.MainBackgroundColor, + }; + contentView.AddChidren(btnSkipBindPage); + + btnSkipBindPage.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + this.Close(); + + AutoLoginAction?.Invoke(account, password, isPhone); + + }; + + dialog.Show(); + } + } } -- Gitblit v1.8.0