| | |
| | | {
|
| | | if (m_CurrentRoom == null && Lists.Count > 0)
|
| | | {
|
| | | if (m_CurrentRoom == null) { m_CurrentRoom = Lists[0]; }
|
| | | return Lists[0];
|
| | | }
|
| | | return m_CurrentRoom;
|
| | |
| | | var sceneList = new List<SceneUI> { }; |
| | | foreach (var r in Shared.Common.Room.Lists) |
| | | { |
| | | if(r.IsLove) |
| | | { |
| | | continue; |
| | | } |
| | | if (r.SceneUIList.Count == 0) |
| | | { |
| | | continue; |
| | |
| | | var pathList = new List<string> { }; |
| | | foreach (var r in Lists) |
| | | { |
| | | if(r.IsLove) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | if (r.SceneUIFilePathList.Count == 0) |
| | | { |
| | | continue; |
| | |
| | | for (int i = 0; i < Lists.Count; i++) |
| | | {
|
| | | var room = Lists[i]; |
| | | if (room.IsSharedRoom) |
| | | if (room.IsSharedRoom || room.IsLove) |
| | | { |
| | | continue; |
| | | } |
| | |
| | | |
| | | } |
| | | } |
| | | |
| | | Config.Instance.Home.InitFloor(); |
| | | |
| | | CurrentRoom.RefreshRoomListView(); |
| | |
| | | /// </summary> |
| | | public static void RefreshAllRoomByLocation()
|
| | | {
|
| | | Lists.Clear();
|
| | | var homeTemp = Config.Instance.Home;
|
| | | homeTemp.RoomFilePathList.Clear();
|
| | |
|
| | |
| | | if (listFile.Contains(fRoom) == true)
|
| | | {
|
| | | listFile.Remove(fRoom);
|
| | | homeTemp.AddRoomListFilePath(fRoom);
|
| | | homeTemp.RoomFilePathList.Add(fRoom);
|
| | | }
|
| | |
|
| | | var listRoomFile = new List<string>();
|
| | |
| | | {
|
| | | if (fileName.StartsWith("Room_"))
|
| | | {
|
| | | homeTemp.AddRoomListFilePath(fileName);
|
| | | homeTemp.RoomFilePathList.Add(fileName);
|
| | | listRoomFile.Add(fileName);
|
| | | }
|
| | | }
|
| | |
| | | /// <returns></returns> |
| | | public List<Room> GetRoomsByFloorId(string id) |
| | | { |
| | | if (Config.Instance.Home.FloorDics.Count == 0) |
| | | try |
| | | { |
| | | return Lists; |
| | | if (Lists == null || Lists.Count == 0 || Lists.Count == 1) |
| | | { |
| | | return null; |
| | | } |
| | | if (Config.Instance.Home.FloorDics.Count == 0) |
| | | { |
| | | return Lists; |
| | | } |
| | | return Lists.FindAll((obj) => obj.FloorId == id); |
| | | } |
| | | return Lists.FindAll((obj) => obj.FloorId == id); |
| | | catch(Exception ex) |
| | | { |
| | | System.Console.WriteLine(ex.Message); |
| | | return null; |
| | | } |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 获取当前楼层的房间名称 |
| | |
| | | //保存到本地 |
| | | Save(); |
| | | |
| | | //添加自动备份 |
| | | HdlAutoBackupLogic.AddOrEditorFile(FileName); |
| | | if (saveRealRoom == true && LocalDevice.Current.GetDevicesCountByMac(device.DeviceAddr) == 1)
|
| | | {
|
| | | //如果只有一个回路,则修改真实物理设备的房间
|
| | |
| | | /// <param name="scene">Scene.</param> |
| | | public void AddScene(SceneUI scene) |
| | | { |
| | | //var sceneUI = new SceneUI |
| | | //{ |
| | | // Name = scene.Name, |
| | | // Id = scene.Id, |
| | | // IconPath = scene.IconPath, |
| | | // IconPathType = scene.IconPathType, |
| | | // AddSceneMemberDataList = scene.AddSceneMemberDataList |
| | | //}; |
| | | SceneUIList.Add(scene); |
| | | SceneUIFilePathList.Add(scene.FileName); |
| | | scene.Save(); |
| | | Save(); |
| | | } |
| | | |
| | |
| | | /// <param name="scene"></param> |
| | | public void DeleteScene(SceneUI scene) |
| | | { |
| | | //scene.IsCollected = false; |
| | | scene.Save(); |
| | | SceneUIList.Remove(scene); |
| | | SceneUIFilePathList.Remove(scene.FileName); |
| | | var curScene = SceneUIList.Find((obj) => obj.Id == scene.Id); |
| | | if (curScene == null) |
| | | { |
| | | return; |
| | | } |
| | | SceneUIList.Remove(curScene); |
| | | SceneUIFilePathList.Remove(curScene.FileName); |
| | | Save(); |
| | | } |
| | | |
| | |
| | | { |
| | | sceneUI.AddSceneMemberDataList = addCommons; |
| | | sceneUI.Save(); |
| | | if (IsLove == false) |
| | | { |
| | | var curScene = Common.Room.CurrentRoom.GetLoveRoom().SceneUIList.Find((obj) => obj.Id == sceneUI.Id); |
| | | if (curScene != null) |
| | | { |
| | | curScene.Name = sceneUI.Name; |
| | | curScene.IconPath = sceneUI.IconPath; |
| | | curScene.IconPathType = sceneUI.IconPathType; |
| | | curScene.AddSceneMemberDataList = sceneUI.AddSceneMemberDataList; |
| | | curScene.SceneDelayTime = sceneUI.SceneDelayTime; |
| | | curScene.Save(false); |
| | | Common.Room.CurrentRoom.GetLoveRoom().Save(); |
| | | } |
| | | } |
| | | return 1; |
| | | } |
| | | return 0; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 设置、同步延时时间 |
| | | /// </summary> |
| | | /// <param name="scene"></param> |
| | | public void ModifySceneDelayTime(SceneUI scene) |
| | | { |
| | | if (IsLove) |
| | | { |
| | | foreach (var r in Lists) |
| | | { |
| | | if (r.IsLove || r.SceneUIList.Count == 0) |
| | | { |
| | | continue; |
| | | } |
| | | foreach (var sce in r.SceneUIList) |
| | | { |
| | | if (sce.Id == scene.Id) |
| | | { |
| | | sce.SceneDelayTime = scene.SceneDelayTime; |
| | | sce.Save(false); |
| | | r.Save(false); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | var curScene = Common.Room.CurrentRoom.GetLoveRoom().SceneUIList.Find((obj) => obj.Id == scene.Id); |
| | | if (curScene != null) |
| | | { |
| | | curScene.SceneDelayTime = scene.SceneDelayTime; |
| | | curScene.Save(false); |
| | | Common.Room.CurrentRoom.GetLoveRoom().Save(false); |
| | | } |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | |
| | | { |
| | | return; |
| | | } |
| | | SceneUIList.Remove(sceneUI); |
| | | SceneUIFilePathList.Remove(sceneUI.FileName); |
| | | Save(); |
| | | |
| | | if (sceneUI.IconPathType == 1 || sceneUI.IconPathType == 2) |
| | | { |
| | | if (Global.IsExistsByHomeId(sceneUI.IconPath)) |
| | | { |
| | | Global.DeleteFilebyHomeId(sceneUI.IconPath); |
| | | HdlAutoBackupLogic.DeleteFile(sceneUI.IconPath); |
| | | } |
| | | } |
| | | |
| | | if (IsLove == false) |
| | | { |
| | | if (CurrentRoom.GetLoveRoom().SceneUIList.Find((obj) => obj.Id == sceneUI.Id) != null) |
| | |
| | | CurrentRoom.GetLoveRoom().DeleteScene(sceneUI); |
| | | } |
| | | } |
| | | |
| | | SceneUIList.Remove(sceneUI); |
| | | SceneUIFilePathList.Remove(sceneUI.FileName); |
| | | Save(); |
| | | |
| | | Global.DeleteFilebyHomeId(sceneUI.FileName); |
| | | HdlAutoBackupLogic.DeleteFile(sceneUI.FileName); |
| | | } |