From 25429f085093d89d543a0b90e30d0d62d1b7dac9 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期二, 30 八月 2022 09:37:38 +0800
Subject: [PATCH] 合并了IOS的代码

---
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs |   78 +++++++++++++++++++++++++++++++--------
 1 files changed, 62 insertions(+), 16 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs
index 7ff3666..cd21d5b 100644
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs
@@ -97,7 +97,7 @@
                 {
                     return Language.StringByID(R.MyInternationalizationString.Close);
                 }
-                return $"{(int)((device as DimmableLight).Level * 1.0 / 254 * 100)}%";
+                return HdlDeviceCommonLogic.Current.CalculateLightLevelPersent((device as DimmableLight).Level) + "%";
             }
             else if (device.Type == DeviceType.ColorTemperatureLight)
             {
@@ -110,7 +110,7 @@
                 {
                     return Language.StringByID(R.MyInternationalizationString.Close);
                 }
-                return $"{(int)((device as ColorTemperatureLight).Level * 1.0 / 254 * 100)}%";
+                return HdlDeviceCommonLogic.Current.CalculateLightLevelPersent((device as ColorTemperatureLight).Level) + "%";
             }
             else if (device.Type == DeviceType.WindowCoveringDevice)
             {
@@ -171,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
                 {
@@ -392,23 +392,69 @@
             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},{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
             {

--
Gitblit v1.8.0