From 49add64d7f25448baa06ac5a9ebbeac0a3ae97e0 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期一, 13 一月 2020 13:50:29 +0800 Subject: [PATCH] Version 2.50113 1.优化更新。 2.第一次引导或者添加住宅,默认添加2个房间。编辑住宅不处理。 3.设备名超过20字节限制。 4.修复编辑住宅名字重复不提示问题。 5.优化添加住宅逻辑。 --- Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs | 227 ++++++++++++++++++++++++++++++-------------------------- 1 files changed, 122 insertions(+), 105 deletions(-) diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs index 0ed1ed1..a12edd8 100644 --- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs +++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs @@ -695,7 +695,7 @@ return; } } - BindGateways (); + BindGatewaysNew (); } } catch (Exception ex) { Console.WriteLine (ex.Message); @@ -891,133 +891,64 @@ } } - BindGateways (); + BindGatewaysNew (); } + /// <summary> /// Gateway setting succeeded锛宒ata up.Please wait... + /// 缁戝畾Mac(鍗板害鐗�) /// </summary> - void BindGateways (){ - + void BindGatewaysNew () + { Application.RunOnMainThread (() => { MainPage.Loading.Start ("Gateway setting succeeded锛宒ata up.Please wait..."); }); IO.FileUtils.SaveEquipmentMessage (gatewayDeicve); var gatewayMAC = gatewayDeicve.MAC.Replace (".", ""); - var oldMac = ""; - //2020-01-11 - if (UserConfig.Instance.CheckHomeGatewaysNotEmpty ()) { - //褰撳墠浣忓畢瀛樺湪Mac 淇敼MAC鎺ュ彛 - oldMac = UserConfig.Instance.CurrentRegion.HomeGateways [0].GatewayUniqueId; - if(oldMac == gatewayMAC) {//鍜岀粦瀹歮ac涓�鑷达紝涓嶇敤淇敼 - AddMacToUserConfig (gatewayMAC); - return; - } - var mUpdateMacObj = new UpdateMacObj () { - LoginAccessToken = MainPage.LoginUser.LoginTokenString, - HomeId = UserConfig.Instance.CurrentRegion.Id, - NewMac = gatewayMAC, - OldMac = oldMac - }; - string urlHead = MainPage.RequestHttpsHost; - if (mUpdateMacObj.IsOtherAccountCtrl) { - urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; - mUpdateMacObj.LoginAccessToken = UserConfig.Instance.MasterAccountToken; - } + //璧版柊鏇存柊缁戝畾鎺ュ彛 + var mBindMacObj = new BindMacObj () { + LoginAccessToken = MainPage.LoginUser.LoginTokenString, + HomeId = UserConfig.Instance.CurrentRegion.Id, + MAC = gatewayMAC - var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (mUpdateMacObj); - - //var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (new EditMACByHomeId { RegionID = UserConfig.Instance.CurrentRegion.Id, MAC = gatewayMAC, IsReBind = true }); - var respone = MainPage.RequestHttps (API.UpdateMac, requestJson, urlHead); - if (respone.StateCode.ToUpper () != "SUCCESS") { - GetNowHomeGatewayAfterBindMacFailed ();//2020-01-11 - Application.RunOnMainThread (() => { - new Alert ("", "Failed to update Mac address, gateway binding failed!", Language.StringByID (R.MyInternationalizationString.Close)).Show (); - if (MainPage.LoginUser.AccountString == "464027401@qq.com") { - new Alert (respone.StateCode, respone.ErrorInfo, Language.StringByID (R.MyInternationalizationString.Close)).Show (); - } - }); - return; - } - //GetNowHomeGateway (); - AddMacToUserConfig (gatewayMAC); - } else { - //璧版柊缁戝畾鎺ュ彛 - var mBindMacObj = new BindGatewayToHomeObj () { - LoginAccessToken = MainPage.LoginUser.LoginTokenString, - HomeId = UserConfig.Instance.CurrentRegion.Id, - - }; - mBindMacObj.BindGateways.Add (gatewayMAC); - string urlHead = MainPage.RequestHttpsHost; - if (mBindMacObj.IsOtherAccountCtrl) { - urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; - mBindMacObj.LoginAccessToken = UserConfig.Instance.MasterAccountToken; - } - - - var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (mBindMacObj); - - //var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (new EditMACByHomeId { RegionID = UserConfig.Instance.CurrentRegion.Id, MAC = gatewayMAC, IsReBind = true }); - var respone = MainPage.RequestHttps (API.BindGatewayToHome, requestJson, urlHead); - if (respone.StateCode.ToUpper () != "SUCCESS" && respone.StateCode != "BindGatewaysExists") { - GetNowHomeGatewayAfterBindMacFailed ();//2020-01-11 - Application.RunOnMainThread (() => { - new Alert ("", "Failed to bind Mac address, gateway binding failed!", Language.StringByID (R.MyInternationalizationString.Close)).Show (); - if (MainPage.LoginUser.AccountString == "464027401@qq.com") { - new Alert (respone.StateCode, respone.ErrorInfo, Language.StringByID (R.MyInternationalizationString.Close)).Show (); - } - }); - return; - } - //GetNowHomeGateway (); - AddMacToUserConfig (gatewayMAC); + }; + + string urlHead = MainPage.RequestHttpsHost; + if (mBindMacObj.IsOtherAccountCtrl) { + urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + mBindMacObj.LoginAccessToken = UserConfig.Instance.MasterAccountToken; } + + var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (mBindMacObj); + + //var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (new EditMACByHomeId { RegionID = UserConfig.Instance.CurrentRegion.Id, MAC = gatewayMAC, IsReBind = true }); + var respone = MainPage.RequestHttps (API.BindMac, requestJson, urlHead); + if (respone.StateCode.ToUpper () != "SUCCESS") { + GetNowHomeGatewayAfterBindMacFailed ();//2020-01-11 + Application.RunOnMainThread (() => { + new Alert ("", $"Failed to bind Mac address! {ErrorCode.Reason }{respone.StateCode}", Language.StringByID (R.MyInternationalizationString.Close)).Show (); + if (MainPage.LoginUser.AccountString == "464027401@qq.com") { + new Alert (respone.StateCode, respone.ErrorInfo, Language.StringByID (R.MyInternationalizationString.Close)).Show (); + } + }); + return; + } + //GetNowHomeGateway (); + AddMacToUserConfig (gatewayMAC); + } - - //void GetAllBindGatewarysPagger () - //{ - // var gatewayListObj = new GetAllBindGatewarysPaggerObj (); - // gatewayListObj.ReqDto.LoginAccessToken = MainPage.LoginUser.LoginTokenString; - // var gatewayListJson = Newtonsoft.Json.JsonConvert.SerializeObject (gatewayListObj); - // var gatewayListRevertObj = MainPage.RequestHttps (API.GetAllBindGatewarysPagger, gatewayListJson); - // if (gatewayListRevertObj.StateCode.ToUpper () == "SUCCESS") { - // var mGateRes = Newtonsoft.Json.JsonConvert.DeserializeObject<AllBindGatewarysPaggerRes> (gatewayListRevertObj.ResponseData.ToString ()); - // var responseGatewayDataObj = mGateRes.PageData; - // if (responseGatewayDataObj.Count > 0) { - // UserConfig.Instance.GatewayList.Clear (); - // UserConfig.Instance.GatewayList.AddRange (responseGatewayDataObj); - // UserConfig.Instance.GatewayMAC = gatewayDeicve.MAC; - // UserConfig.Instance.SaveUserConfig (); - // MainPage.LoginUser.LastTime = DateTime.Now; - // Application.RunOnMainThread (() => { - // UserMiddle.Init (true); - // }); - // } else { - // Application.RunOnMainThread (() => { - // new Alert ("", "Communication abnormality, gateway failed to bind residence.Please try again.", Language.StringByID (R.MyInternationalizationString.Close)).Show (); - // if (MainPage.LoginUser.AccountString == "464027401@qq.com") { - // new Alert ("22:" + gatewayListRevertObj.StateCode, gatewayListRevertObj.ErrorInfo, Language.StringByID (R.MyInternationalizationString.Close)).Show (); - // } - // }); - // } - // } else { - - // ShowGetAllBindGatewarysPaggerErrorInfo (gatewayListRevertObj.StateCode); - // } - - //} /// <summary> /// 淇敼鍒囨崲鏈湴浣忓畢 缃戝叧 /// </summary> void AddMacToUserConfig (string gatewayMAC) { - + UserConfig.Instance.GatewayMAC = gatewayMAC; UserConfig.Instance.SaveUserConfig (); MainPage.LoginUser.LastTime = DateTime.Now; @@ -1030,6 +961,92 @@ + + ///// <summary> + ///// Gateway setting succeeded锛宒ata up.Please wait... + ///// </summary> + //void BindGateways () + //{ + + // Application.RunOnMainThread (() => { + // MainPage.Loading.Start ("Gateway setting succeeded锛宒ata up.Please wait..."); + // }); + // IO.FileUtils.SaveEquipmentMessage (gatewayDeicve); + // var gatewayMAC = gatewayDeicve.MAC.Replace (".", ""); + // var oldMac = ""; + // //2020-01-11 + // if (UserConfig.Instance.CheckHomeGatewaysNotEmpty ()) { + // //褰撳墠浣忓畢瀛樺湪Mac 淇敼MAC鎺ュ彛 + // oldMac = UserConfig.Instance.CurrentRegion.HomeGateways [0].GatewayUniqueId; + // if (oldMac == gatewayMAC) {//鍜岀粦瀹歮ac涓�鑷达紝涓嶇敤淇敼 + // AddMacToUserConfig (gatewayMAC); + // return; + // } + + // var mUpdateMacObj = new UpdateMacObj () { + // LoginAccessToken = MainPage.LoginUser.LoginTokenString, + // HomeId = UserConfig.Instance.CurrentRegion.Id, + // NewMac = gatewayMAC, + // OldMac = oldMac + // }; + // string urlHead = MainPage.RequestHttpsHost; + // if (mUpdateMacObj.IsOtherAccountCtrl) { + // urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + // mUpdateMacObj.LoginAccessToken = UserConfig.Instance.MasterAccountToken; + // } + + // var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (mUpdateMacObj); + + // //var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (new EditMACByHomeId { RegionID = UserConfig.Instance.CurrentRegion.Id, MAC = gatewayMAC, IsReBind = true }); + // var respone = MainPage.RequestHttps (API.UpdateMac, requestJson, urlHead); + // if (respone.StateCode.ToUpper () != "SUCCESS") { + // GetNowHomeGatewayAfterBindMacFailed ();//2020-01-11 + // Application.RunOnMainThread (() => { + // new Alert ("", "Failed to update Mac address, gateway binding failed!", Language.StringByID (R.MyInternationalizationString.Close)).Show (); + // if (MainPage.LoginUser.AccountString == "464027401@qq.com") { + // new Alert (respone.StateCode, respone.ErrorInfo, Language.StringByID (R.MyInternationalizationString.Close)).Show (); + // } + // }); + // return; + // } + // //GetNowHomeGateway (); + // AddMacToUserConfig (gatewayMAC); + // } else { + // //璧版柊缁戝畾鎺ュ彛 + // var mBindMacObj = new BindGatewayToHomeObj () { + // LoginAccessToken = MainPage.LoginUser.LoginTokenString, + // HomeId = UserConfig.Instance.CurrentRegion.Id, + + // }; + // mBindMacObj.BindGateways.Add (gatewayMAC); + // string urlHead = MainPage.RequestHttpsHost; + // if (mBindMacObj.IsOtherAccountCtrl) { + // urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + // mBindMacObj.LoginAccessToken = UserConfig.Instance.MasterAccountToken; + // } + + + // var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (mBindMacObj); + + // //var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (new EditMACByHomeId { RegionID = UserConfig.Instance.CurrentRegion.Id, MAC = gatewayMAC, IsReBind = true }); + // var respone = MainPage.RequestHttps (API.BindGatewayToHome, requestJson, urlHead); + // if (respone.StateCode.ToUpper () != "SUCCESS" && respone.StateCode != "BindGatewaysExists") { + // GetNowHomeGatewayAfterBindMacFailed ();//2020-01-11 + // Application.RunOnMainThread (() => { + // new Alert ("", "Failed to bind Mac address, gateway binding failed!", Language.StringByID (R.MyInternationalizationString.Close)).Show (); + // if (MainPage.LoginUser.AccountString == "464027401@qq.com") { + // new Alert (respone.StateCode, respone.ErrorInfo, Language.StringByID (R.MyInternationalizationString.Close)).Show (); + // } + // }); + // return; + // } + // //GetNowHomeGateway (); + // AddMacToUserConfig (gatewayMAC); + // } + + //} + + /// <summary> /// 缁戝畾澶辫触涔嬪悗锛屾煡璇㈠埛鏂颁竴娆″綋鍓嶄綇瀹� 缃戝叧鍒楄〃 /// 2020-01-11 -- Gitblit v1.8.0