From 587c36e27131f2d028fcabc13b296a8de7470034 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期三, 08 一月 2020 08:59:19 +0800
Subject: [PATCH] 2019.1.8
---
ZigbeeApp/Shared/Phone/Device/Account/AccountLogin.cs | 128 +++++++++++++++++++++++++++++-------------
1 files changed, 89 insertions(+), 39 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/Device/Account/AccountLogin.cs b/ZigbeeApp/Shared/Phone/Device/Account/AccountLogin.cs
index 60bcdc4..8dd8ba2 100644
--- a/ZigbeeApp/Shared/Phone/Device/Account/AccountLogin.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Account/AccountLogin.cs
@@ -167,12 +167,14 @@
Width = Application.GetRealWidth(300),
Gravity = Gravity.CenterHorizontal,
TextID = R.MyInternationalizationString.AppName,
- TextColor = ZigbeeColor.Current.GXCTextWhiteColor
+ TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
+ TextSize=16
};
midFrameLayout.AddChidren(logoName);
phoneEmailForm = new PhoneEmailForm();
phoneEmailForm.Init(midFrameLayout);
+
//閿欒鎻愮ずBtn
loginErrorBtn = new Button()
@@ -183,6 +185,8 @@
Height = Application.GetRealHeight(58),
TextColor = ZigbeeColor.Current.GXCTextRed,
TextAlignment = TextAlignment.CenterLeft,
+ TextSize=CommonFormResouce.TextSize,
+ IsBold=true
};
midFrameLayout.AddChidren(loginErrorBtn);
@@ -205,7 +209,7 @@
Y = Application.GetRealHeight(1198),
Width = Application.GetRealWidth(250),
Height = Application.GetRealHeight(58),
- TextID = R.MyInternationalizationString.ForgotPWD,
+ TextID = R.MyInternationalizationString.ForgotPWD_1,
TextSize = CommonFormResouce.loginTextSize,
TextColor = Shared.Common.ZigbeeColor.Current.GXCTextGrayColor,
TextAlignment = TextAlignment.CenterRight
@@ -219,14 +223,15 @@
Height = Application.GetRealHeight(127),
Gravity = Gravity.CenterHorizontal,
TextID = R.MyInternationalizationString.Login,
- TextSize = 15,
+ TextSize = 16,
TextColor = ZigbeeColor.Current.GXCTextGrayColor,
SelectedTextColor = ZigbeeColor.Current.GXCTextWhiteColor,
SelectedBackgroundColor = ZigbeeColor.Current.GXCButtonBlackSelectedColor,
BackgroundColor = ZigbeeColor.Current.GXCButtonUnSelectedColor,
Radius = (uint)Application.GetRealHeight(127 / 2),
Enable = !string.IsNullOrEmpty(pwdRow.PasswrodET?.Text),
- IsSelected = !string.IsNullOrEmpty(pwdRow.PasswrodET?.Text)
+ IsSelected = !string.IsNullOrEmpty(pwdRow.PasswrodET?.Text),
+ IsBold=true
};
midFrameLayout.AddChidren(loginBtn);
@@ -280,6 +285,16 @@
#endregion
BindEvent();
+
+ if (string.IsNullOrEmpty(account) == false && AccountLogic.Instance.CheckEmail(account) == true)
+ {
+ SelectPhoneOrEmail_MouseUpEvent(phoneEmailForm.SelectedEmail, null);
+ this.account = string.Empty;
+ }
+ else
+ {
+ this.account = string.Empty;
+ }
}
#endregion
@@ -343,6 +358,11 @@
{
try
{
+ if(CheckAccount(accountStr)==false)
+ {
+ return;
+ }
+
CommonPage.Loading.Start(Language.StringByID(R.MyInternationalizationString.Logining));
var requestObj = new SendDataToServer.LoginObj
@@ -373,21 +393,16 @@
new System.Threading.Thread(async () =>
{
- //鍚姩ZigBee
- ZigBee.Common.Application.Init();
//瀛樺偍鏁版嵁
var responseDataObj = Newtonsoft.Json.JsonConvert.DeserializeObject<Shared.Common.ResponseEntity.UserLoginRes>(revertObj.ResponseData.ToString());
var revertData = responseDataObj;
Config.ReFresh();
Config.Instance.Account = revertData.Account;
- Config.Instance.MqttKey = revertData.MqttKey;
Config.Instance.Password = passwordStr;
Config.Instance.MD5PWD = revertData.MD5PWD;
Config.Instance.Guid = revertData.Guid;
Config.Instance.LoginDateTime = DateTime.Now;
- Config.Instance.ConnectZigbeeMqttBrokerPwd = revertData.ConnectZigbeeMqttBrokerPwd;
- Config.Instance.ConnectZigbeeMqttClientId = revertData.ConnectZigbeeMqttClientId;
- Config.Instance.ZigbeeMqttBrokerLoadSubDomain = revertData.ZigbeeMqttBrokerLoadSubDomain;
+ Config.Instance.LoginToken = revertData.Token;
if (Config.Instance.AccountList.Find((obj) => obj == revertData.Account) == null)
{
Config.Instance.AccountList.Add(revertData.Account);
@@ -397,7 +412,10 @@
var resultRegID = await Shared.Common.CommonPage.Instance.PushRegID();
var homes = await House.GetHomeLists();
//鍒锋柊涓汉涓績鐨勫唴瀛樺強绾跨▼
- await UserCenter.UserCenterLogic.InitUserCenterMenmoryAndThread();
+ await UserCenter.UserCenterLogic.InitUserCenterMenmoryAndThread();
+ //鍚姩ZigBee
+ ZigBee.Common.Application.Init();
+
Shared.Common.Room.InitAllRoom();
Application.RunOnMainThread(() =>
{
@@ -467,6 +485,32 @@
}
/// <summary>
+ /// CheckAccount
+ /// </summary>
+ /// <param name="accountStr"></param>
+ /// <returns></returns>
+ private bool CheckAccount(string accountStr)
+ {
+ if (phoneEmailForm.SelectedEmail.IsSelected)
+ {
+ if (AccountLogic.Instance.CheckEmail(accountStr) == false)
+ {
+ loginErrorBtn.TextID = R.MyInternationalizationString.TheEmailError;
+ return false;
+ }
+ }
+ else
+ {
+ if (AccountLogic.Instance.CheckPhone(accountStr) == false)
+ {
+ loginErrorBtn.TextID = R.MyInternationalizationString.ThePhoneError;
+ return false;
+ }
+ }
+ return true;
+ }
+
+ /// <summary>
/// 閫氳繃楠岃瘉鐮佺櫥褰�
/// </summary>
/// <param name="sender">Sender.</param>
@@ -510,17 +554,17 @@
var re = await isBindAuthAsync(authStr);
if (re)
{
- //鐩存帴鐧诲綍
Application.RunOnMainThread(() =>
- {
+ {
+ //鐩存帴鐧诲綍
HomePage.Instance.ShowLoginLoadView();
});
- //鍚姩ZigBee
- ZigBee.Common.Application.Init();
var resultRegID = await Shared.Common.CommonPage.Instance.PushRegID();
var homes = await House.GetHomeLists();
//鍒锋柊涓汉涓績鐨勫唴瀛樺強绾跨▼
- await UserCenter.UserCenterLogic.InitUserCenterMenmoryAndThread();
+ await UserCenter.UserCenterLogic.InitUserCenterMenmoryAndThread();
+ //鍚姩ZigBee
+ ZigBee.Common.Application.Init();
Shared.Common.Room.InitAllRoom();
Application.RunOnMainThread(() =>
{
@@ -549,8 +593,8 @@
#endif
#if iOS
- GateWay.Ios.AppDelegate.WXLogin();
- GateWay.Ios.AppDelegate.RespAction = (authStr) =>
+ Home.IOS.AppDelegate.WXLogin();
+ Home.IOS.AppDelegate.RespAction = (authStr) =>
{
if (authStr == null)
{
@@ -568,10 +612,10 @@
//this.RemoveFromParent();
//UserPage.Instance.Fresh();
- //鍚姩ZigBee
- ZigBee.Common.Application.Init();
var resultRegID = await Shared.Common.CommonPage.Instance.PushRegID();
var homes = await House.GetHomeLists();
+ //鍚姩ZigBee
+ ZigBee.Common.Application.Init();
//鍒锋柊涓汉涓績鐨勫唴瀛樺強绾跨▼
await UserCenter.UserCenterLogic.InitUserCenterMenmoryAndThread();
Shared.Common.Room.InitAllRoom();
@@ -597,9 +641,9 @@
}
};
#endif
-
-
-
+
+
+
}
/// <summary>
@@ -625,7 +669,19 @@
AccessToken = authRes.access_token,
RefreshToken = authRes.refresh_token,
OpenID = authRes.openid
- };
+ };
+ //鑾峰彇寰俊鏄电О
+ var strUrl = "https://api.weixin.qq.com/sns/userinfo?access_token=" + authRes.access_token;
+ strUrl += "&openid=" + authRes.openid;
+ var byteData = await Common.CommonPage.Instance.DoRequestZigbeeHttpsInterface(strUrl, null, null, "GET");
+ if (byteData == null)
+ {
+ return false;
+ }
+ var receipData = System.Text.Encoding.UTF8.GetString(byteData);
+ var nickData = Newtonsoft.Json.JsonConvert.DeserializeObject<UserCenter.NicknameInfo>(receipData);
+ auth.UserName = nickData.nickname;
+
var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(auth);
var revertObj = await CommonPage.Instance.RequestHttpsZigbeeAsync("ZigbeeUsers/InsertOrUpdateAuthUser", System.Text.Encoding.UTF8.GetBytes(requestJson));
if (revertObj == null)
@@ -640,11 +696,7 @@
Config.Instance.Account = revertData.Account;
Config.Instance.MD5PWD = revertData.MD5PWD;
Config.Instance.Guid = revertData.Guid;
- Config.Instance.MqttKey = revertData.MqttKey;
Config.Instance.LoginDateTime = DateTime.Now;
- Config.Instance.ConnectZigbeeMqttBrokerPwd = revertData.ConnectZigbeeMqttBrokerPwd;
- Config.Instance.ConnectZigbeeMqttClientId = revertData.ConnectZigbeeMqttClientId;
- Config.Instance.ZigbeeMqttBrokerLoadSubDomain = revertData.ZigbeeMqttBrokerLoadSubDomain;
if (Config.Instance.AccountList.Find((obj) => obj == revertData.Account) == null)
{
Config.Instance.AccountList.Add(revertData.Account);
@@ -652,13 +704,11 @@
Config.Instance.Save();
return true;
}
- else
+ else
{
return false;
}
}
-
-
/// <summary>
/// phone/email 閫夋嫨
@@ -668,8 +718,10 @@
private void SelectPhoneOrEmail_MouseUpEvent(object sender, MouseEventArgs mouseEventArgs)
{
phoneEmailForm.SelectedPhone.IsSelected = phoneEmailForm.SelectedEmail.IsSelected = false;
+ phoneEmailForm.SelectedPhone.IsBold = phoneEmailForm.SelectedEmail.IsBold = false;
loginBtn.Enable = loginBtn.IsSelected = false;
- (sender as Button).IsSelected = true;
+ loginErrorBtn.Text = string.Empty;
+ (sender as Button).IsSelected = (sender as Button).IsBold = true;
if((sender as Button).Tag.ToString()=="Phone")
{
AddPhoneOrEmailFL(accountPwdFL, "Phone");
@@ -704,8 +756,6 @@
pwdRow = new PwdLoginRowForm();
pwdRow.Init(accountPwdFrameLayout, 29, 225);
pwdRow.PasswrodET.TextChangeEventHandler += Pwd_TextChange;
-
-
}
#endregion
@@ -733,7 +783,7 @@
private void Register(object sender,MouseEventArgs mouseEventArgs)
{
var registerPage = new AccountRegister();
- Shared.Common.CommonPage.Instance.AddChidren(registerPage);
+ CommonPage.Instance.AddChidren(registerPage);
registerPage.Show();
}
@@ -747,7 +797,7 @@
/// <param name="mouseEventArgs">The ${ParameterType} instance containing the event data.</param>
private void Account_TextChange(object sender,string mouseEventArgs)
{
- loginErrorBtn.Text = "";
+ loginErrorBtn.Text = string.Empty;
}
/// <summary>
@@ -757,8 +807,8 @@
/// <param name="mouseEventArgs">The ${ParameterType} instance containing the event data.</param>
private void Pwd_TextChange(object sender,string mouseEventArgs)
{
- loginErrorBtn.Text = "";
- if (1 <= pwdRow.PasswrodET.Text.Trim().Length && pwdRow.PasswrodET.Text.Trim().Length <= 16 && (phoneRow.AccountET.Text.Trim().Length > 0 || emailRow.AccountET.Text.Trim().Length>0))
+ loginErrorBtn.Text = string.Empty;
+ if (1 <= pwdRow.PasswrodET.Text.Trim().Length && pwdRow.PasswrodET.Text.Trim().Length <= 16 && (phoneRow.AccountET.Text.Trim().Length > 0 || emailRow?.AccountET.Text.Trim().Length>0))
{
loginBtn.Enable = loginBtn.IsSelected = true;
}
@@ -766,7 +816,7 @@
{
pwdRow.PasswrodET.Text = mouseEventArgs.Remove(16);
}
- else if (pwdRow.PasswrodET.Text.Trim().Length > 16 && phoneRow.AccountET.Text.Trim().Length > 0)
+ else if (pwdRow.PasswrodET.Text.Trim().Length > 16 && (phoneRow.AccountET.Text.Trim().Length > 0 || emailRow?.AccountET.Text.Trim().Length > 0))
{
loginBtn.Enable = loginBtn.IsSelected = true;
pwdRow.PasswrodET.Text = mouseEventArgs.Remove(16);
--
Gitblit v1.8.0