From c1863db0158fb6c2a1cd96686d514c98c1073937 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期五, 17 一月 2020 11:58:18 +0800 Subject: [PATCH] 2020-01-17 --- Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs | 292 +++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 179 insertions(+), 113 deletions(-) diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs index 1cbb57a..3fefd82 100644 --- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs +++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs @@ -7,14 +7,91 @@ { public bool IsHideBack = false; + bool IsNeedGoToGuideAddGatewayView = false; public GuideAddResidence () { BackgroundColor = SkinStyle.Current.MainColor; } - public void ShowHomeList (bool showDialog = false) + //bool isInitViewEnd = false; + VerticalScrolViewLayout VerticalScrolViewMiddle; + + public void ShowHomeView (bool showDialog = false) { + #region 鏍囬 + var topView = new FrameLayout () { + Y = Application.GetRealHeight (36), + Height = Application.GetRealHeight (90), + }; + AddChidren (topView); + + var title = new Button () { + TextAlignment = TextAlignment.Center, + Text = "Zones/Residences", + TextSize = 19, + TextColor = SkinStyle.Current.TextColor1 + }; + topView.AddChidren (title); + + Button ItemButton = new Button () { + Width = Application.GetRealWidth (55), + Height = Application.GetRealHeight (55), + UnSelectedImagePath = "Item/+.png", + SelectedImagePath = "Item/+.png", + Y = Application.GetRealHeight (17), + X = Application.GetRealWidth (640 - 80), + }; + topView.AddChidren (ItemButton); + ItemButton.MouseUpEventHandler += (sender1, e1) => { + //GuideAddHomeDialog (new RegionInfoRes () { Id = "", Name = "" }, false); + GuideAddHomeDialog (new RegionInfoRes () { Id = "", Name = "" }, false); + }; + + //if (!IsHideBack) { + var back = new Button () { + Height = Application.GetRealHeight (90), + Width = Application.GetRealWidth (85), + UnSelectedImagePath = "Item/Back.png", + SelectedImagePath = "Item/BackSelected.png", + }; + topView.AddChidren (back); + back.MouseUpEventHandler += (sender, e) => { + if (IsHideBack) { + ShowIfLogoutAlter (); + } else { + (Parent as PageLayout).PageIndex -= 1; + } + + }; + + //} + + + + #endregion + + var BodyView = new FrameLayout () { + Width = LayoutParams.MatchParent, + Height = Application.GetRealHeight (1136 - 126), + Y = topView.Bottom, + BackgroundColor = SkinStyle.Current.ViewColor, + }; + AddChidren (BodyView); + + VerticalScrolViewMiddle = new VerticalScrolViewLayout (); + BodyView.AddChidren (VerticalScrolViewMiddle); + + GetHomeList (showDialog); + + } + + /// <summary> + /// 鏌ヨ鎵�鏈変綇瀹呭垪琛� + /// </summary> + /// <param name="showDialog"></param> + void GetHomeList (bool showDialog = false) { + new System.Threading.Thread (() => { bool needHide = true; try { @@ -39,7 +116,7 @@ var requestJson2 = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj2); var revertObj2 = MainPage.RequestHttps (API.GetHomePager, requestJson2); - if (revertObj2.StateCode.ToUpper() == "SUCCESS") { + if (revertObj2.StateCode.ToUpper () == "SUCCESS") { var mResidenceRes = Newtonsoft.Json.JsonConvert.DeserializeObject<ResidenceRes> (revertObj2.ResponseData.ToString ()); var responseDataObj = mResidenceRes.PageData; //if(responseDataObj == null && responseDataObj.Count == 0) { @@ -55,7 +132,13 @@ }); } UserConfig.Instance.SaveUserConfig (); - UserConfig.Instance.CurrentRegion = responseDataObj.Find ((obj) => obj.Id == UserConfig.Instance.CurrentRegion.Id); + //2020-01-16 + var mHome = responseDataObj.Find ((obj) => obj.Id == UserConfig.Instance.CurrentRegion.Id); + if (mHome != null) { + UserConfig.Instance.CurrentRegion = mHome; + } else { + UserConfig.Instance.CurrentRegion = UserConfig.Instance.HomeLists [0]; + } } else { Application.RunOnMainThread (() => { MainPage.Loading.Hide (); @@ -77,17 +160,17 @@ MainPage.Loading.Hide (); ShowHomeListView (showDialog); }); - } catch (Exception ex) { - Application.RunOnMainThread (() => { - MainPage.Loading.Hide (); - this.RemoveFromParent (); + } catch (Exception ex) { + Application.RunOnMainThread (() => { + MainPage.Loading.Hide (); + this.RemoveFromParent (); + needHide = false; + }); + Console.WriteLine (ex.Message); + } finally { needHide = false; - }); - Console.WriteLine (ex.Message); - } finally { - needHide = false; - } - }) { IsBackground = true }.Start (); + } + }) { IsBackground = true }.Start (); } @@ -115,94 +198,79 @@ } - void ShowHomeListView (bool showDialog = true) + + /// <summary> + /// 鍔犺浇鍒锋柊鎵�鏈変綇瀹� + /// </summary> + /// <param name="ifNeedShowDialog"></param> + void ShowHomeListView (bool ifNeedShowDialog = false) { - RemoveAll (); - #region 鏍囬 - var topView = new FrameLayout () { - Y = Application.GetRealHeight (36), - Height = Application.GetRealHeight (90), - }; - AddChidren (topView); - - var title = new Button () { - TextAlignment = TextAlignment.Center, - Text= "Zones/Residences", - TextSize = 19, - TextColor = SkinStyle.Current.TextColor1 - }; - topView.AddChidren (title); - - Button ItemButton = new Button () { - Width = Application.GetRealWidth (55), - Height = Application.GetRealHeight (55), - UnSelectedImagePath = "Item/+.png", - SelectedImagePath = "Item/+.png", - Y = Application.GetRealHeight (17), - X = Application.GetRealWidth (640 - 80), - }; - topView.AddChidren (ItemButton); - ItemButton.MouseUpEventHandler += (sender1, e1) => { - //GuideAddHomeDialog (new RegionInfoRes () { Id = "", Name = "" }, false); - GuideAddHomeDialog (new RegionInfoRes () { Id = "", Name = "" }, false); - }; - if (!IsHideBack) { - var back = new Button () { - Height = Application.GetRealHeight (90), - Width = Application.GetRealWidth (85), - UnSelectedImagePath = "Item/Back.png", - SelectedImagePath = "Item/BackSelected.png", - }; - topView.AddChidren (back); - back.MouseUpEventHandler += (sender, e) => { - (Parent as PageLayout).PageIndex -= 1; - }; - } - #endregion - - var BodyView = new FrameLayout () { - Width = LayoutParams.MatchParent, - Height = Application.GetRealHeight (1136 - 126), - Y = topView.Bottom, - BackgroundColor = SkinStyle.Current.ViewColor, - }; - AddChidren (BodyView); - - VerticalScrolViewLayout VerticalScrolViewMiddle = new VerticalScrolViewLayout (); - BodyView.AddChidren (VerticalScrolViewMiddle); - try { + VerticalScrolViewMiddle.RemoveAll (); foreach (var tempHome in UserConfig.Instance.HomeLists) { AddResidenceListRow (tempHome, VerticalScrolViewMiddle); } } catch { } - //if (UserConfig.Instance.GatewayList != null && UserConfig.Instance.GatewayList.Count == 0) { - // if (showDialog) { - // GuideAddHomeDialog (UserConfig.Instance.HomeLists [0], true); - // UserConfig.Instance.CurrentRegion = UserConfig.Instance.HomeLists [0]; - // } - //} - if (!UserConfig.Instance.CheckHomeGateways()) { - if (showDialog) { + if (!UserConfig.Instance.CheckHomeGatewaysNotEmpty ()) { + if (ifNeedShowDialog) { GuideAddHomeDialog (UserConfig.Instance.HomeLists [0], true); UserConfig.Instance.CurrentRegion = UserConfig.Instance.HomeLists [0]; } } + + if (IsNeedGoToGuideAddGatewayView) { + IsNeedGoToGuideAddGatewayView = false; + GotoGuideAddGatewayView (UserConfig.Instance.CurrentRegion); + + } + } + + /// <summary> + /// 鎻愮ず鐢ㄦ埛鏄惁閫�鍑虹櫥褰� + /// </summary> + void ShowIfLogoutAlter () + { + var logoutAlert = new Alert ("", "Log out?", "No", "Yes"); + logoutAlert.Show (); + logoutAlert.ResultEventHandler += (sender1, e1) => { + if (e1) { + AccountLogout (); + } + }; + + } + + /// <summary> + /// 閫�鍑虹櫥褰� + /// </summary> + void AccountLogout () + { + try { + MainPage.LoginUser.LastTime = DateTime.Now.AddDays (-30); + MainPage.LoginUser.SaveUserInfo (); + new AccountLogin ().Show (); + } catch { + + } + + } + + /// <summary> /// 鍔犺浇鐣岄潰 /// </summary> /// <param name="home">Home.</param> - /// <param name="VerticalScrolViewMiddle">Vertical scrol view middle.</param> - void AddResidenceListRow (RegionInfoRes home, VerticalScrolViewLayout VerticalScrolViewMiddle) + /// <param name="mVerticalScrolViewMiddle">Vertical scrol view middle.</param> + void AddResidenceListRow (RegionInfoRes home, VerticalScrolViewLayout mVerticalScrolViewMiddle) { var rowView = new RowLayout () { Height = Application.GetRealHeight (110), }; - VerticalScrolViewMiddle.AddChidren (rowView); + mVerticalScrolViewMiddle.AddChidren (rowView); Button btnRowLine = new Button () { Y = Application.GetRealHeight (107), @@ -251,10 +319,6 @@ }; rowView.AddChidren (goNextButton); - - - - Button rightButton1 = new Button () { X = Application.GetRealWidth (550), Width = Application.GetRealWidth (28), @@ -265,9 +329,6 @@ }; rowView.AddChidren (rightButton1); - - - EventHandler<MouseEventArgs> eHandler = (sender, e) => { if (home.Id == UserConfig.Instance.CurrentRegion.Id) { if (home.IsOthreShare) { @@ -275,11 +336,8 @@ new Alert ("", ErrorCode.InsufficientAuthority, "Close").Show (); return; } - //UserConfig.Instance.GatewayMAC = gatewayMAC; - var addGatewayDialog = new GuideAddGateway (); - (Parent as PageLayout).AddChidren (addGatewayDialog); - addGatewayDialog.ShowPage (home); - (Parent as PageLayout).PageIndex = (Parent as PageLayout).ChildrenCount - 1; + + GotoGuideAddGatewayView (home); } else { ChangeRegion (home); } @@ -422,7 +480,7 @@ var revertObj2 = MainPage.RequestHttps (API.DelHome, requestJson2); if (revertObj2.StateCode.ToUpper () == "SUCCESS") { Application.RunOnMainThread (() => { - ShowHomeList (); + GetHomeList (); }); } else { ShowDelHomeErrorInfo (revertObj2.StateCode); @@ -472,6 +530,23 @@ } /// <summary> + /// 璺宠浆缃戝叧鎼滅储椤甸潰 + /// </summary> + /// <param name="home"></param> + void GotoGuideAddGatewayView (RegionInfoRes home) { + try { + var addGatewayDialog = new GuideAddGateway (); + (Parent as PageLayout).AddChidren (addGatewayDialog); + addGatewayDialog.ShowPage (home); + (Parent as PageLayout).PageIndex = (Parent as PageLayout).ChildrenCount - 1; + } catch { + + System.Console.WriteLine ("============>GotoGuideAddGatewayView 璺宠浆澶辫触 "); + } + + } + + /// <summary> /// 鏇存崲鏈湴鍖哄煙 /// </summary> /// <param name="home">Home.</param> @@ -511,7 +586,17 @@ UserConfig.Instance.SaveUserConfig (); Room.InitAllRoom (); Application.RunOnMainThread (() => { - ShowHomeList (false); + if (goToGuideAddGatewayView) { + IsNeedGoToGuideAddGatewayView = true; + //2020-01-16 + //GotoGuideAddGatewayView (home); + + //var addGatewayDialog = new GuideAddGateway (); + //UserMiddle.guidePageView.AddChidren (addGatewayDialog); + //addGatewayDialog.ShowPage (home);//guidePageView + //UserMiddle.guidePageView.PageIndex = 1; + } + GetHomeList (false); if (goHomePage) { @@ -526,12 +611,7 @@ CheckIfNeedAddRoom (); } - if (goToGuideAddGatewayView) { - var addGatewayDialog = new GuideAddGateway (); - UserMiddle.guidePageView.AddChidren (addGatewayDialog); - addGatewayDialog.ShowPage (home);//guidePageView - UserMiddle.guidePageView.PageIndex = 1; - } + }); MainPage.LoginUser.SaveUserInfo (); @@ -657,22 +737,8 @@ return; } - //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) -- Gitblit v1.8.0