From 627093aca723d4bfb971b97c828e8b3a22dbda78 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 17 七月 2020 17:26:19 +0800
Subject: [PATCH] 2020-07-17-1
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs | 61 ++++++++++++++++--------------
1 files changed, 32 insertions(+), 29 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs
index 8daca3a..75af7bc 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();
//妫�娴嬫垜鐨勫枩鐖辫繖涓埧闂村璞�
@@ -143,7 +128,7 @@
{
Application.RunOnMainThread(() =>
{
- MainPage.ListRoomViewFrom.Instance?.ShowForm();
+ MainPage.ListRoomViewFrom.Instance?.RefreshListRoom();
});
}
@@ -305,6 +290,10 @@
Global.DeleteFilebyHomeId(roomFilePath);
}
HdlAutoBackupLogic.DeleteFile(roomFilePath);
+
+ //鏍规嵁鎴块棿ID,绉婚櫎鎸囧畾鐨勭湡瀹炵墿鐞嗚澶囩殑鎵�灞炴埧闂磋褰�
+ Common.LocalDevice.Current.DeleteRealDeviceByRoomId(roomId);
+
//鍒锋柊鎴块棿瑙嗗浘鍒楄〃
this.RefreshRoomListView();
}
@@ -582,6 +571,10 @@
{
//浠庡師鏉ョ殑鎴块棿绉婚櫎璁惧
this.DeleteDevice(device);
+ //绉婚櫎鎴戠殑鍠滅埍
+ this.DeleteLoveDevice(device);
+ //璁惧鏀瑰彉鎴块棿鐨勮瘽,涓婚〉闇�瑕侀噸鏂板埛鏂�
+ UserView.UserPage.Instance.RefreshForm = true;
return;
}
//鎴块棿鏄惁淇敼
@@ -589,8 +582,8 @@
{
return;
}
- //浠庡師鏉ョ殑鎴块棿绉婚櫎璁惧
- this.DeleteDevice(device);
+ //浠庡師鏉ョ殑鎴块棿绉婚櫎璁惧,杩欓噷涓嶅垹闄ょ湡瀹炶澶囩殑鎴块棿
+ this.DeleteDevice(device, false);
//娣诲姞鍒版柊鐨勬埧闂�
var room = this.GetRoomById(roomId);
@@ -598,6 +591,8 @@
{
this.AddDevice(room, device, saveRealRoom);
}
+ //璁惧鏀瑰彉鎴块棿鐨勮瘽,涓婚〉闇�瑕侀噸鏂板埛鏂�
+ UserView.UserPage.Instance.RefreshForm = true;
}
/// <summary>
@@ -627,7 +622,7 @@
{
return i_room.Name;
}
- var floorName = Config.Instance.Home.GetFloorNameById(i_room.FloorId);
+ var floorName = HdlResidenceLogic.Current.GetFloorNameById(i_room.FloorId);
if (floorName == null)
{
return i_room.Name;
@@ -701,12 +696,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)
@@ -721,7 +724,7 @@
HdlAutoBackupLogic.AddOrEditorFile(room.FileName);
//閫掑綊锛氬垹闄ゆ帀浠ュ墠鐨勬棫鏁版嵁瀵艰嚧鐨勫涓埧闂寸殑闂
- this.DeleteDevice(device);
+ this.DeleteDevice(device, deleteReal);
}
/// <summary>
@@ -921,7 +924,7 @@
#region 鈻� 妤煎眰鍜屾埧闂撮『搴忕浉鍏砡________________
/// <summary>
- /// 鏍规嵁妤煎眰鐨勪富閿幏鍙栨帓搴忓悗鐨勬埧闂村垪琛�(鏀寔鏃犳ゼ灞傛ā寮�)
+ /// 鏍规嵁妤煎眰鐨勪富閿幏鍙栨帓搴忓悗鐨勬埧闂村垪琛�(鏀寔鏃犳ゼ灞傛ā寮�,涓嶈幏鍙栨敹钘忔埧闂�)
/// </summary>
/// <param name="i_floorKeys">妤煎眰鐨勪富閿�</param>
/// <param name="getShard">鍒嗕韩鐨勬埧闂存槸鍚︿篃鑾峰彇</param>
--
Gitblit v1.8.0