From ed3bfb7462d44747230437717e8673a5192f833f Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期一, 30 十一月 2020 20:34:51 +0800 Subject: [PATCH] 2020-11-30-2 --- HDL_ON/UI/UI1-Login/LoginPageBLL.cs | 343 ++++++++++++++++++++++++++------------------------------ 1 files changed, 160 insertions(+), 183 deletions(-) diff --git a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs index 270b93d..eac7338 100644 --- a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs +++ b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs @@ -5,7 +5,6 @@ using HDL_ON.UI.CSS; using Shared; using HDL_ON.Entity; -using HDL_ON.DAL.Server; namespace HDL_ON.UI.UI1Login { @@ -25,25 +24,6 @@ LoadPage_RegisterPage(); GetVerificationCode(); LoadMethod_ForgetPassword(); - } - - /// <summary> - /// 妫�娴嬪綋鍓嶉厤缃煙鍚嶆槸鍚︿竴鑷达紝涓嶄竴鑷村垯鏇挎崲 - /// </summary> - /// <param name="result"></param> - void CheckAndSetUserRequestHost(ResponsePackNew result) - { - try - { - var mGlobalRegionListObj = Newtonsoft.Json.JsonConvert.DeserializeObject<GlobalRegionListRes>(result.Data.ToString()); - if (UserInfo.Current.RequestHttpsHost != mGlobalRegionListObj.regionUrl) - { - UserInfo.Current.RequestHttpsHost = mGlobalRegionListObj.regionUrl; - UserInfo.Current.GlobalRegion = mGlobalRegionListObj; - UserInfo.Current.SaveUserInfo(); - } - } - catch { } } /// <summary> @@ -70,7 +50,7 @@ btnAccountViewBottomLine.Height = Application.GetRealHeight(2); return; } - if (!Utlis.CheckPhoneNumber(phoneNumber, phoneZoneCode)) + if (!Regex.IsMatch(account, @"^[1]+\d{10}") || (account.Length != 11)) { var tip = new Tip() { @@ -84,68 +64,82 @@ btnAccountViewBottomLine.Height = Application.GetRealHeight(2); return; } - + btnGetVerificationCode.IsSelected = false ; + btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1; int time = 60; new Thread(() => { - //1.鍏堟鏌ヨ处鍙锋槸鍚︽敞鍐岃繃 - var result = pm.GetRegionByAccount(account); - if (result.Code != StateCode.SUCCESS) + while (time > 0) { - IMessageCommon.Current.ShowErrorInfoAlter(result.Code); - ShowBtnAccountViewBottomLineError(); - return; + time--; + Application.RunOnMainThread(() => + { + btnGetVerificationCode.Text = time.ToString() + "s"; + }); + Thread.Sleep(1000); } - else + Application.RunOnMainThread(() => { - //妫�娴嬪綋鍓嶉厤缃煙鍚嶆槸鍚︿竴鑷达紝涓嶄竴鑷村垯鏇挎崲 - CheckAndSetUserRequestHost(result); - - //2.1璇锋眰鑾峰彇楠岃瘉鐮� - var resultObj = pm.VerificationCodeSend(VerifyType.VERIFY_LOGIN, account, true, phoneZoneCode); - if (resultObj.Code != StateCode.SUCCESS) - { - //2.2璇锋眰鑾峰彇楠岃瘉鐮佸け璐� - Application.RunOnMainThread(() => - { - btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnPasswordViewBottomLine.Height = Application.GetRealHeight(2); - }); - // 鎻愮ず閿欒 - IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code); - } - else - { - Application.RunOnMainThread(() => - { - btnGetVerificationCode.IsSelected = false; - btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1; - }); - - new Thread(() => - { - while (time > 0) - { - time--; - Application.RunOnMainThread(() => - { - btnGetVerificationCode.Text = time.ToString() + "s"; - }); - Thread.Sleep(1000); - } - Application.RunOnMainThread(() => - { - btnGetVerificationCode.IsSelected = true; - btnGetVerificationCode.TextID = StringId.GetVerificationCode; - }); - }) - { IsBackground = true }.Start(); - } - } - + btnGetVerificationCode.IsSelected = true; + btnGetVerificationCode.TextID = StringId.GetVerificationCode; + }); }) { IsBackground = true }.Start(); - + new Thread(() => + { + //鑾峰彇楠岃瘉鐮� + var result = pm.GetLoginVerCode(phoneNumber); + if (result.StateCode.ToUpper() == "SUCCESS") + { + } + //鐧诲綍澶辫触 + else + { + string tipStr = "Sever erorr"; + switch (result.StateCode.ToUpper()) + { + case "USERNAMEORPWDERROR": + tipStr = Language.StringByID(StringId.LoginFailed_AccountOrPasswordError); + Application.RunOnMainThread(() => + { + btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnPasswordViewBottomLine.Height = Application.GetRealHeight(2); + }); + break; + case "ACCOUNTNOEXISTS": + tipStr = Language.StringByID(StringId.ACCOUNTNOEXISTS); + Application.RunOnMainThread(() => + { + btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + }); + break; + case "SENDFAIL": + tipStr = Language.StringByID(StringId.FailedToSendVerificationCode); + Application.RunOnMainThread(() => + { + btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + }); + break; + case "Self:Net_Error": + tipStr = Language.StringByID(StringId.NetworkAnomaly); + break; + } + Application.RunOnMainThread(() => + { + //鎻愮ず鍘熷洜 + var tip = new Tip() + { + Text = tipStr, + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); + }); + } + }) + { IsBackground = true }.Start(); } }; } @@ -247,8 +241,8 @@ //if (btnGetVerificationCode.Parent != null) //{ - //btnGetVerificationCode.RemoveFromParent(); - btnGetVerificationCode.Visible = false; + //btnGetVerificationCode.RemoveFromParent(); + btnGetVerificationCode.Visible = false; //} //闅愯棌瀵嗙爜 etPassword.SecureTextEntry = true; @@ -279,8 +273,8 @@ btnPasswordIcon.IsSelected = false; //if (btnGetVerificationCode.Parent != null) //{ - //btnGetVerificationCode.RemoveFromParent(); - btnGetVerificationCode.Visible = false; + //btnGetVerificationCode.RemoveFromParent(); + btnGetVerificationCode.Visible = false; //} //闅愯棌瀵嗙爜 etPassword.SecureTextEntry = true; @@ -345,7 +339,7 @@ return; if (loginType == 0) { - if (!Utlis.CheckPhoneNumber(registerPhone, phoneZoneCode)) + if (!Regex.IsMatch(account, @"^[1]+\d{10}") || (account.Length != 11)) { var tip = new Tip() { @@ -368,7 +362,7 @@ } else { - if (!Utlis.CheckEmail(registerEmail)) + if (!Regex.IsMatch(account, "([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,5})+")) { var tip = new Tip() { @@ -443,15 +437,12 @@ { if (btnLogin.IsSelected) { - //鍒ゆ柇鏄惁鍚屾剰浜嗛殣绉佹斂绛� - if (CheckPrivacyPolicy() == false) return; - account = etAccount.Text.Trim(); password = etPassword.Text.Trim(); if (loginType == 0) { - if (!Utlis.CheckPhoneNumber(account, phoneZoneCode)) + if (!Regex.IsMatch(account, @"^[1]+\d{10}") && account.Length == 11) { var tip = new Tip() { @@ -465,7 +456,7 @@ } else { - if (!Utlis.CheckEmail(account)) + if (!Regex.IsMatch(account, "([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,5})+")) { var tip = new Tip() { @@ -496,7 +487,7 @@ { btnLogin.IsSelected = false; } - if (Regex.IsMatch(account, @"^[1]+\d{10}"))//&& account.Length == 11) + if (Regex.IsMatch(account, @"^[1]+\d{10}") )//&& account.Length == 11) { btnGetVerificationCode.IsSelected = true; btnGetVerificationCode.TextColor = CSS_Color.MainBackgroundColor; @@ -530,27 +521,9 @@ { try { - //濡傛灉鏄处鍙峰瘑鐮佺櫥褰曪紝鍏堟鏌ヤ竴娆¤处鍙锋槸鍚︽敞鍐岃繃 - if (logintMode == 0) - { - //1.鍏堟鏌ヨ处鍙锋槸鍚︽敞鍐岃繃 - var result = pm.GetRegionByAccount(account); - if (result.Code != StateCode.SUCCESS) - { - IMessageCommon.Current.ShowErrorInfoAlter(result.Code); - ShowBtnAccountViewBottomLineError(); - return; - } - else - { - //璁剧疆鐢ㄦ埛鎵�娉ㄥ唽鍦板尯鐨勫煙鍚嶏紝鐢ㄦ埛鐩稿叧鎿嶄綔閮界敤杩欎釜鍩熷悕 - CheckAndSetUserRequestHost(result); - } - } - //鐧诲綍 var loginResult = LoadMethod_Login(); - if (!string.IsNullOrEmpty(verAccount))//楠岃瘉鐧诲綍璐﹀彿 + if( !string.IsNullOrEmpty (verAccount))//楠岃瘉鐧诲綍璐﹀彿 { Application.RunOnMainThread(() => { @@ -586,7 +559,7 @@ OnAppConfig.Instance.RefreshUserConfig(); DB_ResidenceData.InitRoomFunction(); } - if (UserInfo.Current.userEmailInfo == "464027401@qq.com") + if (MainPage.LoginUser.userEmailInfo == "464027401@qq.com") { DB_ResidenceData.residenceData.floors.Add(new Floor() { name = "1F", sid = "09888" }); var r111 = new Room() { sid = "0001", name = "Room-1", floorId = "09888", backgroundImage = "Classification/Room/Roombg.png" }; @@ -857,15 +830,6 @@ MainPage.GoUserPage(); }); } - else - { - //2020-11-13 寰呯‘璁� - //鑾峰彇浣忓畢澶辫触锛岄噸鏂版爣璁颁负鏈櫥褰曠姸鎬� - UserInfo.Current.lastTime = DateTime.MinValue; - UserInfo.Current.SaveUserInfo(); - //鐧诲綍澶辫触锛岃鍏堟坊鍔犱綇瀹咃紒 - Utlis.ShowAlertOnMainThread(Language.StringByID(StringId.FailedGetHomeList)); - } } } catch (Exception ex) @@ -894,7 +858,7 @@ bool LoadMethod_Login() { var result = false; - ResponsePackNew loginResult; + ResponsePack loginResult; if (logintMode == 0 || loginType == 1) { //璋冪敤鐧诲綍鎺ュ彛 @@ -905,29 +869,23 @@ //璋冪敤楠岃瘉鐮佺櫥褰曟帴鍙� loginResult = pm.LoginValidCode(account, password); } - if (loginResult.Code == StateCode.SUCCESS) + if (loginResult.StateCode.ToUpper() == "SUCCESS") { - var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<UserLoginRes>(loginResult.Data.ToString()); - // UserInfo.Current = new UserInfo - //{ - // userType = revertData.userType, - // accountString = account, - // password = password, - // lastTime = DateTime.Now, - // ID = revertData.userId, - // loginTokenString = revertData.headerPrefix + revertData.accessToken, - // refreshToken = revertData.refreshToken, - // userName = revertData.name - //}; - UserInfo.Current.userType = revertData.userType; - UserInfo.Current.accountString = account; - //UserInfo.Current.password = password; - UserInfo.Current.lastTime = DateTime.Now; - UserInfo.Current.ID = revertData.userId; - UserInfo.Current.loginTokenString = revertData.headerPrefix + revertData.accessToken; - UserInfo.Current.refreshToken = revertData.refreshToken; - UserInfo.Current.userName = revertData.name; - UserInfo.Current.SaveUserInfo(); + var loginDataStr = Newtonsoft.Json.Linq.JObject.FromObject(loginResult.ResponseData); + + //璁板綍鐢ㄦ埛鏁版嵁 + MainPage.LoginUser = new UserInfo + { + ID = (int)loginDataStr.GetValue("UserID"), + masterID = (int)loginDataStr.GetValue("MainUserID"), + accountType = (int)loginDataStr.GetValue("UserType"), + loginTokenString = loginDataStr.GetValue("Token").ToString(), + accountString = account, + password = password, + lastTime = DateTime.Now, + userName = loginDataStr.GetValue("Remark").ToString(), + }; + MainPage.LoginUser.SaveUserInfo(); MainPage.Log("鐧诲綍鎴愬姛銆�"); result = true; //鑾峰彇鐢ㄦ埛淇℃伅 @@ -940,30 +898,53 @@ //鐧诲綍澶辫触 else { + 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(() => + { + btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnPasswordViewBottomLine.Height = Application.GetRealHeight(2); + }); + break; + case "ACCOUNTNOEXISTS": + tipStr = Language.StringByID(StringId.ACCOUNTNOEXISTS); + Application.RunOnMainThread(() => + { + btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + }); + break; + case "NoRecord": + tipStr = Language.StringByID(StringId.PlsGetTheVerificationCode); + break; + case "Self:Net_Error": + tipStr = Language.StringByID(StringId.NetworkAnomaly); + break; + } //璐﹀彿鎴栬�呭瘑鐮侀敊璇� Application.RunOnMainThread(() => { - if (loginResult.Code == "10008") - { - //鐢ㄦ埛鍚嶆垨瀵嗙爜閿欒 - btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnPasswordViewBottomLine.Height = Application.GetRealHeight(2); - } - else if (loginResult.Code == "10010") - { - //鐢ㄦ埛涓嶅瓨鍦� - btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnAccountViewBottomLine.Height = Application.GetRealHeight(2); - } - else if (loginResult.Code == "14") - { - btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnPasswordViewBottomLine.Height = Application.GetRealHeight(2); - } waitPage.Hide(); + //鎻愮ず鍘熷洜 + var tip = new Tip() + { + Text = tipStr, + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); }); - - IMessageCommon.Current.ShowErrorInfoAlter(loginResult.Code); } return result; } @@ -975,19 +956,31 @@ { var result = false; var responsePack = pm.GetHomePager(); - if (responsePack == StateCode.SUCCESS) + + if (responsePack == "Success") { - //2020-11-13 寰呯‘璁わ紝娌℃湁浣忓畢锛屼笉绠楃櫥褰曟垚鍔� - if (UserInfo.Current.regionList != null && UserInfo.Current.regionList.Count > 0) - { - result = true; - } - //result = true; + result = true; } else { - // 鎻愮ず閿欒 - IMessageCommon.Current.ShowErrorInfoAlter(responsePack); + var tipStr = "Server erorr"; + switch (responsePack) + { + case "NoLogin": + tipStr = Language.StringByID(StringId.InvalidLoginCertificate); + break; + } + Application.RunOnMainThread(() => + { + //鎻愮ず鍘熷洜 + var tip = new Tip() + { + Text = tipStr, + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); + }); } return result; } @@ -1013,9 +1006,6 @@ // } // }); //}; - - //鍒ゆ柇鏄惁鍚屾剰浜嗛殣绉佹斂绛� - if (CheckPrivacyPolicy() == false) return; var registerPage = new RegisterPage(); registerPage.Show(); @@ -1049,19 +1039,6 @@ forgetPasswordDialog.ShowDialog(); }; - } - - /// <summary> - /// 鐢ㄦ埛涓嶅瓨鍦� - /// </summary> - void ShowBtnAccountViewBottomLineError() - { - Application.RunOnMainThread(() => - { - //鐢ㄦ埛涓嶅瓨鍦� - btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; - btnAccountViewBottomLine.Height = Application.GetRealHeight(2); - }); } } } \ No newline at end of file -- Gitblit v1.8.0