Recognize drawing numbers with dash symbol and letters on end.

This commit is contained in:
aj
2018-06-09 21:16:04 -04:00
parent 32493734af
commit d2de737ffb
2 changed files with 33 additions and 42 deletions

View File

@@ -2,48 +2,48 @@
namespace ExportDXF
{
public class DrawingInfo
{
public string JobNo { get; set; }
public class DrawingInfo
{
public string JobNo { get; set; }
public string DrawingNo { get; set; }
public string DrawingNo { get; set; }
public string Source { get; set; }
public string Source { get; set; }
public override string ToString()
{
return string.Format("{0} {1}", JobNo, DrawingNo);
}
public override string ToString()
{
return string.Format("{0} {1}", JobNo, DrawingNo);
}
public override bool Equals(object obj)
{
if (obj == null)
return false;
public override bool Equals(object obj)
{
if (obj == null)
return false;
return obj.ToString() == ToString();
}
return obj.ToString() == ToString();
}
public override int GetHashCode()
{
return ToString().GetHashCode();
}
public override int GetHashCode()
{
return ToString().GetHashCode();
}
public static DrawingInfo Parse(string input)
{
const string pattern = @"(?<jobNo>[34]\d{3})\s?(?<dwgNo>[ABEP]\d+)";
public static DrawingInfo Parse(string input)
{
const string pattern = @"(?<jobNo>[34]\d{3})\s?(?<dwgNo>[ABEP]\d+(-\d+|[A-Z])?)";
var match = Regex.Match(input, pattern);
var match = Regex.Match(input, pattern);
if (match.Success == false)
return null;
if (match.Success == false)
return null;
var dwg = new DrawingInfo();
var dwg = new DrawingInfo();
dwg.JobNo = match.Groups["jobNo"].Value;
dwg.DrawingNo = match.Groups["dwgNo"].Value;
dwg.Source = input;
dwg.JobNo = match.Groups["jobNo"].Value;
dwg.DrawingNo = match.Groups["dwgNo"].Value;
dwg.Source = input;
return dwg;
}
}
return dwg;
}
}
}

View File

@@ -542,16 +542,7 @@ namespace ExportDXF.Forms
if (distinctComponents.Count() > 1)
{
throw new NotImplementedException();
//foreach (var comp in distinctComponents)
//{
// items.Add(new Item
// {
// Name = itemNumber + rev++,
// Component = comp
// });
//}
continue;
}
else
{