private void JudgeSection(StringData orgsection, List <string> ptList, List <string> sigList)
{
if (null == orgsection)
{
return;
}
string section = orgsection.ToString();
if (!string.IsNullOrEmpty(section))
{
List <string> splits = section.Split('|').ToList();
foreach (string node in splits)
{
//道岔定位
if (node.EndsWith("-N"))
{
string name = node.Substring(0, node.IndexOf("-N"));
GENERIC_SYSTEM_PARAMETERS.POINTS.POINT point = (GENERIC_SYSTEM_PARAMETERS.POINTS.POINT)Sys.GetNode(name, sydb.pointInfoList.Cast <Node>().ToList());
if (null != point)
{
string idName = point.ID + "-N";
if (!ptList.Contains(idName))
{
ptList.Add(idName);
}
}
}
else if (node.EndsWith("-R"))//道岔范围
{
string name = node.Substring(0, node.IndexOf("-R"));
GENERIC_SYSTEM_PARAMETERS.POINTS.POINT point = (GENERIC_SYSTEM_PARAMETERS.POINTS.POINT)Sys.GetNode(name, sydb.pointInfoList.Cast <Node>().ToList());
if (null != point)
{
string idName = point.ID + "-R";
if (!ptList.Contains(idName))
{
ptList.Add(idName);
}
}
}
else
{
GENERIC_SYSTEM_PARAMETERS.SIGNALS.SIGNAL signal = sydb.signalInfoList.Find(x => x.Name == node);
if (null != signal)
{
if (!sigList.Contains(signal.ID.ToString()))
{
sigList.Add(signal.ID.ToString());
}
}
}
}
}
}