From 068c68295cad1967f7aafb4e5e951260ef03d4ce Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期五, 09 七月 2021 09:16:43 +0800 Subject: [PATCH] 状态属性更改,不要轻易合并 --- HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs | 100 +++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 87 insertions(+), 13 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs index 86d0ace..6d76c08 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs @@ -271,8 +271,53 @@ int index = 0; foreach (var sensor in FunctionList.List.GetEnvirSensorsList()) { - LoadSensorDiv(sensor, index); - index++; + if(sensor.spk == SPK.SensorEnvironment) + { + foreach (var seTemp in sensor.attributes) + { + var newTemp = new Function() + { + name = sensor.name, + sid = sensor.sid, + deviceId = sensor.deviceId, + attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = seTemp.state } }, + }; + switch (seTemp.key) + { + case "co2": + newTemp.spk = SPK.SensorCO2; + break; + case "pm25": + newTemp.spk = SPK.SensorPm25; + break; + case "humidity": + newTemp.spk = SPK.SensorHumidity; + break; + case "temperature": + newTemp.spk = SPK.SensorTemperature; + break; + case "tvoc": + newTemp.spk = SPK.SensorTVOC; + break; + } + LoadSensorDiv(newTemp, index); + index++; + } + } + else + { +#if DEBUG + continue; +#endif + LoadSensorDiv(sensor, index); + index++; + } + + new System.Threading.Thread(() => + { + Control.Ins.SendReadCommand(sensor); + }) + { IsBackground = true }.Start(); } } @@ -283,10 +328,9 @@ { var levelColorList = sensorTemp.GetLevelColorList(sensor.spk); var levelTextList = sensorTemp.GetLevelTextList(sensor.spk); - if (room.roomId == "" || sensor.roomIds.Contains(room.roomId)) { - var sensorTag = sensor.sid; + var sensorTag = sensor.spk + sensor.sid + sensor.deviceId; FrameLayout sensorView = new FrameLayout() { X = Application.GetRealWidth(7), @@ -411,12 +455,6 @@ #endregion }; - - new System.Threading.Thread(() => - { - Control.Ins.SendReadCommand(sensor); - }) - { IsBackground = true }.Start(); } } @@ -704,15 +742,51 @@ public static void LoadEvent_UpdataStatus(Function updateTemp) { - Application.RunOnMainThread(() => + Application.RunOnMainThread((Action)(() => { try { if (bodyView != null) { + if (updateTemp.spk == SPK.SensorEnvironment) + { + foreach (var seTemp in updateTemp.attributes) + { + var newTemp = new Function() + { + name = updateTemp.name, + sid = updateTemp.sid, + deviceId = updateTemp.deviceId, + attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = seTemp.state} }, + }; + switch (seTemp.key) + { + case "co2": + newTemp.spk = SPK.SensorCO2; + break; + case "pm25": + newTemp.spk = SPK.SensorPm25; + break; + case "humidity": + newTemp.spk = SPK.SensorHumidity; + break; + case "temperature": + newTemp.spk = SPK.SensorTemperature; + break; + case "tvoc": + newTemp.spk = SPK.SensorTVOC; + break; + } + if(!string.IsNullOrEmpty(newTemp.spk)) + { + LoadEvent_UpdataStatus(newTemp); + } + } + } + for (int i = 0; i < bodyView.sensorListView.ChildrenCount; i++) { - var sensorTag = updateTemp.sid; + var sensorTag = updateTemp.spk + updateTemp.sid + updateTemp.deviceId; var view = bodyView.sensorListView.GetChildren(i); if (view.GetType() == typeof(FrameLayout)) { @@ -753,7 +827,7 @@ { MainPage.Log($"鏇存柊鐜浼犳劅鍣ㄧ晫闈㈠紓甯�:{ex.Message}"); } - }); + })); } void LoadEvent_ChangeWeatherIcon(FrameLayout view) -- Gitblit v1.8.0