wxr
2022-05-24 967050bf6c665227823da37e04d40205c7af5a77
HDL_ON/Entity/Function/Sensor.cs
@@ -338,6 +338,69 @@
            }
            return _levelTextList;
        }
        /// <summary>
        /// 获取
        /// </summary>
        /// <param name="function"></param>
        /// <returns></returns>
        public uint GetCurColor(Function function)
        {
            var spk = function.spk;
            var values = GetValues(function);
            uint level = 0x00000000;
            if (function.attrKeyConfigs.Count > 0)
            {
                foreach (var attrKey in function.attrKeyConfigs)
                {
                    if (function.spk.Replace(".", "").Contains(attrKey.key.Replace(".", "")))
                    {
                        foreach (var info in attrKey.configs)
                        {
                            if ((Convert.ToInt32(info.start) >= values) && (Convert.ToInt32(info.end) < values))
                            {
                                return Convert.ToUInt32(info.color, 16);
                            }
                        }
                    }
                }
            }
            return level;
        }
        /// <summary>
        /// 获取文本
        /// </summary>
        /// <param name="function"></param>
        /// <returns></returns>
        public string GetCurText(Function function)
        {
            var spk = function.spk;
            var values = GetValues(function);
            var level = "";
            if (function.attrKeyConfigs.Count > 0)
            {
                foreach (var attrKey in function.attrKeyConfigs)
                {
                    if (function.spk.Replace(".", "").Contains(attrKey.key.Replace(".", "")))
                    {
                        foreach (var info in attrKey.configs)
                        {
                            if ((Convert.ToInt32(info.start) >= values) && (Convert.ToInt32(info.end) < values))
                            {
                                return info.desc;
                            }
                        }
                    }
                }
            }
            return level;
        }
        /// <summary>
        /// 当前等级
        /// </summary>
@@ -346,6 +409,37 @@
            var spk = function.spk;
            var values = GetValues(function);
            int level = 1;
            if (function.attrKeyConfigs.Count > 0)
            {
                foreach (var attrKey in function.attrKeyConfigs)
                {
                    if (function.spk.Replace(".", "").Contains(attrKey.key.Replace(".", "")))
                    {
                        level = 1;
                        if(attrKey.configs.Count == 0)
                        {
                            break;
                        }
                        foreach (var info in attrKey.configs)
                        {
                            if ((Convert.ToDouble(info.start) < values) && (Convert.ToDouble(info.end) >= values))
                            {
                                return level;
                            }
                            level++;
                        }
                    }
                }
                    return 1;
            }
            switch (spk)
            {
                case SPK.SensorPm25: