From f71e74b5f0d2716fbf05da016cdaa18d64e09f80 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期四, 31 十二月 2020 17:01:18 +0800 Subject: [PATCH] 又换完成最新门锁。空气质量传感器完成数据和基本配置功能。开发图表和自动化的同事可下载此代码 --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs | 139 ++++++++++++++++++++++++++++++--------------- 1 files changed, 92 insertions(+), 47 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs index 77d26e1..56e2cd9 100644 --- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs @@ -1,25 +1,25 @@ -锘縰sing Shared.Common; -using System; -using System.Collections.Generic; -using System.Text; -using ZigBee.Device; - -namespace Shared.Phone.UserCenter +锘縰sing Shared.Common; +using System; +using System.Collections.Generic; +using System.Text; +using ZigBee.Device; + +namespace Shared.Phone.UserCenter { - /// <summary> - /// 璁惧鐨勫叾浠栭�昏緫(鐩墠鐢ㄦ潵瀛樻斁閮洩鍩庣殑浠g爜) - /// </summary> + /// <summary> + /// 璁惧鐨勫叾浠栭�昏緫(鐩墠鐢ㄦ潵瀛樻斁閮洩鍩庣殑浠g爜) + /// </summary> public class HdlDeviceOtherLogic { - #region 鈻� 鍙橀噺澹版槑___________________________ + #region 鈻� 鍙橀噺澹版槑___________________________ - /// <summary> - /// 璁惧鐨勫叾浠栭�昏緫 - /// </summary> + /// <summary> + /// 璁惧鐨勫叾浠栭�昏緫 + /// </summary> private static HdlDeviceOtherLogic m_Current = null; - /// <summary> - /// 璁惧鐨勫叾浠栭�昏緫 - /// </summary> + /// <summary> + /// 璁惧鐨勫叾浠栭�昏緫 + /// </summary> public static HdlDeviceOtherLogic Current { get @@ -32,14 +32,14 @@ } } - #endregion + #endregion - #region 鈻� 鏄剧ず鎺у埗璁惧鏄惁鎴愬姛鐨勬彁绀篲________ + #region 鈻� 鏄剧ず鎺у埗璁惧鏄惁鎴愬姛鐨勬彁绀篲________ - /// <summary> - /// 鏄剧ず鎺у埗璁惧鏄惁鎴愬姛鐨勬彁绀� - /// </summary> - /// <param name="r">The red component.</param> + /// <summary> + /// 鏄剧ず鎺у埗璁惧鏄惁鎴愬姛鐨勬彁绀� + /// </summary> + /// <param name="r">The red component.</param> public void ShowStatuTip(int r) { Application.RunOnMainThread(() => @@ -50,14 +50,14 @@ }); } - #endregion + #endregion - #region 鈻� 鑾峰彇璁惧鐘舵�佺殑缈昏瘧_________________ + #region 鈻� 鑾峰彇璁惧鐘舵�佺殑缈昏瘧_________________ - /// <summary> - /// GetDeviceStatu - /// </summary> - /// <returns></returns> + /// <summary> + /// GetDeviceStatu + /// </summary> + /// <returns></returns> public string GetDeviceStatu(CommonDevice device) { if (device.Type == DeviceType.OnOffOutput) @@ -73,7 +73,6 @@ } return Language.StringByID(R.MyInternationalizationString.Close); } - else if (device.Type == DeviceType.AirSwitch) { //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 @@ -172,23 +171,23 @@ } else if (pMSensor.currentPmData <= 75 && pMSensor.currentPmData > 35) { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); + curQuality = Language.StringByID(R.MyInternationalizationString.GoodAirQuality); } else if (pMSensor.currentPmData <= 115 && pMSensor.currentPmData > 75) { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); + curQuality = Language.StringByID(R.MyInternationalizationString.LightPollution); } else if (pMSensor.currentPmData <= 150 && pMSensor.currentPmData > 115) { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); + curQuality = Language.StringByID(R.MyInternationalizationString.Moderatelyolluted); } else if (pMSensor.currentPmData <= 250 && pMSensor.currentPmData > 150) { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); + curQuality = Language.StringByID(R.MyInternationalizationString.HeavyPollution); } else if (pMSensor.currentPmData > 250) { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); + curQuality = Language.StringByID(R.MyInternationalizationString.SeriousPollution); } else { @@ -393,29 +392,75 @@ else if (device.Type == DeviceType.TemperatureSensor) { var tempera = device as TemperatureSensor; - if (tempera.SensorDiv == 1) + + //绌烘皵璐ㄩ噺浼犳劅鍣� + //鑾峰彇璁惧绫诲瀷 + var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { device }); + //绌烘皵璐ㄩ噺浼犳劅鍣� + if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor) { - if (tempera.currentTemperature == 0) + //绌烘皵璐ㄩ噺 + string curQuality = ""; + //娓╁害 + string temperature = string.Empty; + //婀垮害 + string humidity = string.Empty; + //PM2.5 + string pm = string.Empty; + //CO2 + string co2 = string.Empty; + + var tempAirQuality = tempera.AirQuality(tempera); + + if (tempAirQuality == 1) { - return "0.0鈩�"; + curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); } - return $"{tempera.currentTemperature}鈩�"; + else if (tempAirQuality == 2) + { + curQuality = Language.StringByID(R.MyInternationalizationString.GoodAirQuality); + } + else if (tempAirQuality == 3) + { + curQuality = Language.StringByID(R.MyInternationalizationString.Pollution); + } + else + { + curQuality = ""; + } + + humidity = $"{tempera.currentHumidity}%"; + temperature = $"{tempera.currentTemperature}鈩�"; + pm = $"{tempera.currentPmData}渭g/m鲁"; + co2 = $"{tempera.currentCO2}ppm"; + return $"{curQuality},{pm},{co2},{temperature},{humidity}"; } - else if (tempera.SensorDiv == 2) + else { - if (tempera.currentHumidity == 0) + if (tempera.SensorDiv == 1) { - return "--%"; + if (tempera.currentTemperature == 0) + { + return "0.0鈩�"; + } + return $"{tempera.currentTemperature}鈩�"; } - return $"{tempera.currentHumidity}%"; + else if (tempera.SensorDiv == 2) + { + if (tempera.currentHumidity == 0) + { + return "--%"; + } + return $"{tempera.currentHumidity}%"; + } + return null; } - return null; } else { return null; } } - #endregion - } -} + #endregion + } +} -- Gitblit v1.8.0