/// <summary> /// 检测项特殊注 /// </summary> /// <returns></returns> public static List <Remark_Rules> RemarkRules() { List <Remark_Rules> result = new List <Remark_Rules>(); Remark_Rules item = new Remark_Rules(); #region 166-1993_3_1 item.RuleID = "166-1993_3_1"; item.RuleName = "1000Ω以下 - 无误差 - 有型号编号"; item.Remark = "注:δn为标准电阻的相对修正值。</br> δx1、δx2分别为由正向及反向测量结果所得到的被测电阻的相对修正值。</br> δx =(δx1+δx2)/2".Replace("</br>", Environment.NewLine); //item.ImgUrl = "/Images/73_74.png"; result.Add(item); #endregion #region 166-1993_3_2 item = new Remark_Rules(); item.RuleID = "166-1993_3_2"; item.RuleName = "1000Ω以下-标准电阻-相对误差-无型号编号"; item.Remark = "注:δn为标准电阻的相对修正值。</br> δx1、δx2分别为由正向及反向测量结果所得到的被测电阻的相对修正值。</br> δx =(δx1+δx2)/2".Replace("</br>", Environment.NewLine); //item.ImgUrl = "/Images/73_74.png"; result.Add(item); #endregion #region 166-1993_3_3 item = new Remark_Rules(); item.RuleID = "166-1993_3_3"; item.RuleName = "1000Ω以上-无误差"; item.Remark = "注:Rn — 二等标准电阻的上级检定结果</br> Rx — 被测电阻的实际值</br> Ax — 本装置检定被测电阻时电压表示值</br> An — 本装置检定二等标准电阻时电压表示值</br> Rx = Rn + (Ax / I - An / I)".Replace("</br>", Environment.NewLine); //item.ImgUrl = string.Empty; result.Add(item); #endregion return(result); }
/// <summary> /// 获取特殊字符索引位置信息 /// </summary> /// <param name="RuleID">检测项ID</param> /// <param name="RemarkStr">备注</param> /// <returns></returns> public static List <SpecialCharacter_Index> GetSpecialCharacter_Indexs(string RuleID, out string RemarkStr) { //RuleID = "166-1993_3_1";//测试 RemarkStr = string.Empty; Dictionary <string, List <SpecialCharacter> > RemarkSpecialCharacterDic = RemarkSpecialCharacter(); List <Remark_Rules> RemarkRulesList = RemarkRules(); if (string.IsNullOrWhiteSpace(RuleID) || (RemarkSpecialCharacterDic == null || !RemarkSpecialCharacterDic.ContainsKey(RuleID) || RemarkSpecialCharacterDic[RuleID] == null || RemarkSpecialCharacterDic[RuleID].Count == 0) || (RemarkRulesList == null || RemarkRulesList.FirstOrDefault(p => p.RuleID == RuleID) == null || string.IsNullOrWhiteSpace(RemarkRulesList.FirstOrDefault(p => p.RuleID == RuleID).Remark))) { return(null); } List <SpecialCharacter> Speciallist = RemarkSpecialCharacterDic[RuleID]; Remark_Rules Remark = RemarkRulesList.FirstOrDefault(p => p.RuleID == RuleID); if (Remark != null) { RemarkStr = Remark.Remark; } List <SpecialCharacter_Index> result = new List <SpecialCharacter_Index>(); SpecialCharacter_Index item = new SpecialCharacter_Index(); foreach (SpecialCharacter s in Speciallist) { int index = -2; int length = 0; while (index != -1 && index < Remark.Remark.Length - 1 - length) { index = Remark.Remark.IndexOf(s.Code, index == -2 ? 0 : index + length); if (index >= 0 && (result == null || result.FirstOrDefault(p => p.StartIndex == index) == null)) { item = new SpecialCharacter_Index(); item.Code = s.Code; item.StartIndex = index; item.SubCount = s.SubscriptLastCount; result.Add(item); length = s.Code.Length; } else if (index >= 0) { length = s.Code.Length; } else { break; } } } return(result); }