From d87400af518ebc9274f4447f06476959c3aa5102 Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期二, 14 七月 2020 16:29:42 +0800
Subject: [PATCH] Merge branch 'dev-tzy' into dev-2020xm

---
 ZigbeeApp/Shared/Phone/MainPage/LeftListRoomViewFrom.cs |   57 ++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/MainPage/ListRoomViewFrom.cs b/ZigbeeApp/Shared/Phone/MainPage/LeftListRoomViewFrom.cs
similarity index 86%
rename from ZigbeeApp/Shared/Phone/MainPage/ListRoomViewFrom.cs
rename to ZigbeeApp/Shared/Phone/MainPage/LeftListRoomViewFrom.cs
index 3b2d07d..da61323 100755
--- a/ZigbeeApp/Shared/Phone/MainPage/ListRoomViewFrom.cs
+++ b/ZigbeeApp/Shared/Phone/MainPage/LeftListRoomViewFrom.cs
@@ -10,22 +10,22 @@
     /// <summary>
     /// 宸︽粦鑿滃崟鐨勭殑鎴块棿鍒楄〃鐣岄潰
     /// </summary>
-    public class ListRoomViewFrom : EditorCommonForm
+    public class LeftListRoomViewFrom : EditorCommonForm
     {
         #region 鈻� 鍙橀噺澹版槑___________________________
 
-        private static ListRoomViewFrom roomManagement = null;
+        private static LeftListRoomViewFrom roomManagement = null;
         /// <summary>
         /// 宸︽粦鑿滃崟鐨勭殑鎴块棿瀵硅薄
         /// </summary>
-        public static ListRoomViewFrom Instance
+        public static LeftListRoomViewFrom Instance
         {
             get
             {
                 if (roomManagement == null)
                 {
                     //鍒濆鍖栧乏婊戣彍鍗�
-                    roomManagement = new ListRoomViewFrom();
+                    roomManagement = new LeftListRoomViewFrom();
                     CommonPage.Instance.AddLeftView(roomManagement);
                 }
                 return roomManagement;
@@ -52,6 +52,10 @@
         /// 鍗$墖鎺т欢闆嗗悎
         /// </summary>
         private Dictionary<string, Controls.ListRoomCardControl> dicCardControl = new Dictionary<string, Controls.ListRoomCardControl>();
+        /// <summary>
+        /// 鏈垎閰嶇晫闈�(鐢ㄤ簬瀵瑰簲鍒汉涔辨悶,鍦ㄦ墦寮�鏈垎閰嶇晫闈笉鍏虫椂,鍘诲埛鏂板満鏅�,鐒跺悗鎻恇ug璇存病鏈夊満鏅�)
+        /// </summary>
+        private UnallocatedRoomForm unalloctedRoom = null;
 
         #endregion
 
@@ -60,7 +64,7 @@
         /// <summary>
         /// 鐢婚潰鏄剧ず
         /// </summary>
-        public void ShowForm()
+        private void ShowForm()
         {
             //鍒濆鍖栧ご閮ㄤ俊鎭�
             this.InitTopFrame();
@@ -92,13 +96,18 @@
             };
 
             //鑾峰彇妤煎眰
-            this.curFloorId = Config.Instance.Home.CurrentFloorId;
-
             var dicFloor = HdlRoomLogic.Current.GetFloorSortList();
             if (dicFloor.Count == 0)
             {
                 return;
             }
+            //妤煎眰鍒濆ID
+            foreach (var floorId in dicFloor.Keys)
+            {
+                this.curFloorId = floorId;
+                break;
+            }
+
             //妤煎眰鍥炬爣
             var btnIconContr = new MostRightIconControl(69, 69);
             btnIconContr.UnSelectedImagePath = "Item/Drop_Down.png";
@@ -116,9 +125,9 @@
             {
                 //妤煎眰鑿滃崟
                 var floors = new Category.SelectFloorForm();
+                floors.CurFloorId = this.curFloorId;
                 AddChidren(floors);
-                floors.changeFloor = false;
-                floors.CurFloorId = curFloorId;
+                floors.CurFloorId = this.curFloorId;
                 floors.Init(599, 161, Direction.Right);
                 floors.FloorAction += (floorId) =>
                 {
@@ -152,6 +161,9 @@
         /// </summary>
         public void RefreshListRoom()
         {
+            //淇濋櫓璧疯,杩欓噷瑕佸叧闂湭鍒嗛厤鐣岄潰
+            this.CloseUnallocatedRoomForm();
+
             //濡傛灉杩樻病鏈夊垵濮嬪寲瀹屾垚鐣岄潰鐨勮瘽
             if (this.isInitFinish == false)
             {
@@ -212,7 +224,6 @@
                     {
                         return;
                     }
-                    string oldFloorId = Config.Instance.Home.CurrentFloorId;
                     CommonPage.Instance.CloseLeftMenu();
 
                     HdlThreadLogic.Current.RunThread(() =>
@@ -224,10 +235,11 @@
                             //鐐瑰嚮鐨勬槸鏀惰棌鎴块棿鐨勮瘽,涓嶅彉鏇村綋鍓嶆ゼ灞俰d
                             if (room.FloorId != string.Empty)
                             {
-                                Config.Instance.Home.CurrentFloorId = room.FloorId;
-                                if (oldFloorId != room.FloorId)
+                                if (Config.Instance.Home.CurrentFloorId != room.FloorId)
                                 {
                                     //妤煎眰閮藉垏鎹㈢殑璇�,鍒锋柊鏁翠釜涓婚〉
+                                    Config.Instance.Home.CurrentFloorId = room.FloorId;
+                                    HdlRoomLogic.Current.NowMainPageRoom = room;
                                     UserPage.Instance.ReFreshControl();
                                     return;
                                 }
@@ -295,14 +307,33 @@
                     return;
                 }
                 //鏈垎閰�
-                var unalloctedRoom = new UnallocatedRoomForm();
+                this.unalloctedRoom = new UnallocatedRoomForm();
                 this.AddChidren(unalloctedRoom);
                 unalloctedRoom.ShowForm();
+                unalloctedRoom.FormCloseEvent += () =>
+                {
+                    //鎵嬪姩鐐瑰嚮鍏抽棴鐨勮瘽,鐩存帴缃┖
+                    this.unalloctedRoom = null;
+                };
             };
         }
 
         #endregion
 
+        #region 鈻� 鍏抽棴鏈垎閰嶇晫闈____________________
+
+        /// <summary>
+        /// 鍏抽棴鏈垎閰嶇晫闈�
+        /// </summary>
+        public void CloseUnallocatedRoomForm()
+        {
+            //鍏抽棴鐣岄潰
+            this.unalloctedRoom?.CloseForm();
+            this.unalloctedRoom = null;
+        }
+
+        #endregion
+
         #region 鈻� 鍒锋柊鎸囧畾鎴块棿_______________________
 
         /// <summary>

--
Gitblit v1.8.0