From 7e863a33397f317ffc3ffd9288496d0e4f16aa66 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 12 十二月 2019 14:58:20 +0800 Subject: [PATCH] 合并了新代码 --- ZigbeeApp/Shared/Common/Room.cs | 44 +++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 41 insertions(+), 3 deletions(-) diff --git a/ZigbeeApp/Shared/Common/Room.cs b/ZigbeeApp/Shared/Common/Room.cs index b11598c..65f8a03 100755 --- a/ZigbeeApp/Shared/Common/Room.cs +++ b/ZigbeeApp/Shared/Common/Room.cs @@ -323,15 +323,45 @@ homeTemp.AddRoomListFilePath(fRoom); } + var listRoomFile = new List<string>(); foreach (string fileName in listFile) { if (fileName.StartsWith("Room_")) { homeTemp.AddRoomListFilePath(fileName); + listRoomFile.Add(fileName); } } + //妫�娴嬫ゼ灞傛暟鎹殑鍚堟硶鎬� + CheckFloorData(listRoomFile); + homeTemp.Save(false); InitAllRoom(); + } + + /// <summary> + /// 妫�娴嬫ゼ灞傛暟鎹殑鍚堟硶鎬� + /// </summary> + /// <param name="listRoomFile"></param> + private static void CheckFloorData(List<string> listRoomFile) + { + for (int i = 0; i < listRoomFile.Count; i++) + { + try + { + var byteData = Global.ReadFileByHomeId(listRoomFile[i]); + string valueData = System.Text.Encoding.UTF8.GetString(byteData); + var roomTemp = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.Room>(valueData); + + //妫�娴嬪涓墜鏈烘潵鍥炲垱寤�,鐒跺悗鍙堝垹闄や箣鍚�,妤煎眰鏁版嵁涓嶈兘淇濊瘉100%鍚屾鐨勯棶棰� + if (roomTemp.FloorId != string.Empty && Config.Instance.Home.FloorDics.ContainsKey(roomTemp.FloorId) == false) + { + //鏈煡妤煎眰 + Config.Instance.Home.FloorDics[roomTemp.FloorId] = Language.StringByID(R.MyInternationalizationString.uUnKnownFloor); + } + } + catch (Exception ex) { HdlLogLogic.Current.WriteLog(ex); } + } } #endregion @@ -591,6 +621,10 @@ /// <returns></returns> public List<Room> GetRoomsByFloorId(string id) { + if (Config.Instance.Home.FloorDics.Count == 0) + { + return Lists; + } return Lists.FindAll((obj) => obj.FloorId == id); } /// <summary> @@ -598,12 +632,12 @@ /// </summary> /// <param name="id"></param> /// <returns></returns> - public List<string> GetRoomNamesByFloorId(string id) + public List<string> GetRoomNamesByFloorId(string id) { List<string> names = new List<string> { }; - foreach(var r in Lists) + foreach (var r in Lists) { - if(r.FloorId==id) + if (r.FloorId == id) { names.Add(r.Name); } @@ -618,6 +652,10 @@ /// <returns></returns> public List<Room> GetRoomsByFloorIdAppendLoveRoom(string id) { + if (Config.Instance.Home.FloorDics.Count == 0) + { + return Lists; + } var r= Lists.FindAll((obj) => obj.FloorId == id); r.Insert(0, GetLoveRoom()); return r; -- Gitblit v1.8.0