| | |
| | | /// </summary> |
| | | /// <param name="home">Home.</param> |
| | | /// <param name="gatewayMAC">Gateway mac.</param> |
| | | void ChangeRegion (RegionInfoRes home, bool goHomePage = true) |
| | | /// |
| | | void ChangeRegion (RegionInfoRes home, bool goHomePage = true, bool bNeedCheckAddRoom = false, bool goToGuideAddGatewayView = false) |
| | | { |
| | | if (home == null || string.IsNullOrEmpty (home.Id)) return; |
| | | |
| | |
| | | Application.RunOnMainThread (() => { |
| | | ShowHomeList (false); |
| | | |
| | | |
| | | if (goHomePage) { |
| | | UserConfig.Instance.RefreshUserConfig (); |
| | | new Alert ("", Language.StringByID (R.MyInternationalizationString.SwitchRegionSuccessfully), |
| | |
| | | CommonPage.IsRemote = false; |
| | | EquipmentPublicClass.CheckLinkRemote (2); |
| | | } |
| | | if (bNeedCheckAddRoom) { |
| | | CheckIfNeedAddRoom (); |
| | | } |
| | | |
| | | if (goToGuideAddGatewayView) { |
| | | var addGatewayDialog = new GuideAddGateway (); |
| | | UserMiddle.guidePageView.AddChidren (addGatewayDialog); |
| | | addGatewayDialog.ShowPage (home);//guidePageView |
| | | UserMiddle.guidePageView.PageIndex = 1; |
| | | } |
| | | }); |
| | | MainPage.LoginUser.SaveUserInfo (); |
| | | |
| | | |
| | | //} |
| | | } catch (Exception ex) { |
| | | Application.RunOnMainThread (() => { |
| | |
| | | |
| | | var requestJson2 = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj2); |
| | | var revertObj2 = MainPage.RequestHttps (API.EditHome, requestJson2, urlHead); |
| | | if (revertObj2.StateCode.ToUpper () != "SUCCESS") { |
| | | ShowEditHomeErrorInfo (revertObj2.StateCode); |
| | | return; |
| | | } |
| | | IO.FileUtils.ReNameFoler (UserConfig.Instance.CurrentRegion.Name, home.Name); |
| | | return; |
| | | } |
| | | ChangeRegion (home, false); |
| | | var addGatewayDialog = new GuideAddGateway (); |
| | | if (guide) { |
| | | |
| | | //ShowHomeList (); |
| | | EditResidence (home, etZoneName.Text.Trim ()); |
| | | UserMiddle.guidePageView.AddChidren (addGatewayDialog); |
| | | addGatewayDialog.ShowPage (home);//guidePageView |
| | | UserMiddle.guidePageView.PageIndex = 1; |
| | | } else { |
| | | EditResidence (home, etZoneName.Text.Trim ()); |
| | | //UserMiddle.SettingPageView.AddChidren (addGatewayDialog); |
| | | //addGatewayDialog.ShowPage (home); |
| | | //UserMiddle.SettingPageView.PageIndex = 2; |
| | | } |
| | | //ChangeRegion (home, false); |
| | | EditResidence (home, etZoneName.Text.Trim (), guide); |
| | | |
| | | |
| | | //if (guide) { |
| | | |
| | | // //ShowHomeList (); |
| | | // EditResidence (home, etZoneName.Text.Trim ()); |
| | | // var addGatewayDialog = new GuideAddGateway (); |
| | | // UserMiddle.guidePageView.AddChidren (addGatewayDialog); |
| | | // addGatewayDialog.ShowPage (home);//guidePageView |
| | | // UserMiddle.guidePageView.PageIndex = 1; |
| | | //} else { |
| | | // EditResidence (home, etZoneName.Text.Trim ()); |
| | | |
| | | //} |
| | | }; |
| | | |
| | | if(!guide) |
| | |
| | | /// </summary> |
| | | /// <param name="home">Home.</param> |
| | | /// <param name="residenceName">Et zone name string.</param> |
| | | bool EditResidence (RegionInfoRes home,string residenceName) |
| | | bool EditResidence (RegionInfoRes home, string residenceName, bool goToGuideAddGatewayView = false) |
| | | { |
| | | if (home.Name != residenceName) { |
| | | home.Name = residenceName; |
| | |
| | | ShowAddHomeErrorInfo (revertObj21.StateCode); |
| | | return false; |
| | | } |
| | | //创建住宅成功,切换到该住宅 |
| | | var responseDataObj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<RegionInfoRes>> (revertObj21.ResponseData.ToString ()); |
| | | if (responseDataObj != null && responseDataObj.Count > 0) { |
| | | ChangeRegion (responseDataObj [0], false, true, goToGuideAddGatewayView); |
| | | |
| | | } |
| | | } else { |
| | | var requestObj2 = new EditHomeObj () { HomeId = home.Id, Name = home.Name, LoginAccessToken = MainPage.LoginUser.LoginTokenString }; |
| | | string urlHead = MainPage.RequestHttpsHost; |
| | |
| | | } |
| | | var requestJson2 = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj2); |
| | | var revertObj2 = MainPage.RequestHttps (API.EditHome, requestJson2, urlHead); |
| | | IO.FileUtils.ReNameFoler (UserConfig.Instance.CurrentRegion.Name, home.Name); |
| | | if (revertObj2.StateCode.ToUpper() != "SUCCESS") { |
| | | ShowEditHomeErrorInfo (revertObj2.StateCode); |
| | | return false; |
| | | } |
| | | IO.FileUtils.ReNameFoler (UserConfig.Instance.CurrentRegion.Name, home.Name); |
| | | ChangeRegion (home, false, true, goToGuideAddGatewayView); |
| | | //CheckIfNeedAddRoom (); |
| | | } |
| | | |
| | | ShowHomeList (false); |
| | | //ShowHomeList (false); |
| | | //2020-01-09 去掉切换住宅 |
| | | //UserConfig.Instance.CurrentRegion = home; |
| | | //UserConfig.Instance.SaveUserConfig (); |
| | | }else { |
| | | ChangeRegion (home, false, true, goToGuideAddGatewayView); |
| | | //CheckIfNeedAddRoom (); |
| | | } |
| | | return true; |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 检测是否默认创建房间 |
| | | /// </summary> |
| | | void CheckIfNeedAddRoom () { |
| | | if (Room.Lists.FindAll ((obj) => obj.Name == "Living Room" || obj.Name == "Bedroom").Count == 0) { |
| | | Room room = new Room (); |
| | | string newRoomFilePath = typeof (Room).Name + "_Living Room"; |
| | |
| | | room.Add (newRoomFilePath); |
| | | room.Save (newRoomFilePath); |
| | | Room.Lists.Add (room); |
| | | |
| | | Room.InitAllRoom (); |
| | | } |
| | | if (home.Name != residenceName) { |
| | | ShowHomeList (); |
| | | } |
| | | return true; |
| | | |
| | | } |
| | | |
| | | |