From 1f65fe366062b3f2cda6b03e1849afce6d2646f8 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期四, 17 十月 2019 13:47:37 +0800
Subject: [PATCH] 2019.10.17
---
ZigbeeApp/Shared/Common/Room.cs | 106 +++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 95 insertions(+), 11 deletions(-)
diff --git a/ZigbeeApp/Shared/Common/Room.cs b/ZigbeeApp/Shared/Common/Room.cs
index f0492c4..64e0190 100644
--- a/ZigbeeApp/Shared/Common/Room.cs
+++ b/ZigbeeApp/Shared/Common/Room.cs
@@ -36,7 +36,7 @@
/// 妤煎眰Id
/// 鏂板鏃朵娇鐢℅uid
/// </summary>
- public string FloorId = "Floor1";
+ public string FloorId = string.Empty;
/// <summary>
/// 妤煎眰鍚嶇О
/// </summary>
@@ -134,7 +134,7 @@
{
return new List<string> { };
}
- return GetLoveRoom().DeviceUIFilePathList;
+ return CurrentRoom.GetLoveRoom().DeviceUIFilePathList;
}
}
@@ -349,7 +349,7 @@
/// 鑾峰彇鍠滅埍鎴块棿
/// </summary>
/// <returns></returns>
- public static Room GetLoveRoom()
+ public Room GetLoveRoom()
{
return CurrentRoom.GetRoomById(LoveRoomId);
}
@@ -462,7 +462,6 @@
return Lists.Find((obj) => obj.Id == roomId);
}
-
/// <summary>
/// 鏍规嵁鎴块棿鍚嶅瓧锛岃幏鍙栨埧闂村璞�
/// </summary>
@@ -544,18 +543,53 @@
}
/// <summary>
- /// 鑾峰彇澶氫釜鎴块棿鐨勮繛鎺ヨ捣鏉ョ殑鍚嶅瓧
+ /// 鑾峰彇褰撳墠妤煎眰鐨勬埧闂�
/// </summary>
- /// <param name="listName"></param>
+ /// <param name="id"></param>
/// <returns></returns>
- public string GetRoomName(List<string> listName)
+ public List<Room> GetRoomsByFloorId(string id)
{
- if (listName.Count == 0)
+ return Lists.FindAll((obj) => obj.FloorId==id);
+ }
+ /// <summary>
+ /// 鑾峰彇褰撳墠妤煎眰鐨勬埧闂村悕绉�
+ /// </summary>
+ /// <param name="id"></param>
+ /// <returns></returns>
+ public List<string> GetRoomNamesByFloorId(string id)
+ {
+ List<string> names = new List<string> { };
+ foreach(var r in Lists)
{
- //鏈垎閰嶅尯鍩�
- return Language.StringByID(R.MyInternationalizationString.uDeviceNotAssignedRoom);
+ if(r.FloorId==id)
+ {
+ names.Add(r.Name);
+ }
}
- return string.Join(",", listName);
+ return names;
+ }
+
+ /// <summary>
+ /// 鑾峰彇褰撳墠妤煎眰鐨勬埧闂�(鎷兼帴浜嗐�愬父鐢ㄣ�戝湪绗竴浣�)
+ /// </summary>
+ /// <param name="id"></param>
+ /// <returns></returns>
+ public List<Room> GetRoomsByFloorIdAppendLoveRoom(string id)
+ {
+ var r= Lists.FindAll((obj) => obj.FloorId == id);
+ r.Insert(0, GetLoveRoom());
+ return r;
+ }
+
+ /// <summary>
+ /// 鑾峰彇褰撳墠妤煎眰鐨勬埧闂�(鎷兼帴浜嗐�愬父鐢ㄣ�戝湪绗竴浣�)
+ /// </summary>
+ /// <returns></returns>
+ public List<Room> GetRoomsByCurrentFloorIdAppendLoveRoom()
+ {
+ var r = Lists.FindAll((obj) => obj.FloorId == Config.Instance.Home.CurrentFloorId);
+ r.Insert(0, GetLoveRoom());
+ return r;
}
#endregion
@@ -864,6 +898,56 @@
return Common.LocalDevice.Current.SortDevice(listDevice);
}
+ /// <summary>
+ /// 鑾峰彇鎴块棿璁惧绫诲瀷
+ /// </summary>
+ /// <param name="room"></param>
+ /// <returns></returns>
+ public static List<DeviceType> GetdeviceTypes(Room room)
+ {
+ List<DeviceType> typeList = new List<DeviceType> { };
+ foreach (var deviceUI in room.DeviceUIList)
+ {
+ if (deviceUI == null || deviceUI.CommonDevice == null)
+ {
+ continue;
+ }
+ if (!typeList.Contains(deviceUI.CommonDevice.Type))
+ {
+ typeList.Add(deviceUI.CommonDevice.Type);
+ }
+ }
+ return typeList;
+ }
+
+ /// <summary>
+ /// 鑾峰彇璇ョ被鍨嬬殑璁惧
+ /// </summary>
+ /// <param name="room"></param>
+ /// <param name="deviceType"></param>
+ /// <returns></returns>
+ public static List<DeviceUI> GetDeviceUIs(Room room ,DeviceType deviceType)
+ {
+ List<DeviceUI> typeList = new List<DeviceUI> { };
+ foreach (var deviceUI in room.DeviceUIList)
+ {
+ if (deviceUI == null || deviceUI.CommonDevice == null)
+ {
+ continue;
+ }
+ if(deviceUI.CommonDevice.Type!=deviceType)
+ {
+ continue;
+ }
+ if (!typeList.Contains(deviceUI))
+ {
+ typeList.Add(deviceUI);
+ }
+ }
+ return typeList;
+ }
+
+
#endregion
#region 鈼� 娣诲姞鍦烘櫙_________________________
--
Gitblit v1.8.0