修改CMA解析

master
jianghaiqing 4 months ago
parent 2a338b37a9
commit f08e7b02af

@ -991,6 +991,12 @@ namespace DAJYun.Application.TaskManagePlatDomain
model.Portload = Regex.Replace(Regex.Match(originText, "(?<=" + name.RegexFormat() + ").*(?<=\\))").Value, "\\s{2,}", " ").Trim();
if(string.IsNullOrWhiteSpace(model.Portload))
{
string name2 = Regex.Match(originText, "SI\\s+Cut\\-Off\\s+Date\\/", RegexOptions.IgnoreCase).Value;
model.Portload = Regex.Replace(Regex.Match(originText, "(?<=" + name.RegexFormat() + ").*(?="+ name2 + ")").Value, "\\s{2,}", " ").Trim();
}
string city = Regex.Match(model.Portload, "(?<=\\().*(?=\\))").Value;
if (!string.IsNullOrWhiteSpace(city) && city.Trim().Equals("NINGBO", StringComparison.OrdinalIgnoreCase))
@ -1022,6 +1028,12 @@ namespace DAJYun.Application.TaskManagePlatDomain
string name = Regex.Match(originText, "卸货港:", RegexOptions.IgnoreCase).Value;
model.PortDischarge = Regex.Replace(Regex.Match(originText, "(?<=" + name.RegexFormat() + ").*(?<=\\))").Value, "\\s{2,}", " ").Trim();
if (string.IsNullOrWhiteSpace(model.PortDischarge))
{
string name2 = Regex.Match(originText, "预计到达时间:", RegexOptions.IgnoreCase).Value;
model.PortDischarge = Regex.Replace(Regex.Match(originText, "(?<=" + name.RegexFormat() + ").*(?=" + name2 + ")").Value, "\\s{2,}", " ").Trim();
}
}
}
else
@ -1272,18 +1284,48 @@ namespace DAJYun.Application.TaskManagePlatDomain
if (!string.IsNullOrWhiteSpace(currS))
{
var currSplitArg = currS.Split(new char[] { '/' });
//如果出现提单号信息,需要从下一行提取 B/L CHN1288087
if (Regex.IsMatch(currS, "B\\/L\\s+\\w+"))
{
string name2 = Regex.Match(originText, "B\\/L\\s+\\w+(\\r\\n)").Value;
model.Vessel = currSplitArg[0]?.Trim();
string voynoStr = Regex.Match(originText, "(?<=" + name2 + ").*(?=\\r\\n)").Value;
if (!string.IsNullOrWhiteSpace(voynoStr))
currS += voynoStr;
currS = Regex.Replace(Regex.Replace(currS, "B\\/L\\s+\\w+", ""), "\\r\\n", "")?.Trim();
var currSplitArg = currS.Split(new char[] { '/' });
model.Vessel = currSplitArg[0]?.Trim();
if (currSplitArg.Length == 3)
{
model.CarrierVoyNo = currSplitArg[1]?.Trim();
model.VoyNo = currSplitArg[2]?.Trim();
}
else
{
model.CarrierVoyNo = currSplitArg[1]?.Trim();
}
if (currSplitArg.Length == 3)
{
model.CarrierVoyNo = currSplitArg[1]?.Trim();
model.VoyNo = currSplitArg[2]?.Trim();
}
else
{
model.CarrierVoyNo = currSplitArg[1]?.Trim();
var currSplitArg = currS.Split(new char[] { '/' });
model.Vessel = currSplitArg[0]?.Trim();
if (currSplitArg.Length == 3)
{
model.CarrierVoyNo = currSplitArg[1]?.Trim();
model.VoyNo = currSplitArg[2]?.Trim();
}
else
{
model.CarrierVoyNo = currSplitArg[1]?.Trim();
}
}
}
}

Loading…
Cancel
Save