using Shared.Phone.UserCenter;
using System;
using System.Collections.Generic;
using System.Text;
using ZigBee.Device;
using System.Linq;
namespace Shared.Common
{
///
/// 房间对象
///
[System.Serializable]
public class Room
{
#region ■ 变量声明___________________________
///
/// 是否是喜爱房间
///
[Newtonsoft.Json.JsonIgnore]
public bool IsLove
{
get
{
return Id == "Favorite";
}
}
///
/// 房间文件
///
[Newtonsoft.Json.JsonIgnore]
public string FileName
{
get
{
return $"Room_{Id}.json";
}
}
///
/// 房间id--使用guid
///
public string Id = Guid.NewGuid().ToString();
///
/// 房间名
///
public string Name = string.Empty;
///
/// 房间背景图
///
public string BackgroundImage = string.Empty;
///
/// 图片来源 0--本地图库 1--拍照 2--系统图库
///
public int BackgroundImageType = 0;
///
/// 温度传感器(设备主键)
///
public string TemperatrueDevice = string.Empty;
///
/// 湿度传感器(设备主键)
///
public string HumidityDevice = string.Empty;
///
/// 是否是分享过来的房间
/// 注:分享过来的房间不能删除,不能编辑该房间,不能对设备(功能)、场景进行增删改
///
public bool IsSharedRoom = false;
///
/// 楼层Id
///
public string FloorId = string.Empty;
///
/// 房间里所有的设备列表(设备的主键:mac地址_端口)
///
public List ListDevice = new List();
///
///场景列表(场景的ID)
///
public List ListSceneId = new List();
#endregion
#region ■ 保存_______________________________
///
/// 保存
///
/// 是否自动备份,默认true
public void Save(bool autoBackup = true)
{
//保存房间信息
Global.WriteFileByBytesByHomeId(FileName, Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this)));
if (autoBackup == true)
{
HdlAutoBackupLogic.AddOrEditorFile(FileName);
}
}
#endregion
}
}