using System; using System.Collections.Generic; namespace IStation.Unit { /// /// 转速单位辅助类 /// public class UnitNHelper : IUnitHelper { #region 静态方法 /// /// 转换 /// /// /// /// /// public static double Convert(eUnitN fromUnit, eUnitN toUnit, double fromValue) { double toValue = fromValue; switch (fromUnit) { case eUnitN.r_min: { switch (toUnit) { case eUnitN.r_min: break; case eUnitN.r_s: toValue = fromValue / 60; break; default: break; } } break; case eUnitN.r_s: { switch (toUnit) { case eUnitN.r_min: toValue = fromValue * 60; break; case eUnitN.r_s: break; default: break; } } break; default: break; } return toValue; } /// /// 获取英文单位名称 /// /// /// public static string GetEnUnitName(eUnitN unit) { switch (unit) { case eUnitN.r_min: return "r/min"; case eUnitN.r_s: return "r/s"; default: return string.Empty; } } /// /// 获取中文单位名称 /// /// /// public static string GetCnUnitName(eUnitN unit) { switch (unit) { case eUnitN.r_min: return "转每分"; case eUnitN.r_s: return "转每秒"; default: return string.Empty; } } /// /// 获取英文单位名称列表 /// /// public static List GetEnUnitNameList() { var list = new List(); foreach (eUnitN item in Enum.GetValues(typeof(eUnitN))) { list.Add(GetEnUnitName(item)); } return list; } /// /// 获取中文单位名称列表 /// /// public static List GetCnUnitNameList() { var list = new List(); foreach (eUnitN item in Enum.GetValues(typeof(eUnitN))) { list.Add(GetCnUnitName(item)); } return list; } /// /// 获取英文单位字典 /// /// public static Dictionary GetEnUnitDict() { var dic = new Dictionary(); foreach (eUnitN item in Enum.GetValues(typeof(eUnitN))) { dic.Add(item, GetEnUnitName(item)); } return dic; } /// /// 获取中文单位字典 /// /// public static Dictionary GetCnUnitDict() { var dic = new Dictionary(); foreach (eUnitN item in Enum.GetValues(typeof(eUnitN))) { dic.Add(item, GetCnUnitName(item)); } return dic; } #endregion #region 显示接口 double IUnitHelper.Convert(int fromUnit, int toUnit, double fromValue) { return Convert((eUnitN)fromUnit, (eUnitN)toUnit, fromValue); } string IUnitHelper.GetCnUnitName(int unit) { return GetCnUnitName((eUnitN)unit); } List IUnitHelper.GetCnUnitNameList() { return GetCnUnitNameList(); } Dictionary IUnitHelper.GetCnUnitDict() { var dic = new Dictionary(); foreach (var item in GetCnUnitDict()) { dic.Add((int)item.Key, item.Value); } return dic; } string IUnitHelper.GetEnUnitName(int unit) { return GetEnUnitName((eUnitN)unit); } List IUnitHelper.GetEnUnitNameList() { return GetEnUnitNameList(); } Dictionary IUnitHelper.GetEnUnitDict() { var dic = new Dictionary(); foreach (var item in GetEnUnitDict()) { dic.Add((int)item.Key, item.Value); } return dic; } #endregion } }