wxr
2022-06-07 3afa6b622356b974a42ff29b1e4f0e35d2bf68f0
HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs
@@ -748,6 +748,93 @@
            return list;
        }
        /// <summary>
        /// 动态获取传感器等级列表
        /// </summary>
        /// <param name="device">功能(sid)</param>
        /// <returns></returns>
        public List<string> GetSensorLevelList(Entity.Function device)
        {
            List<string> list = new List<string>();
            var dic = GetSensorLevelDic(device);
            foreach (var d in dic) {
                list.Add(d.Key);
            }
            return list;
        }
        /// <summary>
        /// 指定获取等级拼接的字符串
        /// </summary>
        /// <param name="device">功能(sid)</param>
        /// <param name="s">初始值</param>
        /// <param name="isTextBoolean">表示true(返回key);false(返回values)</param>
        /// <returns></returns>isTextBoolean
        public string GetSensorLevelText(Entity.Function device, string s, bool isTextBoolean)
        {
            if (device == null || device.attrKeyConfigs == null)
            {
                return "";
            }
            var dic = GetSensorLevelDic(device);
            if (isTextBoolean)
            {
                foreach (var d in dic)
                {
                    if (d.Value==s)
                    {
                        //如果values值存在,返回key值
                        return d.Key.ToString();
                    }
                }
            }
            else
            {
                foreach (var d in dic)
                {
                    if (d.Key==s)
                    {
                        //如果key值存在,返回values值
                        return d.Value.ToString();
                    }
                }
            }
            return "";
        }
        /// <summary>
        /// 动态获取传感器等级字典
        /// </summary>
        /// <param name="device">功能(sid)</param>
        /// <returns></returns>
        public Dictionary<string,string> GetSensorLevelDic(Entity.Function device)
        {
            Dictionary<string, string> dic = new Dictionary<string, string>();
            if (device == null || device.attrKeyConfigs == null)
            {
                return dic;
            }
            string strKey = "";
            string strKeyValues = "";
            for (int i = 0; i < device.attrKeyConfigs.Count; i++)
            {
                var attrKeyConfig = device.attrKeyConfigs[i];
                foreach (var attrKeyInfo in attrKeyConfig.configs)
                {
                    //动态拼接字符串
                    strKey = attrKeyInfo.desc + ":" + attrKeyInfo.start + "~" + attrKeyInfo.end + attrKeyConfig.unit;
                    strKeyValues = "(" + attrKeyInfo.start + "," + attrKeyInfo.end + "]";
                    if (!dic.ContainsKey(strKey))
                    {
                        //没有再添加
                        dic.Add(strKey, strKeyValues);
                    }
                }
            }
            return dic;
        }
        /// <summary>
        /// 模式/风速互相转换值的方法
        /// </summary>
        /// <param name="text">文本</param>