From 611786df5108dca0bdcff03834cc285cba4b8e61 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期二, 13 十月 2020 16:48:43 +0800
Subject: [PATCH] 2020-10-13-1
---
HDL_ON/UI/UI1-Login/LoginPageBLL.cs | 210 ++++++++++++++++++++++++++++++++++-----------------
1 files changed, 139 insertions(+), 71 deletions(-)
diff --git a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
index 70526e5..15b85eb 100644
--- a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
+++ b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
@@ -31,9 +31,9 @@
/// </summary>
void GetVerificationCode()
{
- btnGetVerificationCode.MouseUpEventHandler += (sender, e) =>
+ btnGetVerificationCode.MouseUpEventHandler = (sender, e) =>
{
- if (!btnGetVerificationCode.IsSelected)
+ if (btnGetVerificationCode.IsSelected)
{
string phoneNumber = etAccount.Text.Trim();
if (string.IsNullOrEmpty(phoneNumber))
@@ -50,7 +50,7 @@
btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
return;
}
- if (!Regex.IsMatch(account, @"^[1]+\d{10}"))
+ if (!Regex.IsMatch(account, @"^[1]+\d{10}") || (account.Length != 11))
{
var tip = new Tip()
{
@@ -64,12 +64,12 @@
btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
return;
}
- btnGetVerificationCode.IsSelected = true;
+ btnGetVerificationCode.IsSelected = false ;
btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1;
int time = 60;
new Thread(() =>
{
- while (time < 0)
+ while (time > 0)
{
time--;
Application.RunOnMainThread(() =>
@@ -80,7 +80,7 @@
}
Application.RunOnMainThread(() =>
{
- btnGetVerificationCode.IsSelected = false;
+ btnGetVerificationCode.IsSelected = true;
btnGetVerificationCode.TextID = StringId.GetVerificationCode;
});
})
@@ -88,18 +88,13 @@
new Thread(() =>
{
//鑾峰彇楠岃瘉鐮�
- var result = pm.GetPhoneLoginVerCode(phoneNumber);
- if (result.StateCode == "SUCCESS")
+ var result = pm.GetLoginVerCode(phoneNumber);
+ if (result.StateCode.ToUpper() == "SUCCESS")
{
}
//鐧诲綍澶辫触
else
{
- Application.RunOnMainThread(() =>
- {
- btnGetVerificationCode.IsSelected = false;
- btnGetVerificationCode.TextID = StringId.GetVerificationCode;
- });
string tipStr = "Sever erorr";
switch (result.StateCode.ToUpper())
{
@@ -136,13 +131,11 @@
//鎻愮ず鍘熷洜
var tip = new Tip()
{
-
Text = tipStr,
CloseTime = 3,
Direction = AMPopTipDirection.None
};
tip.Show(bodyView);
- btnGetVerificationCode.IsSelected = false;
});
}
})
@@ -157,8 +150,12 @@
void LoadPage_SwitchLoginType()
{
//閫夋嫨鎵嬫満鐧诲綍
- btnPhoneLogin.MouseUpEventHandler += (sender, e) =>
+ btnPhoneLogin.MouseUpEventHandler = (sender, e) =>
{
+ if (loginType == 0)
+ return;
+ etAccount.Text = registerPhone;
+ etPassword.Text = "";
#region 鍒囨崲閫変腑鎸夐挳
btnEmailLogin.TextColor = CSS_Color.PromptingColor1;
btnEmailLogin.TextSize = CSS_FontSize.TextFontSize;
@@ -168,7 +165,7 @@
#endregion
#region 鍒囨崲鐧诲綍鏂瑰紡鍙婂浘鏍�
- logintType = 0;
+ loginType = 0;
if (btnAccountIcon.Parent != null)
{
btnAccountIcon.RemoveFromParent();
@@ -177,11 +174,45 @@
//鏄剧ず楠岃瘉鐮佺櫥褰曟柟寮忥紝鎵嬫満鐧诲綍鏈夐獙璇佺爜鐧诲綍
btnSwitchLoginMode.Visible = true;
#endregion
+
+ #region
+ if (logintMode == 1)
+ {
+ if (Regex.IsMatch(account, @"^[1]+\d{10}") && (account.Length == 11) && btnGetVerificationCode.Text == Language.StringByID(StringId.GetVerificationCode))
+ {
+ btnGetVerificationCode.IsSelected = true;
+ }
+ btnSwitchLoginMode.TextID = StringId.PasswordLogin;
+ //passwordView.AddChidren(btnGetVerificationCode);
+ btnGetVerificationCode.Visible = true;
+ etPassword.PlaceholderText = Language.StringByID(StringId.PlsEntryVerificationCode);
+ btnPasswordIcon.IsSelected = true;
+ if (btnVisiblePassword.Parent != null)
+ {
+ btnVisiblePassword.RemoveFromParent();
+ }
+ if (btnDividingLineVertical_PasswordView2.Parent != null)
+ {
+ btnDividingLineVertical_PasswordView2.RemoveFromParent();
+ }
+ if (btnForgetPassword.Parent != null)
+ {
+ btnForgetPassword.RemoveFromParent();
+ }
+ //楠岃瘉鐮佷笉闇�瑕侀殣钘�
+ etPassword.SecureTextEntry = false;
+ }
+ #endregion
+
};
//閫夋嫨閭鐧诲綍
btnEmailLogin.MouseUpEventHandler += (sender, e) =>
{
+ if (loginType == 1)
+ return;
+ etAccount.Text = registerEmail;
+ etPassword.Text = "";
#region 鍒囨崲閫変腑鎸夐挳
btnPhoneLogin.TextColor = CSS_Color.PromptingColor1;
btnPhoneLogin.TextSize = CSS_FontSize.TextFontSize;
@@ -191,7 +222,7 @@
#endregion
#region 鍒囨崲鐧诲綍绫诲瀷鍙婂浘鏍�
- logintType = 1;
+ loginType = 1;
if (btnGlobalRoaming.Parent != null)
{
btnGlobalRoaming.RemoveFromParent();
@@ -200,7 +231,7 @@
#endregion
//閭鍙湁瀵嗙爜鐧诲綍妯″紡
- logintMode = 0;
+ //logintMode = 0;
//瀵嗙爜鐧诲綍
btnSwitchLoginMode.TextID = StringId.VerificationCodeLogin;
passwordView.AddChidren(btnVisiblePassword);
@@ -208,10 +239,11 @@
passwordView.AddChidren(btnForgetPassword);
btnPasswordIcon.IsSelected = false;
- if (btnGetVerificationCode.Parent != null)
- {
- btnGetVerificationCode.RemoveFromParent();
- }
+ //if (btnGetVerificationCode.Parent != null)
+ //{
+ //btnGetVerificationCode.RemoveFromParent();
+ btnGetVerificationCode.Visible = false;
+ //}
//闅愯棌瀵嗙爜
etPassword.SecureTextEntry = true;
//闅愯棌楠岃瘉鐮佺櫥褰曟柟寮忥紝閭鐧诲綍娌℃湁楠岃瘉鐮佺櫥褰�
@@ -225,7 +257,7 @@
/// </summary>
void LoadPage_SwitchLoginMode()
{
- btnSwitchLoginMode.MouseUpEventHandler += (sender, e) =>
+ btnSwitchLoginMode.MouseUpEventHandler = (sender, e) =>
{
logintMode = logintMode == 0 ? 1 : 0;
//娓呴櫎瀵嗙爜妗嗘枃鏈暟鎹�
@@ -236,20 +268,27 @@
btnSwitchLoginMode.TextID = StringId.VerificationCodeLogin;
passwordView.AddChidren(btnVisiblePassword);
passwordView.AddChidren(btnDividingLineVertical_PasswordView2);
+ etPassword.PlaceholderText = Language.StringByID(StringId.PlsEntryPassword);
passwordView.AddChidren(btnForgetPassword);
btnPasswordIcon.IsSelected = false;
- if (btnGetVerificationCode.Parent != null)
- {
- btnGetVerificationCode.RemoveFromParent();
- }
+ //if (btnGetVerificationCode.Parent != null)
+ //{
+ //btnGetVerificationCode.RemoveFromParent();
+ btnGetVerificationCode.Visible = false;
+ //}
//闅愯棌瀵嗙爜
etPassword.SecureTextEntry = true;
}
//楠岃瘉鐮佺櫥褰�
else if (logintMode == 1)
{
+ if (Regex.IsMatch(account, @"^[1]+\d{10}") && (account.Length == 11) && btnGetVerificationCode.Text == Language.StringByID(StringId.GetVerificationCode))
+ {
+ btnGetVerificationCode.IsSelected = true;
+ }
btnSwitchLoginMode.TextID = StringId.PasswordLogin;
- passwordView.AddChidren(btnGetVerificationCode);
+ //passwordView.AddChidren(btnGetVerificationCode);
+ btnGetVerificationCode.Visible = true;
etPassword.PlaceholderText = Language.StringByID(StringId.PlsEntryVerificationCode);
btnPasswordIcon.IsSelected = true;
if (btnVisiblePassword.Parent != null)
@@ -276,7 +315,7 @@
void LoadPage_SelectionEditText()
{
//褰撶劍鐐瑰湪璐﹀彿鏂囨湰妗嗘椂锛屾枃鏈搴曠嚎鐐逛寒
- etAccount.FoucsChanged += (sender, e) =>
+ etAccount.FoucsChanged = (sender, e) =>
{
if (etAccount.Foucs)
{
@@ -288,11 +327,19 @@
btnAccountViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor;
btnAccountViewBottomLine.Height = Application.GetRealHeight(1);
account = etAccount.Text.Trim();
+ if (loginType == 0)
+ {
+ registerPhone = account;
+ }
+ else
+ {
+ registerEmail = account;
+ }
if (account.Length == 0)
return;
- if (logintType == 0)
+ if (loginType == 0)
{
- if (!Regex.IsMatch(account, @"^[1]+\d{10}"))
+ if (!Regex.IsMatch(account, @"^[1]+\d{10}") || (account.Length != 11))
{
var tip = new Tip()
{
@@ -304,6 +351,13 @@
btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
+ }
+ else
+ {
+ if (btnGetVerificationCode.Text == Language.StringByID(StringId.GetVerificationCode))
+ {
+ btnGetVerificationCode.IsSelected = true;
+ }
}
}
else
@@ -381,9 +435,9 @@
account = etAccount.Text.Trim();
password = etPassword.Text.Trim();
- if (logintType == 0)
+ if (loginType == 0)
{
- if (!Regex.IsMatch(account, @"^[1]+\d{10}"))
+ if (!Regex.IsMatch(account, @"^[1]+\d{10}") && account.Length == 11)
{
var tip = new Tip()
{
@@ -414,19 +468,29 @@
var loginThread = LoadThread_Login();
waitPage = new Loading();
new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage);
-
}
};
#region 褰撹处鍙峰瘑鐮侀兘杈撳叆鏃讹紝鎵嶈兘鐐瑰嚮鐧诲綍鎸夐挳
- etAccount.TextChangeEventHandler += (sender, e) =>
+ etAccount.TextChangeEventHandler = (sender, e) =>
{
- if (etAccount.Text.Trim().Length > 0 && etPassword.Text.Trim().Length > 0)
+ account = etAccount.Text.Trim();
+ if (account.Length > 0 && etPassword.Text.Trim().Length > 0)
{
btnLogin.IsSelected = true;
}
else
{
btnLogin.IsSelected = false;
+ }
+ if (Regex.IsMatch(account, @"^[1]+\d{10}") )//&& account.Length == 11)
+ {
+ btnGetVerificationCode.IsSelected = true;
+ btnGetVerificationCode.TextColor = CSS_Color.MainBackgroundColor;
+ }
+ else
+ {
+ btnGetVerificationCode.IsSelected = false;
+ btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1;
}
};
etPassword.TextChangeEventHandler += (sender, e) =>
@@ -454,6 +518,18 @@
{
//鐧诲綍
var loginResult = LoadMethod_Login();
+ if( !string.IsNullOrEmpty (verAccount))//楠岃瘉鐧诲綍璐﹀彿
+ {
+ Application.RunOnMainThread(() =>
+ {
+ if (verAccount == etPassword.Text.Trim())
+ {
+ //璺宠浆椤甸潰----
+ MainPage.GoUserPage();
+ return;
+ }
+ });
+ }
if (loginResult)
{
//鑾峰彇浣忓畢淇℃伅
@@ -466,9 +542,6 @@
Application.RunOnMainThread(() =>
{
- waitPage.RemoveFromParent();
- waitPage = null;
-
//璺宠浆椤甸潰----
MainPage.GoUserPage();
});
@@ -478,6 +551,18 @@
catch (Exception ex)
{
MainPage.Log($"LoginPage : {ex.Message}");
+ }
+ finally
+ {
+ Application.RunOnMainThread(() =>
+ {
+ if (waitPage != null)
+ {
+ waitPage.RemoveFromParent();
+ waitPage = null;
+ }
+
+ });
}
})
{ IsBackground = true };
@@ -490,7 +575,7 @@
{
var result = false;
ResponsePack loginResult;
- if (logintMode == 0)
+ if (logintMode == 0 || loginType == 1)
{
//璋冪敤鐧诲綍鎺ュ彛
loginResult = pm.LoginByPassword(account, password);
@@ -500,7 +585,7 @@
//璋冪敤鐧诲綍鎺ュ彛
loginResult = pm.LoginValidCode(account, password);
}
- if (loginResult.StateCode == "SUCCESS")
+ if (loginResult.StateCode.ToUpper() == "SUCCESS")
{
var loginDataStr = Newtonsoft.Json.Linq.JObject.FromObject(loginResult.ResponseData);
@@ -532,6 +617,14 @@
string tipStr = "Sever erorr";
switch (loginResult.StateCode)
{
+ case "ValidCodeAndPhoneNoEqual":
+ tipStr = Language.StringByID(StringId.VerificationCodeError);
+ Application.RunOnMainThread(() =>
+ {
+ btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+ btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
+ });
+ break;
case "USERNAMEORPWDERROR":
tipStr = Language.StringByID(StringId.LoginFailed_AccountOrPasswordError);
Application.RunOnMainThread(() =>
@@ -579,39 +672,15 @@
{
var result = false;
var responsePack = pm.GetHomePager();
- if (responsePack.StateCode == "Success")
- {
- var dataStr = Newtonsoft.Json.Linq.JObject.FromObject(responsePack.ResponseData);
- //娌℃湁浣忓畢
- if (dataStr.GetValue("PageData").ToString() == "[]")
- {
- }
- else
- {
- MainPage.LoginUser.regionList = new List<RegionInfoRes>();
- foreach (var jsonData in dataStr.GetValue("PageData"))
- {
- var homeJsonStr = Newtonsoft.Json.Linq.JObject.FromObject(jsonData);
- var home = new RegionInfoRes()
- {
- RegionID = homeJsonStr.GetValue("Id").ToString(),
- RegionName = homeJsonStr.GetValue("RegionName").ToString(),
- Name = homeJsonStr.GetValue("Name").ToString(),
- Address = homeJsonStr.GetValue("Address").ToString(),
- };
- MainPage.LoginUser.regionList.Add(home);
- }
- DB_ResidenceData.residenceData.residecenInfo = MainPage.LoginUser.regionList[0];
- DB_ResidenceData.residenceData.SaveResidenceData();
- MainPage.LoginUser.SaveUserInfo();
- }
+ if (responsePack == "Success")
+ {
result = true;
}
else
{
var tipStr = "Server erorr";
- switch (responsePack.StateCode)
+ switch (responsePack)
{
case "NoLogin":
tipStr = Language.StringByID(StringId.InvalidLoginCertificate);
@@ -628,7 +697,6 @@
};
tip.Show(bodyView);
});
-
}
return result;
}
@@ -689,4 +757,4 @@
};
}
}
-}
+}
\ No newline at end of file
--
Gitblit v1.8.0