From 3f87bf0ae7394cdd7d52428f1f6b4361434c7cc4 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期五, 15 五月 2020 13:28:33 +0800
Subject: [PATCH] hhhhhhhhh

---
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs |   45 +++++++++++++++++++--------------------------
 1 files changed, 19 insertions(+), 26 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs
index 2edc90e..8105082 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs
@@ -31,32 +31,14 @@
                 return m_Current;
             }
         }
-
         /// <summary>
-        /// 褰撳墠閫夋嫨鐨勬埧闂�
+        /// 褰撳墠涓婚〉閫夋嫨鐨勬埧闂村璞�
         /// </summary>
-        private Room m_CurrentRoom = null;
+        public Room NowMainPageRoom = null;
         /// <summary>
-        /// 褰撳墠閫夋嫨鐨勬埧闂�
+        /// 褰撳墠鍒嗙被閫夋嫨鐨勬埧闂村璞�
         /// </summary>
-        public Room CurrentRoom
-        {
-            get
-            {
-                if (m_CurrentRoom == null && dicRooms.Count > 0)
-                {
-                    //璁剧疆鍒濆鍊�
-                    foreach (var room in dicRooms.Values)
-                    {
-                        m_CurrentRoom = room;
-                        break;
-                    }
-                }
-                return m_CurrentRoom;
-            }
-            set { m_CurrentRoom = value; }
-        }
-
+        public Room NowCategoryRoom = null;
         /// <summary>
         /// 鎵�鏈夌殑鎴块棿淇℃伅
         /// </summary>
@@ -72,6 +54,9 @@
         /// </summary>
         public void InitAllRoom()
         {
+            this.NowMainPageRoom = null;
+            this.NowCategoryRoom = null;
+
             //娓呯┖鏈湴缂撳瓨
             this.dicRooms.Clear();
             //妫�娴嬫垜鐨勫枩鐖辫繖涓埧闂村璞�
@@ -591,8 +576,8 @@
             {
                 return;
             }
-            //浠庡師鏉ョ殑鎴块棿绉婚櫎璁惧
-            this.DeleteDevice(device);
+            //浠庡師鏉ョ殑鎴块棿绉婚櫎璁惧,杩欓噷涓嶅垹闄ょ湡瀹炶澶囩殑鎴块棿
+            this.DeleteDevice(device, false);
 
             //娣诲姞鍒版柊鐨勬埧闂�
             var room = this.GetRoomById(roomId);
@@ -705,12 +690,20 @@
         /// 鍒犻櫎璁惧(杩欎釜鍑芥暟涓嶅垹闄ゆ垜鐨勫枩鐖�)
         /// </summary>
         /// <param name="device">瑕佸垹闄ょ殑璁惧瀵硅薄</param>
-        public void DeleteDevice(CommonDevice device)
+        /// <param name="deleteReal">鏄惁鍒犻櫎鐪熷疄鐗╃悊璁惧鐨勬埧闂�</param>
+        public void DeleteDevice(CommonDevice device, bool deleteReal = true)
         {
             if (device == null)
             {
                 return;
             }
+            //濡傛灉瀹冨彧鏈変竴涓洖璺�
+            if (deleteReal == true && LocalDevice.Current.GetDevicesCountByMac(device.DeviceAddr) == 1)
+            {
+                //鍒犻櫎鎺夊畠鐨勭湡瀹炵墿鐞嗚澶囩殑鎵�鍦ㄤ綅缃�
+                LocalDevice.Current.DeleteRealDeviceFromRoom(device);
+            }
+
             //鏍规嵁璁惧锛岃幏鍙栨墍鍦ㄧ殑鎴块棿
             var room = this.GetRoomByDevice(device);
             if (room == null)
@@ -725,7 +718,7 @@
             HdlAutoBackupLogic.AddOrEditorFile(room.FileName);
 
             //閫掑綊锛氬垹闄ゆ帀浠ュ墠鐨勬棫鏁版嵁瀵艰嚧鐨勫涓埧闂寸殑闂
-            this.DeleteDevice(device);
+            this.DeleteDevice(device, deleteReal);
         }
 
         /// <summary>

--
Gitblit v1.8.0