using System; using System.Collections.Generic; using Shared.SimpleControl; namespace Shared { [System.Serializable] public class UserConfig { static string configFile = "UserConfig"; static UserConfig instance; public static UserConfig Instance { get { if (instance == null) { try { var userConfigBytes = IO.FileUtils.ReadFile (configFile); var userConfigString = CommonPage.MyEncodingUTF8.GetString (userConfigBytes); UserConfig temp = null; if (userConfigString != null) { temp = Newtonsoft.Json.JsonConvert.DeserializeObject (userConfigString); } if (temp == null) { instance = new UserConfig { }; instance.HideDeviceTypes.Add (SimpleControl.R.MyInternationalizationString.Projector); instance.HideDeviceTypes.Add (SimpleControl.R.MyInternationalizationString.DoorLock); instance.HideDeviceTypes.Add (SimpleControl.R.MyInternationalizationString.FreshAir); instance.HideDeviceTypes.Add (SimpleControl.R.MyInternationalizationString.Sensor); instance.HideDeviceTypes.Add (SimpleControl.R.MyInternationalizationString.Environmental); instance.HideDeviceTypes.Add (SimpleControl.R.MyInternationalizationString.MusicModel); instance.HideDeviceTypes.Add (SimpleControl.R.MyInternationalizationString.UniversalDevice); } else { instance = temp; } } catch{} } return instance; } } public int internetStatus = 2; byte [] GetUserConfigBytes () { return CommonPage.MyEncodingUTF8.GetBytes (Newtonsoft.Json.JsonConvert.SerializeObject (this)); } public void RefreshUserConfig () { instance = null; } public void SaveUserConfig () { IO.FileUtils.WriteFileByBytes (configFile, GetUserConfigBytes ()); } //public void RefeshUserConfig() //{ //} /// /// 存放不用调光功能的调光设备 /// public List UnEnableDimmingLight = new List (); /// /// 插座开关列表 /// public List SocketList = new List (); /// /// 手机appID /// public string tokenID = string.Empty; /// /// 手机别名 /// public string phoneName = string.Empty; /// /// 用户界面进入时是否显示的是全局场景界面 /// public bool SceneOfGloba = false; /// /// 保存远程连接的网络设备文件名 /// public string RemoteModeFile = string.Empty; /// /// 是否展开房间灯光列表 /// public bool ShowRoomLightList = true; /// /// 是否展开房间窗帘列表 /// public bool ShowRoomCurtainList = true; /// /// 隐藏没有场景的房间 /// public bool HideInvalidRoomScene = false; public List HideDeviceTypes = new List (); public Dictionary SkinVision = new Dictionary (); public Dictionary DowlaodSkinVision = new Dictionary (); /// /// 当前使用的皮肤 /// public string CurrentSkinName { get { string skinPath = "Phone"; if (SkinCode == 0) { skinPath = "Phone"; } else if (SkinCode == 1) { skinPath = "Phone2"; } return skinPath; } } public string VersionNumber { get { return MainPage.CodeIDString; } } public string TipVersionBackup = string.Empty; /// /// 安防密码 /// public string ArmPW = "85521566"; /// /// 网关上网秘钥 /// public string GatewayNetKey = string.Empty; /// /// 是否显示场景列表 /// public bool ShowAlternativeScene = true; //门锁密码保存 public Dictionary RemoteDoorLockPasswordList = new Dictionary (); //public string CountryCode = "CN"; public int SkinCode = 1; public List HomeLists = new List (); //public RegionInfoRes CurrentRegion = new RegionInfoRes (); RegionInfoRes currentRegion = new RegionInfoRes (); public RegionInfoRes CurrentRegion { set { currentRegion = value; //2020-07-22 修复切换住宅,MAC不刷新问题 GatewayMAC = currentRegion.MAC; } get { if (currentRegion == null) { currentRegion = new RegionInfoRes (); } return currentRegion; } } public List GatewayList = new List (); public List GatewayMACList { get { List macList = new List (); foreach (var mac in GatewayList) { macList.Add (mac.MAC); } return macList; } } public string GatewayMAC = ""; public List RometoUserInfoKeys = new List (); //public static List LocalFiles = IO.FileUtils.ReadFiles (); } }