From 6a9ad7ec93218913a2ce3b898bb036f18f8f0da4 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 13 八月 2020 17:06:36 +0800 Subject: [PATCH] 20200813 --- HDL_ON/Entity/FunctionList.cs | 64 ++++++++++++++++++++++++++++++++ 1 files changed, 64 insertions(+), 0 deletions(-) diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs index 5fb48c5..4b0b5bb 100644 --- a/HDL_ON/Entity/FunctionList.cs +++ b/HDL_ON/Entity/FunctionList.cs @@ -88,6 +88,70 @@ return deviceFunctionList.OrderByDescending(o => o.usageCount).ToList(); } + /// <summary> + /// 娓呯┖璁惧鍔熻兘鍒楄〃 + /// </summary> + public void ClearAllDeviceFunctionList() + { + aCs = new List<AC>(); + lights = new List<Light>(); + curtains = new List<Curtain>(); + floorHeatings = new List<FloorHeating>(); + tVs = new List<TV>(); + switchSockets = new List<SwitchSocket>(); + fans = new List<Fan>(); + sensorsEnvironmentalScience = new List<Sensor>(); + functions = new List<Function>(); + } + + /// <summary> + /// 娣诲姞鍔熻兘 + /// </summary> + /// <param name="sidObj"></param> + public void AddDeviceFunction(Function sidObj0) + { + switch (sidObj0.functionType) + { + case FunctionType.AC: + var sidObj = Newtonsoft.Json.JsonConvert.DeserializeObject<AC>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); + DB_ResidenceData.residenceData.functionList.aCs.Add(sidObj); + break; + case FunctionType.FloorHeating: + var sidObj1 = Newtonsoft.Json.JsonConvert.DeserializeObject<FloorHeating>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); + DB_ResidenceData.residenceData.functionList.floorHeatings.Add(sidObj1); + break; + case FunctionType.Dimmer: + case FunctionType.RGB: + case FunctionType.Relay: + var sidObj2 = Newtonsoft.Json.JsonConvert.DeserializeObject<Light>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); + DB_ResidenceData.residenceData.functionList.lights.Add(sidObj2); + break; + case FunctionType.Curtain: + var sidObj3 = Newtonsoft.Json.JsonConvert.DeserializeObject<Curtain>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); + DB_ResidenceData.residenceData.functionList.curtains.Add(sidObj3 ); + break; + case FunctionType.TV: + var sidObj4 = Newtonsoft.Json.JsonConvert.DeserializeObject<TV>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); + DB_ResidenceData.residenceData.functionList.tVs.Add(sidObj4); + break; + case FunctionType.Socket: + var sidObj5 = Newtonsoft.Json.JsonConvert.DeserializeObject<SwitchSocket>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); + DB_ResidenceData.residenceData.functionList.switchSockets.Add(sidObj5); + break; + case FunctionType.Fan: + var sidObj6 = Newtonsoft.Json.JsonConvert.DeserializeObject<Fan>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); + DB_ResidenceData.residenceData.functionList.fans.Add(sidObj6); + break; + case FunctionType.CO2: + case FunctionType.TVOC: + case FunctionType.PM25: + case FunctionType.Temp: + case FunctionType.Humidity: + var sidObj7 = Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(Newtonsoft.Json.JsonConvert.SerializeObject(sidObj0)); + DB_ResidenceData.residenceData.functionList.sensorsEnvironmentalScience.Add(sidObj7); + break; + } + } public void AddFunction(object obj) { -- Gitblit v1.8.0