From d53e6af2c5f17838fa79659614b15a2a1f383399 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期五, 31 三月 2023 10:04:58 +0800
Subject: [PATCH] 1

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserMiddle.cs |  113 ++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 100 insertions(+), 13 deletions(-)

diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserMiddle.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserMiddle.cs
index e9fd37d..cdcf69a 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserMiddle.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserMiddle.cs
@@ -220,7 +220,30 @@
             UserMiddle.updateSensorhreadList.Clear ();
         }
 
-        //2020-01-11 
+        /// <summary>
+        /// 绉婚櫎GuidePageView
+        /// </summary>
+        static void removeGuidePageView ()
+        {
+            if (guidePageView != null) {
+                if (guidePageView.Parent != null) {
+                    Utlis.WriteLine ("绉婚櫎GuidePageView Parent 涓嶄负");
+                }
+                
+                guidePageView.RemoveFromParent ();
+               
+            }
+        }
+        /// <summary>
+        /// 鏄惁鍒锋柊杩囦綇瀹呬俊鎭� 2022-06-22 14:16:27
+        /// </summary>
+        static bool refreshHomeData = false;
+
+        /// <summary>
+        /// 2020-01-11 
+        /// </summary>
+        /// <param name="isGuide">鏄惁Guide</param>
+        /// <param name="bFromLogin">鏄惁鏉ヨ嚜鐧诲綍鐣岄潰</param>
         public static void Init (bool isGuide = false, bool bFromLogin = false)
         {
             if (MainPage.LoginUser == null)
@@ -230,14 +253,49 @@
                 new AccountLogin ().Show ();
                 UserConfig.Instance.TipVersionBackup = UserConfig.Instance.VersionNumber;
             } else {
+                //2021-03-23 绉婚櫎GuidePageView
+                removeGuidePageView ();
+
                 //if (UserConfig.Instance.GatewayList.Count == 0) {
                 //2020-01-11 Mac娌$粦瀹� 鏄惁鏉ュ彧鐧诲綍鐣岄潰
                 if (bFromLogin) {
                     if (!UserConfig.Instance.CheckHomeGatewaysNotEmpty ()) {
-                        if (guidePageView != null) {
-                            guidePageView.RemoveAll ();
-                            guidePageView.RemoveFromParent ();
+                        #region 澶氭杩佺Щ浣忓畢瀵艰嚧缃戝叧琚Щ闄ょ殑鎯呭喌
+                        if (!refreshHomeData) {
+                            refreshHomeData = true;
+                            //鑾峰彇浣忓畢鍒楄〃
+                            var revertObjCode = HttpServerRequest.Current.GetHomePager ();
+                            if (revertObjCode == StateCode.SUCCESS) {
+                                var mHomeLists = UserConfig.Instance.HomeLists;
+
+                                if (mHomeLists != null && mHomeLists.Count > 0) {
+                                    var bFind = false;
+                                    foreach (var mHome in mHomeLists) {
+                                        if (mHome.isBindGateway) {
+                                            bFind = true;
+                                            UserConfig.Instance.CurrentRegion = mHome;
+                                            break;
+                                        }
+                                    }
+
+                                    if (!bFind) {
+                                        var findRoom2 = mHomeLists.Find ((obj) => obj.IsOthreShare == false);
+                                        if (findRoom2 != null) {
+                                            UserConfig.Instance.CurrentRegion = findRoom2;
+                                        } else {
+                                            UserConfig.Instance.CurrentRegion = mHomeLists [0];
+                                        }
+                                    }
+
+                                    IO.FileUtils.DeleteAllFile ();
+                                }
+                                SaveUserConfig (mHomeLists);
+                            }
+                            return;
                         }
+                        #endregion
+
+
                         UserHomePage.FrameLayoutMain.AddChidren (guidePageView);
                         var guide = new GuideAddResidence ();
                         guide.IsHideBack = true;
@@ -338,12 +396,10 @@
         /// </summary>
         static void InitHomePageView ()
         {
-            //SystemRemote.LinkRemote ("", "", "",true); 
+            //SystemRemote.LinkRemote ("", "", "",true);
+           
             if (null != UserPageView.Parent) {
-                if (guidePageView.Parent != null) {
-                    guidePageView.RemoveAll ();
-                    guidePageView.RemoveFromParent ();
-                }
+
                 CleanPageView (FavoriteBodyView);
                 UserPageView.AddChidren (FavoritePageView);
                 FavoritePageView.AddChidren (FavoriteBodyView);
@@ -416,9 +472,15 @@
             //LightEnergySocket sddd = new LightEnergySocket () { LoopID = 1, SubnetID = 100, DeviceID = 122,   Name = "娴嬭瘯鎻掑骇" };
             //IO.FileUtils.SaveEquipmentMessage (sddd, "1");
 
-            //var ud = new UniversalDevice () { LoopID = 1,SubnetID = 42,DeviceID = 6,ActionType = 2,Name = "Universal-1",obj1 = 1,TargetType = 0};
-            //ud.SendBytes = new List<byte> () { 1 ,0};
-            //IO.FileUtils.SaveEquipmentMessage (ud, "1");
+            //var ud = new UniversalDevice () { LoopID = 1, SubnetID = 1, DeviceID = 100, ActionType = 2, Name = "閫氱敤寮�鍏�", obj1 = 1, TargetType = 0 };
+            //ud.SendBytes = new List<byte> () { 1, 0 };
+            //IO.FileUtils.SaveEquipmentMessage (ud, ud.LoopID.ToString());
+
+            //var ud2 = new UniversalDevice () { LoopID = 2, SubnetID = 1, DeviceID = 100, ActionType = 2, Name = "閫氱敤寮�鍏�2", obj1 = 1, TargetType = 0 };
+            //ud.SendBytes = new List<byte> () { 1, 255 };
+            //IO.FileUtils.SaveEquipmentMessage (ud, ud.LoopID.ToString ());
+
+
             //var ud2 = new UniversalDevice () { LoopID = 2, SubnetID = 42, DeviceID = 6, ActionType = 0, Name = "Universal-2", obj1 = 1,TargetType = 1};
             //ud2.SendBytes = new List<byte> () { 2 ,0};
             //IO.FileUtils.SaveEquipmentMessage (ud2, "2");
@@ -518,6 +580,7 @@
 
             #endregion
 
+
         }
 
         public static void ShowSettingView ()
@@ -553,7 +616,7 @@
             UserDeviceToFH.readAllStatus (isRefresh);
         }
 
-     
+
 
         ///// <summary>
         ///// 鐧诲綍鎴愬姛鍚庯紝鏌ヨ鍒锋柊涓�娆″綋鍓嶄綇瀹� 缃戝叧鍒楄〃
@@ -582,5 +645,29 @@
         //    }
         //}
 
+        /// <summary>
+        /// 淇濆瓨鏁版嵁 骞跺姞杞介〉闈�
+        /// </summary>
+        /// <param name="revertRoomData"></param>
+        static void SaveUserConfig (List<RegionInfoRes> revertRoomData)
+        {
+            UserConfig.Instance.SaveUserConfig ();
+            MainPage.LoginUser.LastTime = DateTime.Now;
+            if (UserConfig.Instance.CheckHomeGatewaysNotEmpty ()) {
+                MainPage.LoginUser.SaveUserInfo ();
+                Scene.Refresh ();
+                A31MusicModel.Refresh ();
+                Application.RunOnMainThread (() => {
+                    Init (false, true);
+                    EquipmentPublicClass.CheckLinkRemote (UserConfig.Instance.internetStatus);
+                });
+            } else {
+                Application.RunOnMainThread (() => {
+                    Init (false, true);
+                });
+            }
+
+        }
+
     }
 }

--
Gitblit v1.8.0