From 84e76cf2fcbe26142750131d3c27eaac0335e40a Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 11 三月 2021 11:04:08 +0800
Subject: [PATCH] 上传一个添加红外宝 Ios 版本
---
HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs | 672 +++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 495 insertions(+), 177 deletions(-)
diff --git a/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs b/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs
index 98fbf25..04f312e 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,142 @@
{
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)
+ 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 +308,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