From 4f2dbd1f6a1ec2d9c3c39b4a37b0b7c9ddece4aa Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 23 九月 2021 15:24:01 +0800
Subject: [PATCH] 主页刷新优化

---
 HDL_ON/Entity/Function/Sensor.cs |  128 +++++++++++++++++++++++++++++++++++++++---
 1 files changed, 119 insertions(+), 9 deletions(-)

diff --git a/HDL_ON/Entity/Function/Sensor.cs b/HDL_ON/Entity/Function/Sensor.cs
index 585a617..a51a61c 100644
--- a/HDL_ON/Entity/Function/Sensor.cs
+++ b/HDL_ON/Entity/Function/Sensor.cs
@@ -81,16 +81,22 @@
                     _intervalValue.Add("33掳C ~");
                     break;
                 case SPK.SensorTVOC:
-                    _intervalValue.Add("0 ~ 0.6");
-                    _intervalValue.Add("0.61 ~ 2");
-                    _intervalValue.Add("2.01 ~ 5");
-                    _intervalValue.Add("5 ~");
+                    _intervalValue.Add("0 ~ 600");
+                    _intervalValue.Add("601 ~ 2000");
+                    _intervalValue.Add("2001 ~ 5000");
+                    _intervalValue.Add("5001 ~");
                     break;
                 case SPK.SensorHumidity:
                     _intervalValue.Add("70 ~");
                     _intervalValue.Add("71 ~ 40");
                     _intervalValue.Add("0 ~ 39");
                     break;
+                case SPK.SensorHcho:
+                    _intervalValue.Add("~ 0.08");
+                    _intervalValue.Add("0.08 ~ 0.1");
+                    _intervalValue.Add("0.1 ~ ");
+                    break;
+
             }
             return _intervalValue;
         }
@@ -135,6 +141,16 @@
                     _levelColorList.Add(0xFF2172FF);
                     _levelColorList.Add(0xFFADE764);
                     _levelColorList.Add(0xFFFF3D3D);
+                    break;
+                case SPK.SensorHcho:
+                    _levelColorList.Add(0xFF2172FF);
+                    _levelColorList.Add(0xFFADE764);
+                    _levelColorList.Add(0xFFFF3D3D);
+                    break;
+                default:
+                    _levelColorList.Add(0x00000000);
+                    _levelColorList.Add(0x00000000);
+                    _levelColorList.Add(0x00000000);
                     break;
             }
             return _levelColorList;
@@ -181,6 +197,16 @@
                     _levelTextList.Add(StringId.SensorReferenceHumidityTipLevel2);
                     _levelTextList.Add(StringId.SensorReferenceHumidityTipLevel3);
                     break;
+                case SPK.SensorHcho:
+                    _levelTextList.Add(StringId.Class_I_BuildingStandard);
+                    _levelTextList.Add(StringId.SecondaryBuildingStandard);
+                    _levelTextList.Add(StringId.ExceedingTheStandard);
+                    break;
+                default:
+                    _levelTextList.Add(99999999);
+                    _levelTextList.Add(99999999);
+                    _levelTextList.Add(99999999);
+                    break;
             }
             return _levelTextList;
         }
@@ -211,7 +237,7 @@
                         level = 2;
                     else if (values < 5000)
                         level = 3;
-                    else if (values > 5000)
+                    else if (values >= 5000)
                         level = 4;
                     break;
                 case SPK.SensorTemperature:
@@ -231,13 +257,13 @@
                         level = 7;
                     break;
                 case SPK.SensorTVOC:
-                    if (values < 0.6)
+                    if (values < 600)
                         level = 1;
-                    else if (values < 2)
+                    else if (values < 2000)
                         level = 2;
-                    else if (values < 5)
+                    else if (values < 5000)
                         level = 3;
-                    else if (values > 5)
+                    else if (values >= 5000)
                         level = 4;
                     break;
                 case SPK.SensorHumidity:
@@ -248,8 +274,92 @@
                     else if (values < 40)
                         level = 3;
                     break;
+                case SPK.SensorHcho:
+                    if (values <= 0.08)
+                        level = 1;
+                    else if (values <= 0.1)
+                        level = 2;
+                    else
+                        level = 3;
+                    break;
             }
             return level;
         }
+
+
+        /// <summary>
+        /// 褰撳墠绛夌骇
+        /// </summary>
+        public int GetCurLevel(string spk,double values)
+        {
+            int level = 1;
+            switch (spk)
+            {
+                case SPK.SensorPm25:
+                    if (values < 35)
+                        level = 1;
+                    else if (values < 75)
+                        level = 2;
+                    else if (values < 115)
+                        level = 3;
+                    else if (values > 115)
+                        level = 4;
+                    break;
+                case SPK.SensorCO2:
+                    if (values < 1000)
+                        level = 1;
+                    else if (values < 2000)
+                        level = 2;
+                    else if (values < 5000)
+                        level = 3;
+                    else if (values >= 5000)
+                        level = 4;
+                    break;
+                case SPK.SensorTemperature:
+                    if (values < 18)
+                        level = 1;
+                    else if (values < 20)
+                        level = 2;
+                    else if (values < 25)
+                        level = 3;
+                    else if (values < 27)
+                        level = 4;
+                    else if (values < 30)
+                        level = 5;
+                    else if (values < 33)
+                        level = 6;
+                    else if (values > 33)
+                        level = 7;
+                    break;
+                case SPK.SensorTVOC:
+                    if (values < 600)
+                        level = 1;
+                    else if (values < 2000)
+                        level = 2;
+                    else if (values < 5000)
+                        level = 3;
+                    else if (values >= 5000)
+                        level = 4;
+                    break;
+                case SPK.SensorHumidity:
+                    if (values > 70)
+                        level = 1;
+                    else if (values > 40)
+                        level = 2;
+                    else if (values < 40)
+                        level = 3;
+                    break;
+                case SPK.SensorHcho:
+                    if (values <= 0.08)
+                        level = 1;
+                    else if (values <= 0.1)
+                        level = 2;
+                    else
+                        level = 3;
+                    break;
+            }
+            return level;
+        }
+
     }
 }

--
Gitblit v1.8.0