From 23fb45dd846ed8b62304c408c6bbe64265d4ac8b Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期五, 20 十二月 2019 18:57:16 +0800 Subject: [PATCH] 代码合并 --- ZigbeeApp/Shared/Common/Room.cs | 140 ++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 121 insertions(+), 19 deletions(-) diff --git a/ZigbeeApp/Shared/Common/Room.cs b/ZigbeeApp/Shared/Common/Room.cs index 9f1c2a6..c6005c0 100755 --- a/ZigbeeApp/Shared/Common/Room.cs +++ b/ZigbeeApp/Shared/Common/Room.cs @@ -69,12 +69,20 @@ /// <summary> /// 娓╁害浼犳劅鍣�(璁惧涓婚敭) - /// </summary> + /// </summary> public string TemperatrueDevice = string.Empty; /// <summary> /// 婀垮害浼犳劅鍣�(璁惧涓婚敭) /// </summary> public string HumidityDevice = string.Empty; + /// <summary> + /// 娓╁害 + /// </summary> + public double Temperatrue; + /// <summary> + /// 婀垮害 + /// </summary> + public double Humidity; /// <summary> /// 褰撳墠閫夋嫨鐨勬埧闂� @@ -201,6 +209,32 @@ return sceneList; } } + + /// <summary> + /// 鑾峰彇鎵�鏈夋埧闂寸殑鎵�鏈夊満鏅矾寰� + /// </summary> + /// <value>All room scene UIL ist.</value> + [Newtonsoft.Json.JsonIgnore] + public List<string> AllRoomSceneUIFilepathList + { + get + { + var pathList = new List<string> { }; + foreach (var r in Lists) + { + if (r.SceneUIFilePathList.Count == 0) + { + continue; + } + foreach (var path in r.SceneUIFilePathList) + { + pathList.Add(path); + } + } + return pathList; + } + } + /// <summary> /// 鍦烘櫙鍒楄〃---涓嶅啀搴忓垪鍖� /// </summary> @@ -978,35 +1012,34 @@ } /// <summary> - /// 鑾峰彇璇ユゼ灞傜殑鍦烘櫙 + /// 鑾峰彇鏈垎閰嶅尯鍩熻澶� /// </summary> - /// <param name="floorId"></param> /// <returns></returns> - public List<SceneUI> GetSceneUIsByFloorId(string floorId) + public List<DeviceUI> GetUnalloctedDeviceUIs() { - var rooms = GetRoomsByFloorId(floorId); - if (rooms == null) + List<DeviceUI> deviceUIs = new List<DeviceUI> { }; + var dList = AllRoomDeviceUIList; + var commonDeviceList = Common.LocalDevice.Current.listAllDevice; + + if (dList.Count == 0) { return null; } - var sceneList = new List<SceneUI> { }; - foreach (var r in rooms) + foreach (var device in commonDeviceList) { - if (r.SceneUIList.Count == 0) + if (dList.Find((obj) => obj.CommonDevice == device) == null) { - continue; - } - foreach (var sceneUI in r.SceneUIList) - { - if (sceneUI == null) - { - continue; - } - sceneList.Add(sceneUI); + deviceUIs.Add(Common.LocalDevice.Current.GetDeviceUI(device)); } } - return sceneList; + if (deviceUIs.Count == 0) + { + return null; + } + return deviceUIs; } + + //public List<DeviceUI> GetUnalloctedDeviceUITypes #endregion @@ -1266,6 +1299,7 @@ } return null; } + /// <summary> /// 鑾峰彇璇ユゼ灞傛墍鏈夊満鏅� /// </summary> @@ -1281,6 +1315,74 @@ } return sceneUIs; } + + /// <summary> + /// 鑾峰彇璇ユゼ灞傜殑鍦烘櫙 + /// </summary> + /// <param name="floorId"></param> + /// <returns></returns> + public List<SceneUI> GetSceneUIsByFloorId(string floorId) + { + var rooms = GetRoomsByFloorId(floorId); + if (rooms == null) + { + return null; + } + var sceneList = new List<SceneUI> { }; + foreach (var r in rooms) + { + if (r.SceneUIList.Count == 0) + { + continue; + } + foreach (var sceneUI in r.SceneUIList) + { + if (sceneUI == null) + { + continue; + } + sceneList.Add(sceneUI); + } + } + return sceneList; + } + + /// <summary> + /// 鑾峰彇鏈垎閰嶅尯鍩熷満鏅� + /// </summary> + /// <returns></returns> + public List<SceneUI> GetUnalloctedScenes() + { + List<SceneUI> sceneUIs = new List<SceneUI> { }; + var sList = AllRoomSceneUIFilepathList; + + List<string> sfile = new List<string> { }; + foreach (var path in Global.FileListByHomeId()) + { + if (path.StartsWith("Scene_", StringComparison.Ordinal)) + { + sfile.Add(path); + } + } + foreach (var path in sfile) + { + if (sList.Find((obj) => obj == path) == null) + { + var jsonInfo = Encoding.UTF8.GetString(Global.ReadFileByHomeId(path)); + var tempSceneUI = Newtonsoft.Json.JsonConvert.DeserializeObject<SceneUI>(jsonInfo); + if (tempSceneUI != null) + { + sceneUIs.Add(tempSceneUI); + } + } + } + if (sceneUIs.Count == 0) + { + return null; + } + return sceneUIs; + } + #endregion #region 鈼� 鍒锋柊鍦烘櫙_________________________ -- Gitblit v1.8.0