WJC
2019-11-04 e5f993f52e09eb46878baced83bb8492f147d41c
ZigbeeApp/Shared/Common/House.cs
@@ -54,6 +54,17 @@
        public List<string> RoomFilePathList = new List<string> { };
        /// <summary>
        /// 楼层字典
        /// key:FloorId
        /// value:FloorName
        /// </summary>
        public Dictionary<string,string> FloorDics = new Dictionary<string,string> { };
        /// <summary>
        /// 当前楼层
        /// </summary>
        public string CurrentFloorId;
        /// <summary>
        /// 全局场景路径列表---备用
        /// </summary>
        public List<string> SceneFilePathList = new List<string> { };
@@ -170,6 +181,7 @@
            }
            home.Name = houseName;
            home.Save();
            Config.Instance.Save();
        }
        #endregion
@@ -258,6 +270,11 @@
                    }
                    else
                    {
                        if (Config.Instance.HomeId == string.Empty && responseDataObj.PageData.Count > 0)
                        {
                            //赋一个初始值
                            Config.Instance.HomeId = responseDataObj.PageData[0].Id;
                        }
                        foreach (var residence in responseDataObj.PageData)
                        {
                            Config.Instance.HomeFilePathList.Add($"House_{residence.Id}.json");
@@ -290,6 +307,11 @@
                            Config.Instance.HomeId = GetHouseIdByFilePath(Config.Instance.HomeFilePathList[0]);
                        }
                        Config.Instance.Save();
                        //检测住宅对象
                        if (Config.Instance.Home.Id == string.Empty)
                        {
                            Config.Instance.Home = House.GetHouseByHouseId(Config.Instance.HomeId);
                        }
                    }
                }
            }
@@ -379,6 +401,44 @@
        #endregion
        #region ◆ 楼层____________________________
        /// <summary>
        /// GetCurrentFloorName
        /// </summary>
        /// <returns></returns>
        public string GetCurrentFloorName
        {
            get
            {
                return GetFloorNameById(CurrentFloorId);
            }
        }
        /// <summary>
        /// 获取楼层名称
        /// </summary>
        /// <param name="floorId"></param>
        /// <returns></returns>
        public string GetFloorNameById(string floorId)
        {
            if (Config.Instance.Home.FloorDics.Count == 0)
            {
                return null;
            }
            foreach (var floor in Config.Instance.Home.FloorDics)
            {
                if (floorId == floor.Key)
                {
                    return floor.Value;
                }
            }
            return null;
        }
        #endregion
        #region ◆ 房间____________________________
        #region ◆ 添加房间路径_________________________
@@ -439,6 +499,10 @@
            }
            path = System.IO.Path.Combine(path, FileName);
            Shared.IO.FileUtils.WriteFileByBytes(path, System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this)));
            if (autoBackup == true && Id == Config.Instance.HomeId)
            {
                HdlAutoBackupLogic.AddOrEditorFile(FileName);
            }
        }
        #endregion
    }