From 2ae36ddb40d28c62b64a2fdd4c3033e7d65d5cfb Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期四, 04 三月 2021 15:20:29 +0800 Subject: [PATCH] 2021-0304-1 --- HDL_ON/Entity/FunctionList.cs | 353 +++------------------------------------------------------- 1 files changed, 20 insertions(+), 333 deletions(-) diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs index 0395d89..845ab49 100644 --- a/HDL_ON/Entity/FunctionList.cs +++ b/HDL_ON/Entity/FunctionList.cs @@ -20,7 +20,7 @@ { _FunctionList = new FunctionList(); #region 鎭㈠鏁版嵁 - var filePathList = Common.FileUtlis.Files.ReadFiles(); + var filePathList = FileUtlis.Files.ReadFiles(); foreach (var filePath in filePathList) { _FunctionList.IniFunctionList(filePath); @@ -30,6 +30,14 @@ return _FunctionList; } } + /// <summary> + /// 鍔熻兘鍒楄〃 + /// </summary> + public List<Function> Functions = new List<Function>(); + + + + /// <summary> /// 绌鸿皟鍒楄〃 @@ -122,6 +130,10 @@ /// 鍑夐湼鍒楄〃 /// </summary> public List<Function> clothesHangerList = new List<Function>(); + /// <summary> + /// 绾㈠瀹濆垪琛� + /// </summary> + public List<Function> irModule = new List<Function>(); #endregion /// <summary> @@ -134,17 +146,6 @@ public List<Sensor> sensorsArm = new List<Sensor>(); public List<Scene> scenes = new List<Scene>(); - /// <summary> - /// 鍦烘櫙鍒楄〃 - /// </summary> - //public List<Scene> Scenes - //{ - // get - // { - // List.scenes = List.scenes.OrderByDescending(o => o.createTime).ToList(); - // return List.scenes; - // } - //} /// <summary> /// 鍔熻兘鍒楄〃 /// </summary> @@ -256,6 +257,11 @@ List.clothesHangerList.Add(ch); deviceFunctionList.Add(ch); break; + case SPK.IrModule: + var irm = Newtonsoft.Json.JsonConvert.DeserializeObject<Function>(functionDataString); + List.irModule.Add(irm); + deviceFunctionList.Add(irm); + break; } } } @@ -351,139 +357,6 @@ List.scenes = new List<Scene>(); List.deviceFunctionList = new List<Function>(); _FunctionList = null; - } - - /// <summary> - /// 鎺ユ敹bus杞欢涓婁紶鐨勫姛鑳� - /// tcp鏂瑰紡 - /// </summary> - /// <param name="sidObj"></param> - public void AddDeviceFunction(Function sidObj0) - { - switch (sidObj0.spk) - { - case SPK.AcStandard: - var sidObj = Newtonsoft.Json.JsonConvert.DeserializeObject<AC>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); - List.aCs.Add(sidObj); - sidObj.SaveFunctionFile(); - break; - case SPK.FloorHeatStandard: - var sidObj1 = Newtonsoft.Json.JsonConvert.DeserializeObject<FloorHeating>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); - List.floorHeatings.Add(sidObj1); - sidObj1.SaveFunctionFile(); - break; - case SPK.LightDimming: - case SPK.LightRGB: - case SPK.LightSwitch: - var sidObj2 = Newtonsoft.Json.JsonConvert.DeserializeObject<Light>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); - List.lights.Add(sidObj2); - sidObj2.SaveFunctionFile(); - break; - case SPK.CurtainSwitch: - case SPK.CurtainRoller: - case SPK.CurtainTrietex: - var sidObj3 = Newtonsoft.Json.JsonConvert.DeserializeObject<Curtain>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); - List.curtains.Add(sidObj3 ); - sidObj3.SaveFunctionFile(); - break; - case SPK.ElectricTV: - var sidObj4 = Newtonsoft.Json.JsonConvert.DeserializeObject<TV>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); - List.tVs.Add(sidObj4); - sidObj4.SaveFunctionFile(); - break; - case SPK.ElectricSocket: - var sidObj5 = Newtonsoft.Json.JsonConvert.DeserializeObject<SwitchSocket>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); - List.switchSockets.Add(sidObj5); - sidObj5.SaveFunctionFile(); - break; - case SPK.ElectricFan: - var sidObj6 = Newtonsoft.Json.JsonConvert.DeserializeObject<Fan>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); - List.fans.Add(sidObj6); - sidObj6.SaveFunctionFile(); - break; - case SPK.SensorCO2: - case SPK.SensorTVOC: - case SPK.SensorPm25: - case SPK.SensorTemperature: - case SPK.SensorHumidity: - var sidObj7 = Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); - List.sensorsEnvironmentalScience.Add(sidObj7); - sidObj7.SaveFunctionFile(); - break; - } - } - /// <summary> - /// 鎺ユ敹bus杞欢涓婁紶鐨勫姛鑳� - /// http udp - /// </summary> - /// <param name="obj"></param> - public void AddFunction(object obj) - { - var f = Newtonsoft.Json.JsonConvert.DeserializeObject<Function>(obj.ToString()); - if (f == null) - return; - switch (f.Spk_Prefix) - { - case FunctionCategory.AC: - switch (f.spk) - { - case SPK.AcStandard: - List.aCs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<AC>(obj.ToString())); - break; - } - break; - case FunctionCategory.FloorHeat: - switch (f.spk) - { - case SPK.FloorHeatStandard: - List.floorHeatings.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<FloorHeating>(obj.ToString())); - break; - } - break; - case FunctionCategory.Light: - List.lights.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Light>(obj.ToString())); - break; - case FunctionCategory.Curtain: - List.curtains.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Curtain>(obj.ToString())); - break; - case FunctionCategory.Electric: - switch(f.spk) - { - case SPK.ElectricTV: - List.electricals.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<TV>(obj.ToString())); - break; - case SPK.ElectricSocket: - List.electricals.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<SwitchSocket>(obj.ToString())); - break; - case SPK.ElectricFan: - List.electricals.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Fan>(obj.ToString())); - break; - } - break; - case FunctionCategory.Sensor: - switch (f.spk) - { - case SPK.SensorTVOC: - case SPK.SensorCO2: - case SPK.SensorPm25: - case SPK.SensorHumidity: - case SPK.SensorTemperature: - List.sensorsEnvironmentalScience.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(obj.ToString())); - break; - case SPK.SensorWater: - case SPK.SensorSmoke: - case SPK.SensorGas: - case SPK.SensorDryContact: - case SPK.SensorShanLan: - case SPK.SensorDuiShe: - case SPK.SensorPir: - case SPK.SensorDoorWindow: - case SPK.SensoruUtrasonic: - List.sensorsArm.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(obj.ToString())); - break; - } - break; - } } /// <summary> @@ -762,195 +635,9 @@ #endregion - #region 鍔熻兘鏂囨湰鐩稿叧 - /// <summary> - /// 灞炴�у悕绉版樉绀烘枃鏈� - /// 涓嫳鏂囨樉绀� - /// </summary> - public string GetNameText(string key) - { - string text = ""; - switch (key) - { - case FunctionAttributeKey.OnOff: - text = Language.StringByID(StringId.OnOff); - break; - case FunctionAttributeKey.Brightness: - text = Language.StringByID(StringId.Brightness); - break; - case FunctionAttributeKey.RGB: - text = Language.StringByID(StringId.ColorValue); - break; - case FunctionAttributeKey.Mode: - text = Language.StringByID(StringId.Mode); - break; - case FunctionAttributeKey.FanSpeed: - text = Language.StringByID(StringId.FanSpeed); - break; - case FunctionAttributeKey.SetTemp: - text = Language.StringByID(StringId.Temp); - break; - case FunctionAttributeKey.IndoorTemp: - text = Language.StringByID(StringId.IndoorTemp); - break; - case FunctionAttributeKey.Delay: - text = Language.StringByID(StringId.Delay); - break; - case FunctionAttributeKey.CCT: - text = "CCT"; - break; - case FunctionAttributeKey.Percent: - text = Language.StringByID(StringId.PercentAdjustment); - break; - case FunctionAttributeKey.FadeTime: - text = Language.StringByID(StringId.FadeSpeed); - break; - } - return text; - } + #region + - /// <summary> - /// 灞炴�у�煎崟浣� - /// </summary> - public string GetUintString(string key) - { - var us = ""; - switch (key) - { - case FunctionAttributeKey.SetTemp: - case FunctionAttributeKey.IndoorTemp: - us = "掳C"; - break; - case FunctionAttributeKey.Percent: - case FunctionAttributeKey.Brightness: - us = "%"; - break; - } - return us; - } - - /// <summary> - /// 鑾峰彇鎸囧畾灞炴�х殑鏄剧ず鏂囨湰 - /// 涓嫳鏂囨樉绀� - /// </summary> - public string GetValueText(string key, string value) - { - string text = ""; - switch (key) - { - case FunctionAttributeKey.OnOff: - text = value == "on" ? Language.StringByID(StringId.On) : Language.StringByID(StringId.OFF); - break; - case FunctionAttributeKey.SetTemp: - case FunctionAttributeKey.IndoorTemp: - case FunctionAttributeKey.Brightness: - case FunctionAttributeKey.Percent: - if (value == "") - { - value = "0"; - } - text = value; - break; - case FunctionAttributeKey.Mode: - switch (value) - { - //----绌鸿皟 - case "auto": - text = Language.StringByID(StringId.Auto); - break; - case "cool": - text = Language.StringByID(StringId.Cool); - break; - case "heat": - text = Language.StringByID(StringId.Heat); - break; - case "dry": - text = Language.StringByID(StringId.Dry); - break; - case "fan": - text = Language.StringByID(StringId.AirSupply); - break; - //-----鍦扮儹 - case "day": - text = Language.StringByID(StringId.Day); - break; - case "night": - text = Language.StringByID(StringId.Night); - break; - case "away": - text = Language.StringByID(StringId.Away); - break; - case "normal": - text = Language.StringByID(StringId.Normal); - break; - case "timer": - text = Language.StringByID(StringId.Timer); - break; - } - break; - case FunctionAttributeKey.FanSpeed: - switch (value) - { - case "high": - text = Language.StringByID(StringId.HighWindSpeed); - break; - case "medium": - text = Language.StringByID(StringId.MiddleWindSpeed); - break; - case "low": - text = Language.StringByID(StringId.LowWindSpeed); - break; - case "auto": - text = Language.StringByID(StringId.Auto); - break; - default: - text = "low"; - break; - } - break; - case "high": - text = Language.StringByID(StringId.HighWindSpeed); - break; - case "medium": - text = Language.StringByID(StringId.MiddleWindSpeed); - break; - case "low": - text = Language.StringByID(StringId.LowWindSpeed); - break; - case "auto": - text = Language.StringByID(StringId.Auto); - break; - } - return text; - } - - - /// <summary> - /// 寤舵椂鏄剧ず鐨勬枃鏈� - /// </summary> - public string GetDelayText(string delay) - { - string text = ""; - switch (delay) - { - case "0": - text = Language.StringByID(StringId.NoDelay); - break; - case "30": - text = "30s"; - break; - case "60": - text = "1min"; - break; - case "120": - text = "2min"; - break; - case "300": - text = "5min"; - break; - } - return text; - } #endregion } -- Gitblit v1.8.0