| | |
| | | { |
| | | if (filePath.StartsWith("FunctionData_")) |
| | | { |
| | | //if (filePath.Length == 13 + 28) |
| | | //{ |
| | | // var _functionTypeString = filePath.Substring(16 + 13, 4); |
| | | // var ft = (FunctionType)Enum.ToObject(typeof(FunctionType), Convert.ToInt32(_functionTypeString, 16)); |
| | | // switch (ft) |
| | | // { |
| | | // case FunctionType.AC: |
| | | // //恢复空调数据 |
| | | // var acDataBytes = FileUtils.ReadFile(filePath); |
| | | // var acString = System.Text.Encoding.UTF8.GetString(acDataBytes); |
| | | // List.aCs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<AC>(acString)); |
| | | // break; |
| | | // case FunctionType.Relay: |
| | | // case FunctionType.Dimmer: |
| | | // case FunctionType.RGB: |
| | | // //恢复灯光数据 |
| | | // var lightsDataBytes = FileUtils.ReadFile(filePath); |
| | | // var lightsString = System.Text.Encoding.UTF8.GetString(lightsDataBytes); |
| | | // List.lights.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Light>(lightsString)); |
| | | // break; |
| | | // case FunctionType.Curtain: |
| | | // case FunctionType.MotorCurtain: |
| | | // case FunctionType.RollingShutter: |
| | | // //恢复窗帘数据 |
| | | // var curtainsDataBytes = FileUtils.ReadFile(filePath); |
| | | // var curtainsString = System.Text.Encoding.UTF8.GetString(curtainsDataBytes); |
| | | // List.curtains.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Curtain>(curtainsString)); |
| | | // break; |
| | | // case FunctionType.FloorHeating: |
| | | // //恢复地热数据 |
| | | // var fhDataBytes = FileUtils.ReadFile(filePath); |
| | | // var fhString = System.Text.Encoding.UTF8.GetString(fhDataBytes); |
| | | // List.floorHeatings.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<FloorHeating>(fhString)); |
| | | // break; |
| | | // case FunctionType.PM25: |
| | | // case FunctionType.CO2: |
| | | // case FunctionType.TVOC: |
| | | // case FunctionType.Temp: |
| | | // case FunctionType.Humidity: |
| | | // //恢复环境数据 |
| | | // var sesDataBytes = FileUtils.ReadFile(filePath); |
| | | // var sesString = System.Text.Encoding.UTF8.GetString(sesDataBytes); |
| | | // List.sensorsEnvironmentalScience.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(sesString)); |
| | | // break; |
| | | // case FunctionType.Socket: |
| | | // //恢复插座数据 |
| | | // var eleDataBytes = FileUtils.ReadFile(filePath); |
| | | // var eleString = System.Text.Encoding.UTF8.GetString(eleDataBytes); |
| | | // List.switchSockets.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<SwitchSocket>(eleString)); |
| | | // break; |
| | | // case FunctionType.TV: |
| | | // //恢复电视数据 |
| | | // var eleDataBytes1 = FileUtils.ReadFile(filePath); |
| | | // var eleString1 = System.Text.Encoding.UTF8.GetString(eleDataBytes1); |
| | | // List.tVs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<TV>(eleString1)); |
| | | // break; |
| | | // case FunctionType.Fan: |
| | | // //恢复风扇数据 |
| | | // var eleDataBytes2 = FileUtils.ReadFile(filePath); |
| | | // var eleString2 = System.Text.Encoding.UTF8.GetString(eleDataBytes2); |
| | | // List.fans.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Fan>(eleString2)); |
| | | // break; |
| | | // } |
| | | //} |
| | | //else//sid非标准情况下,通过spk加载设备 |
| | | var functionDataBytes = FileUtils.ReadFile(filePath); |
| | | var functionDataString = System.Text.Encoding.UTF8.GetString(functionDataBytes); |
| | | var tempFunction = Newtonsoft.Json.JsonConvert.DeserializeObject<Function>(functionDataString); |
| | | if (tempFunction.DeleteSign) |
| | | { |
| | | var functionDataBytes = FileUtils.ReadFile(filePath); |
| | | var functionDataString = System.Text.Encoding.UTF8.GetString(functionDataBytes); |
| | | var tempFunction = Newtonsoft.Json.JsonConvert.DeserializeObject<Function>(functionDataString); |
| | | if (tempFunction.DeleteSign) |
| | | //todo 删除云端数据 20201203--App不能删除功能数据 |
| | | } |
| | | else |
| | | { |
| | | switch (tempFunction.spk) |
| | | { |
| | | //todo 删除云端数据 20201203--App不能删除功能数据 |
| | | } |
| | | else { |
| | | switch (tempFunction.spk) |
| | | { |
| | | case SPK.LightSwitch: |
| | | case SPK.LightDimming: |
| | | case SPK.LightRGB: |
| | | case SPK.LightRGBW: |
| | | case SPK.LightCCT: |
| | | List.lights.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Light>(functionDataString)); |
| | | break; |
| | | case SPK.CurtainRoller: |
| | | case SPK.CurtainShades: |
| | | case SPK.CurtainSwitch: |
| | | case SPK.CurtainTrietex: |
| | | List.curtains.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Curtain>(functionDataString)); |
| | | break; |
| | | case SPK.AcStandard: |
| | | List.aCs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<AC>(functionDataString)); |
| | | break; |
| | | case SPK.FloorHeatStandard: |
| | | //恢复地热数据 |
| | | List.floorHeatings.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<FloorHeating>(functionDataString)); |
| | | break; |
| | | case SPK.SensorPm25: |
| | | case SPK.SensorCO2: |
| | | case SPK.SensorTVOC: |
| | | case SPK.SensorTemperature: |
| | | case SPK.SensorHumidity: |
| | | //恢复环境数据 |
| | | List.sensorsEnvironmentalScience.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(functionDataString)); |
| | | break; |
| | | case SPK.ElectricSocket: |
| | | //恢复插座数据 |
| | | List.switchSockets.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<SwitchSocket>(functionDataString)); |
| | | break; |
| | | case SPK.ElectricTV: |
| | | //恢复电视数据 |
| | | List.tVs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<TV>(functionDataString)); |
| | | break; |
| | | case SPK.ElectricFan: |
| | | //恢复风扇数据 |
| | | List.fans.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Fan>(functionDataString)); |
| | | break; |
| | | } |
| | | case SPK.LightSwitch: |
| | | case SPK.LightDimming: |
| | | case SPK.LightRGB: |
| | | case SPK.LightRGBW: |
| | | case SPK.LightCCT: |
| | | List.lights.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Light>(functionDataString)); |
| | | break; |
| | | case SPK.CurtainRoller: |
| | | case SPK.CurtainShades: |
| | | case SPK.CurtainSwitch: |
| | | case SPK.CurtainTrietex: |
| | | List.curtains.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Curtain>(functionDataString)); |
| | | break; |
| | | case SPK.AcStandard: |
| | | List.aCs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<AC>(functionDataString)); |
| | | break; |
| | | case SPK.FloorHeatStandard: |
| | | //恢复地热数据 |
| | | List.floorHeatings.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<FloorHeating>(functionDataString)); |
| | | break; |
| | | case SPK.SensorPm25: |
| | | case SPK.SensorCO2: |
| | | case SPK.SensorTVOC: |
| | | case SPK.SensorTemperature: |
| | | case SPK.SensorHumidity: |
| | | //恢复环境数据 |
| | | List.sensorsEnvironmentalScience.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(functionDataString)); |
| | | break; |
| | | case SPK.ElectricSocket: |
| | | //恢复插座数据 |
| | | List.switchSockets.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<SwitchSocket>(functionDataString)); |
| | | break; |
| | | case SPK.ElectricTV: |
| | | //恢复电视数据 |
| | | List.tVs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<TV>(functionDataString)); |
| | | break; |
| | | case SPK.ElectricFan: |
| | | //恢复风扇数据 |
| | | List.fans.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Fan>(functionDataString)); |
| | | break; |
| | | } |
| | | } |
| | | } |