From 4c17caa61bc3b0a05a2b303bccdfedfbf3853f6d Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期二, 24 十一月 2020 15:58:10 +0800 Subject: [PATCH] 2020-11-24 1.优化登录界面失败提示。 --- HDL_ON/UI/UI1-Login/LoginPageBLL.cs | 1140 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 1,140 insertions(+), 0 deletions(-) diff --git a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs new file mode 100644 index 0000000..a2ad46f --- /dev/null +++ b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs @@ -0,0 +1,1140 @@ +锘縰sing System; +using System.Text.RegularExpressions; +using System.Threading; +using System.Collections.Generic; +using HDL_ON.UI.CSS; +using Shared; +using HDL_ON.Entity; +using HDL_ON.DAL.Server; + +namespace HDL_ON.UI.UI1Login +{ + public partial class LoginPage + { + + /// <summary> + /// 鍔犺浇浜嬩欢 + /// </summary> + void LoadEventList() + { + LoadPage_SwitchLoginType(); + LoadMethod_VisiblePassword(); + LoadPage_SwitchLoginMode(); + LoadEvent_Login(); + LoadPage_SelectionEditText(); + 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> + /// 鐐瑰嚮鎸夐挳鑾峰彇楠岃瘉鐮� + /// </summary> + void GetVerificationCode() + { + btnGetVerificationCode.MouseUpEventHandler = (sender, e) => + { + if (btnGetVerificationCode.IsSelected) + { + string phoneNumber = etAccount.Text.Trim(); + if (string.IsNullOrEmpty(phoneNumber)) + { + var tip = new Tip() + { + Text = Language.StringByID(StringId.PlsEntryPhoneNumber), + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); + + btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + return; + } + if (!Utlis.CheckPhoneNumber(phoneNumber, phoneZoneCode)) + { + var tip = new Tip() + { + Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber), + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); + + btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + return; + } + + int time = 60; + new Thread(() => + { + //1.鍏堟鏌ヨ处鍙锋槸鍚︽敞鍐岃繃 + var result = pm.GetRegionByAccount(account); + if (result.Code != StateCode.SUCCESS) + { + IMessageCommon.Current.ShowErrorInfoAlter(result.Code); + ShowBtnAccountViewBottomLineError(); + return; + } + else + { + //妫�娴嬪綋鍓嶉厤缃煙鍚嶆槸鍚︿竴鑷达紝涓嶄竴鑷村垯鏇挎崲 + CheckAndSetUserRequestHost(result); + // + 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(); + + //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); + } + } + + }) + { IsBackground = true }.Start(); + + // btnGetVerificationCode.IsSelected = false ; + // btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1; + // int time = 60; + // 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(); + // new Thread(() => + // { + // //鑾峰彇楠岃瘉鐮� + // var result = pm.GetLoginVerCode(phoneNumber); + // if (result.StateCode.ToUpper() == StateCode.SUCCESS_CODE) + // { + // } + // //鐧诲綍澶辫触 + // 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(); + } + }; + } + + /// <summary> + /// 鍒囨崲鐧诲綍绫诲瀷 + /// </summary> + void LoadPage_SwitchLoginType() + { + //閫夋嫨鎵嬫満鐧诲綍 + btnPhoneLogin.MouseUpEventHandler = (sender, e) => + { + if (loginType == 0) + return; + etAccount.Text = registerPhone; + etPassword.Text = ""; + #region 鍒囨崲閫変腑鎸夐挳 + btnEmailLogin.TextColor = CSS_Color.PromptingColor1; + btnEmailLogin.TextSize = CSS_FontSize.TextFontSize; + btnPhoneLogin.TextColor = CSS_Color.MainColor; + btnPhoneLogin.TextSize = CSS_FontSize.EmphasisFontSize_Secondary; + etAccount.PlaceholderText = Language.StringByID(StringId.PlsEntryPhoneNumber); + #endregion + + #region 鍒囨崲鐧诲綍鏂瑰紡鍙婂浘鏍� + loginType = 0; + if (btnAccountIcon.Parent != null) + { + btnAccountIcon.RemoveFromParent(); + } + accountView.AddChidren(btnGlobalRoaming); + //鏄剧ず楠岃瘉鐮佺櫥褰曟柟寮忥紝鎵嬫満鐧诲綍鏈夐獙璇佺爜鐧诲綍 + 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; + btnEmailLogin.TextColor = CSS_Color.MainColor; + btnEmailLogin.TextSize = CSS_FontSize.EmphasisFontSize_Secondary; + etAccount.PlaceholderText = Language.StringByID(StringId.PlsEntryEmailAddress); + #endregion + + #region 鍒囨崲鐧诲綍绫诲瀷鍙婂浘鏍� + loginType = 1; + if (btnGlobalRoaming.Parent != null) + { + btnGlobalRoaming.RemoveFromParent(); + } + accountView.AddChidren(btnAccountIcon); + #endregion + + //閭鍙湁瀵嗙爜鐧诲綍妯″紡 + //logintMode = 0; + //瀵嗙爜鐧诲綍 + btnSwitchLoginMode.TextID = StringId.VerificationCodeLogin; + passwordView.AddChidren(btnVisiblePassword); + passwordView.AddChidren(btnDividingLineVertical_PasswordView2); + passwordView.AddChidren(btnForgetPassword); + btnPasswordIcon.IsSelected = false; + + //if (btnGetVerificationCode.Parent != null) + //{ + //btnGetVerificationCode.RemoveFromParent(); + btnGetVerificationCode.Visible = false; + //} + //闅愯棌瀵嗙爜 + etPassword.SecureTextEntry = true; + //闅愯棌楠岃瘉鐮佺櫥褰曟柟寮忥紝閭鐧诲綍娌℃湁楠岃瘉鐮佺櫥褰� + btnSwitchLoginMode.Visible = false; + }; + } + + /// <summary> + /// 鍒囨崲鐧诲綍鏂瑰紡 + /// 楠岃瘉鐮�/瀵嗙爜 + /// </summary> + void LoadPage_SwitchLoginMode() + { + btnSwitchLoginMode.MouseUpEventHandler = (sender, e) => + { + logintMode = logintMode == 0 ? 1 : 0; + //娓呴櫎瀵嗙爜妗嗘枃鏈暟鎹� + etPassword.Text = ""; + //瀵嗙爜鐧诲綍 + if (logintMode == 0) + { + 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(); + 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); + 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; + } + }; + } + + /// <summary> + /// 鏂囨湰妗嗙劍鐐瑰彉鍖栦簨浠� + /// </summary> + void LoadPage_SelectionEditText() + { + //褰撶劍鐐瑰湪璐﹀彿鏂囨湰妗嗘椂锛屾枃鏈搴曠嚎鐐逛寒 + etAccount.FoucsChanged = (sender, e) => + { + if (etAccount.Foucs) + { + btnAccountViewBottomLine.BackgroundColor = CSS_Color.MainColor; + btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + } + else + { + 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 (loginType == 0) + { + if (!Utlis.CheckPhoneNumber(registerPhone, phoneZoneCode)) + { + var tip = new Tip() + { + Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber), + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); + + btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + } + else + { + if (btnGetVerificationCode.Text == Language.StringByID(StringId.GetVerificationCode)) + { + btnGetVerificationCode.IsSelected = true; + } + } + } + else + { + if (!Utlis.CheckEmail(registerEmail)) + { + var tip = new Tip() + { + Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress), + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); + btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; + btnAccountViewBottomLine.Height = Application.GetRealHeight(2); + } + } + } + }; + //褰撶劍鐐瑰湪瀵嗙爜鏂囨湰妗嗘椂锛屾枃鏈搴曠嚎鐐逛寒 + etPassword.FoucsChanged = (sender, e) => + { + if (etPassword.Foucs) + { + btnPasswordViewBottomLine.BackgroundColor = CSS_Color.MainColor; + btnPasswordViewBottomLine.Height = Application.GetRealHeight(2); + } + else + { + btnPasswordViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor; + btnPasswordViewBottomLine.Height = Application.GetRealHeight(1); + } + }; + + //褰撶劍鐐瑰湪璐﹀彿鏂囨湰妗嗘椂锛岀偣鍑婚敭鐩樺洖鎾ゆ寜閿紝瑙﹀彂鐨勪簨浠� + etAccount.EditorEnterAction += (obj) => + { + etPassword.Foucs = true; + }; + //褰撶劍鐐瑰湪瀵嗙爜鏂囨湰妗嗘椂锛岀偣鍑婚敭鐩樺洖鎾ゆ寜閿紝瑙﹀彂鐨勪簨浠� + etPassword.EditorEnterAction += (obj) => + { + Application.HideSoftInput(); + }; + etPassword.MouseUpEventHandler = (sender, e) => + { + etPassword.Foucs = true; + }; + + } + + /// <summary> + /// 闅愯棌/鏄剧ず瀵嗙爜 + /// </summary> + void LoadMethod_VisiblePassword() + { + btnVisiblePassword.MouseUpEventHandler += (sender, e) => + { + btnVisiblePassword.IsSelected = !btnVisiblePassword.IsSelected; + if (btnVisiblePassword.IsSelected) + { + etPassword.SecureTextEntry = false; + } + else + { + etPassword.SecureTextEntry = true; + } + }; + } + + /// <summary> + /// 鐧诲綍鎸夐挳鐐瑰嚮浜嬩欢 + /// </summary> + void LoadEvent_Login() + { + btnLogin.MouseUpEventHandler += (sender, e) => + { + if (btnLogin.IsSelected) + { + //鍒ゆ柇鏄惁鍚屾剰浜嗛殣绉佹斂绛� + if (CheckPrivacyPolicy() == false) return; + + account = etAccount.Text.Trim(); + password = etPassword.Text.Trim(); + + if (loginType == 0) + { + if (!Utlis.CheckPhoneNumber(account, phoneZoneCode)) + { + var tip = new Tip() + { + Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber), + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); + return; + } + } + else + { + if (!Utlis.CheckEmail(account)) + { + var tip = new Tip() + { + Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress), + CloseTime = 1, + Direction = AMPopTipDirection.None + }; + tip.Show(bodyView); + return; + } + } + + //鍒涘缓鐧诲綍绾跨▼ + var loginThread = LoadThread_Login(); + waitPage = new Loading(); + new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage); + } + }; + #region 褰撹处鍙峰瘑鐮侀兘杈撳叆鏃讹紝鎵嶈兘鐐瑰嚮鐧诲綍鎸夐挳 + etAccount.TextChangeEventHandler = (sender, e) => + { + 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) => + { + if (etAccount.Text.Trim().Length > 0 && etPassword.Text.Trim().Length > 0) + { + btnLogin.IsSelected = true; + } + else + { + btnLogin.IsSelected = false; + } + }; + #endregion + } + + /// <summary> + /// 鍔犺浇鐧诲綍绾跨▼ + /// </summary> + Thread LoadThread_Login() + { + var loginThread = new Thread(() => + { + 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))//楠岃瘉鐧诲綍璐﹀彿 + { + Application.RunOnMainThread(() => + { + if (verAccount == etPassword.Text.Trim()) + { + //璺宠浆椤甸潰---- + MainPage.GoUserPage(); + return; + } + }); + } + if (loginResult) + { + //鑾峰彇浣忓畢淇℃伅 + var getResidencesResult = LoadMethod_GetResidences(); + if (getResidencesResult) + { + /* + * Wait : 鎺ㄩ�佹敞鍐� + */ + + /* + 鏌ョ湅鏈湴鏄惁瀛樺湪鏁版嵁 + 瀛樺湪鍒欏鍑� + */ + var isExis = FileUtils.IsExisFolder(DB_ResidenceData.residenceData.CurReginID); + if (isExis) + { + FileUtils.DeleteAllFile(); + string regionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID); + FileUtils.RestoreRegionFiles(regionRootPath); + DB_ResidenceData.residenceData.EixtAccount(); + OnAppConfig.Instance.RefreshUserConfig(); + DB_ResidenceData.InitRoomFunction(); + } + if (UserInfo.Current.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" }; + DB_ResidenceData.rooms.Add(r111); + DB_ResidenceData.residenceData.floors.Add(new Floor() { sid = "000022222", name = "1F" }); + r111.SaveRoomData(); + new AC() + { + sid = "030101123456780604010001ABCD", + name = "绌鸿皟", + function = new List<Trait>() { + new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} }, + new Trait { name="mode", max = 2,min =0,value_key = new List<string>{ "auto", "heat", "cool","dry" } }, + new Trait { name = "fan",max = 3,min =0,value_key = new List<string>{ "low", "medium", "high" ,"auto"} }, + new Trait { name = "set_temperature", max = 32,min=16,value_key = new List<string>{"up","down" } }, + }, + roomIdList = new List<string>() { "0001" }, + lastState = "鍒跺喎 涓 18掳C", + bus_Data = new BusData + { + SubnetID = 42, + DeviceID = 8, + LoopID = 1, + }, + }.SaveFunctionData(); + new Light() + { + sid = "030101123456780202020002ABCD", + name = "璋冨厜鐏�", + function = new List<Trait>() { + new Trait { name="brightness", max=100,min = 0, value_key= new List<string> { "up","down"} }, + },//"brightness", + roomIdList = new List<string>() { "0001" }, + lastState = "20%", + bus_Data = new BusData + { + SubnetID = 42, + DeviceID = 9, + LoopID = 1, + }, + + }.SaveFunctionData(); + new Curtain() + { + sid = "030101123456780303010003ABCD", + name = "绐楀笜妯″潡", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="on_off", max=2,min = 0, value_key= new List<string> { "on","off","stop"} }, + },// "curtain", + lastState = "寮�", + bus_Data = new BusData + { + SubnetID = 42, + DeviceID = 7, + LoopID = 1, + }, + }.SaveFunctionData(); + new Curtain() + { + sid = "030101123456780303030011ABCD", + name = "寮�鍚堝笜", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="on_off", max=100,min = 0, value_key= new List<string> { "on","off","stop"} }, + },//"curtaintype", + lastState = "20%", + bus_Data = new BusData + { + SubnetID = 42, + DeviceID = 7, + LoopID = 11, + }, + }.SaveFunctionData(); + new Curtain() + { + sid = "030101123456780503040012ABCD", + name = "鍗峰笜", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="on_off", max=2,min = 0, value_key= new List<string> { "on","off","stop"} }, + new Trait { name="percent", max=100,min = 0, value_key= new List<string> { "percent" } }, + + },// "rollingshutter", + lastState = "20%", + bus_Data = new BusData + { + SubnetID = 42, + DeviceID = 17, + LoopID = 1, + }, + }.SaveFunctionData(); + new FloorHeating() + { + sid = "030101123456780404020004ABCD", + name = "鍦扮儹", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} }, + new Trait { name="mode", max = 2,min =0,value_key = new List<string>{ "normal", "day", "night","timer","away" } }, + new Trait { name = "set_temperature", max = 32,min=5,value_key = new List<string>{"up","down" } }, + },// + lastState = "鑷姩 25掳C", + bus_Data = new BusData + { + SubnetID = 111, + DeviceID = 12, + LoopID = 1 + } + }.SaveFunctionData(); + new Light() + { + sid = "030101123456780202010005ABCD", + name = "鍚婄伅", + function = new List<Trait>() { + new Trait { name="on_off", max=100,min = 0, value_key= new List<string> { "on","off"} }, + },//"on_off", + roomIdList = new List<string>() { "0001" }, + bus_Data = new BusData + { + SubnetID = 42, + DeviceID = 6, + LoopID = 1, + }, + }.SaveFunctionData(); + new Light() + { + sid = "030101123456780202040006ABCD", + name = "RGB鐏�", + function = new List<Trait>() { + new Trait { name="brightness", max=100,min = 0, value_key= new List<string> { "on","off"} }, + new Trait { name="color", max=100,min = 0, value_key= new List<string> { "255", "255", "255" } }, + }, + roomIdList = new List<string>() { "0001" }, + bus_Data = new BusData + { + SubnetID = 42, + DeviceID = 4, + LoopID = 1, + }, + }.SaveFunctionData(); + new Fan() + { + sid = "030101123456781010020006ABCD", + name = "椋庢墖", + function = new List<Trait>() { + new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} }, + new Trait { name="percent", max=7,min = 0, value_key= new List<string> { "percent" } }, + }, + roomIdList = new List<string>() { "0001" }, + bus_Data = new BusData + { + SubnetID = 142, + DeviceID = 4, + LoopID = 11, + }, + }.SaveFunctionData(); + new TV() + { + sid = "030101123456781010020006ABCD", + name = "鐢佃", + function = new List<Trait>() { + new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} }, + }, + roomIdList = new List<string>() { "0001" }, + bus_Data = new BusData + { + SubnetID = 142, + DeviceID = 4, + LoopID = 111, + }, + }.SaveFunctionData(); + new SwitchSocket() + { + sid = "030101123456780101020006ABCD", + name = "鎻掑骇", + function = new List<Trait>() { + new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} }, + }, + roomIdList = new List<string>() { "0001" }, + bus_Data = new BusData + { + SubnetID = 42, + DeviceID = 6, + LoopID = 1, + }, + }.SaveFunctionData(); + new Sensor() + { + sid = "030101123456781005060006ABCD", + name = "PM2.5", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="values", max=1,min = 0, value_key= new List<string> { "22"} }, + }, + bus_Data = new BusData + { + SubnetID = 111, + DeviceID = 15, + LoopID = 1, + }, + }.SaveFunctionData(); + new Sensor() + { + sid = "030101123456781005070006ABCD", + name = "CO2", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="values", max=1,min = 0, value_key= new List<string> { "1352"} }, + }, + bus_Data = new BusData + { + SubnetID = 111, + DeviceID = 15, + LoopID = 1, + }, + }.SaveFunctionData(); + new Sensor() + { + sid = "030101123456781005020006ABCD", + name = "娓╁害", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="values", max=1,min = 0, value_key= new List<string> { "28"} }, + }, + bus_Data = new BusData + { + SubnetID = 111, + DeviceID = 15, + LoopID = 1, + }, + }.SaveFunctionData(); + new Sensor() + { + sid = "030101123456781005050006ABCD", + name = "TVOC", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="values", max=1,min = 0, value_key= new List<string> { "0.3"} }, + }, + bus_Data = new BusData + { + SubnetID = 111, + DeviceID = 15, + LoopID = 1, + }, + }.SaveFunctionData(); + new Sensor() + { + sid = "030101123456781005030006ABCD", + name = "婀垮害", + roomIdList = new List<string>() { "0001" }, + function = new List<Trait>() { + new Trait { name="values", max=1,min = 0, value_key= new List<string> { "15"} }, + }, + bus_Data = new BusData + { + SubnetID = 111, + DeviceID = 15, + LoopID = 1, + }, + }.SaveFunctionData(); + DB_ResidenceData.residenceData.SaveResidenceData(); + } + Application.RunOnMainThread(() => + { + //璺宠浆椤甸潰---- + MainPage.GoUserPage(); + }); + } + else + { + //2020-11-13 寰呯‘璁� + //鑾峰彇浣忓畢澶辫触锛岄噸鏂版爣璁颁负鏈櫥褰曠姸鎬� + UserInfo.Current.lastTime = DateTime.MinValue; + UserInfo.Current.SaveUserInfo(); + //鐧诲綍澶辫触锛岃鍏堟坊鍔犱綇瀹咃紒 + Utlis.ShowAlertOnMainThread(Language.StringByID(StringId.FailedGetHomeList)); + } + } + } + catch (Exception ex) + { + MainPage.Log($"LoginPage : {ex.Message}"); + } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + + }); + } + }) + { IsBackground = true }; + return loginThread; + } + /// <summary> + /// 璋冪敤鐧诲綍鎺ュ彛鐧诲綍 + /// </summary> + bool LoadMethod_Login() + { + var result = false; + ResponsePackNew loginResult; + if (logintMode == 0 || loginType == 1) + { + //璋冪敤鐧诲綍鎺ュ彛 + loginResult = pm.LoginByPassword(account, password); + } + else + { + //璋冪敤楠岃瘉鐮佺櫥褰曟帴鍙� + loginResult = pm.LoginValidCode(account, password); + } + if (loginResult.Code == StateCode.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(); + MainPage.Log("鐧诲綍鎴愬姛銆�"); + result = true; + //鑾峰彇鐢ㄦ埛淇℃伅 + new Thread(() => + { + pm.GetUserInfo(); + }) + { IsBackground = true }.Start(); + } + //鐧诲綍澶辫触 + else + { + //璐﹀彿鎴栬�呭瘑鐮侀敊璇� + 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(); + }); + + IMessageCommon.Current.ShowErrorInfoAlter(loginResult.Code); + } + return result; + } + + /// <summary> + /// 鑾峰彇浣忓畢鍒楄〃 + /// </summary> + bool LoadMethod_GetResidences() + { + var result = false; + var responsePack = pm.GetHomePager(); + if (responsePack == StateCode.SUCCESS) + { + //2020-11-13 寰呯‘璁わ紝娌℃湁浣忓畢锛屼笉绠楃櫥褰曟垚鍔� + if (UserInfo.Current.regionList != null && UserInfo.Current.regionList.Count > 0) + { + result = true; + } + //result = true; + } + else + { + // 鎻愮ず閿欒 + IMessageCommon.Current.ShowErrorInfoAlter(responsePack); + } + return result; + } + + /// <summary> + /// 鍔犺浇娉ㄥ唽鐣岄潰 + /// </summary> + void LoadPage_RegisterPage() + { + btnRegister.MouseUpEventHandler += (sender, e) => + { + //鍥炶皟浜嬩欢 + //Action callBackAction = () => + //{ + // Application.RunOnMainThread(() => + // { + // try + // { + // } + // catch (Exception ex) + // { + // MainPage.Log($"login callBackAction : {ex.Message}"); + // } + // }); + //}; + + //鍒ゆ柇鏄惁鍚屾剰浜嗛殣绉佹斂绛� + if (CheckPrivacyPolicy() == false) return; + + var registerPage = new RegisterPage(); + registerPage.Show(); + registerPage.ShowDialog(); + }; + } + + /// <summary> + /// 蹇樿瀵嗙爜 + /// </summary> + void LoadMethod_ForgetPassword() + { + btnForgetPassword.MouseUpEventHandler += (sender, e) => + { + Action<string> callBackAction = (callBackPar_Action) => + { + Application.RunOnMainThread(() => + { + try + { + etAccount.Text = callBackPar_Action; + } + catch (Exception ex) + { + MainPage.Log($"login callBackAction : {ex.Message}"); + } + }); + }; + var forgetPasswordDialog = new ForgetPasswordPage(callBackAction); + forgetPasswordDialog.Show(); + 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