|
|
@ -579,9 +579,9 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
if (isRepeat == true) |
|
|
|
{ |
|
|
|
var succObj = _r100CheckDomainSrv.InsertR100Repeat(msgReceiveObj, r100Bill); |
|
|
|
string msg = _errorMessagePrefix + $"R100是重复报文:{msgReceiveObj.MessageFileName}"; |
|
|
|
_logger.LogDebug(msg); |
|
|
|
throw new Exception(msg); |
|
|
|
string msg2 = _errorMessagePrefix + $"R100是重复报文:{msgReceiveObj.MessageFileName}"; |
|
|
|
_logger.LogDebug(msg2); |
|
|
|
throw new Exception(msg2); |
|
|
|
} |
|
|
|
} |
|
|
|
else if (billResObj.M100Bill != null) |
|
|
@ -591,24 +591,21 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
if (isRepeat == true) |
|
|
|
{ |
|
|
|
var succObj = _m100CheckDomainService.InsertM100RepeatBill(msgReceiveObj, m100Bill); |
|
|
|
string msg = _errorMessagePrefix + $"M100是重复报文:{msgReceiveObj.MessageFileName}"; |
|
|
|
_logger.LogDebug(msg); |
|
|
|
throw new Exception(msg); |
|
|
|
string msg3 = _errorMessagePrefix + $"M100是重复报文:{msgReceiveObj.MessageFileName}"; |
|
|
|
_logger.LogDebug(msg3); |
|
|
|
throw new Exception(msg3); |
|
|
|
} |
|
|
|
} |
|
|
|
#endregion
|
|
|
|
|
|
|
|
UpdateVehicleModel(billResObj); //更新车型
|
|
|
|
UpdateVehicleModel(msgReceiveObj, billResObj); //更新车型
|
|
|
|
|
|
|
|
#region 更新三个零件类别,有不识别零件时直接中断程序
|
|
|
|
string unknowPartCode = UpdatePartLargeType(billResObj); |
|
|
|
if (unknowPartCode.HasValue()) //有不识别零件
|
|
|
|
string msg = UpdatePartLargeType(billResObj); |
|
|
|
if (msg.HasValue()) //有不识别零件
|
|
|
|
{ |
|
|
|
msgReceiveObj.ErrorCount = 4; |
|
|
|
msgReceiveObj.ErrorMessage = $"存在不识别的零件{unknowPartCode}"; |
|
|
|
_messageReceiveRepository.UpdateAsync(msgReceiveObj).GetAwaiter().GetResult(); |
|
|
|
|
|
|
|
throw new Exception($"存在不识别的零件{unknowPartCode}:{msgReceiveObj.MessageFileName}"); //零件大类没有维护时,直接返回解析失败,程序执行中断,报警(不进入未知总成)
|
|
|
|
throw new Exception(msg); //零件大类没有维护时,直接返回解析失败,程序执行中断,报警(不进入未知总成)
|
|
|
|
} |
|
|
|
#endregion
|
|
|
|
|
|
|
@ -618,7 +615,7 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
foreach (var billResultObj in billResultLst) //遍历多个成品件
|
|
|
|
{ |
|
|
|
//更新车型
|
|
|
|
UpdateVehicleModel(billResultObj); |
|
|
|
//UpdateVehicleModel(msgReceiveObj, billResultObj);
|
|
|
|
|
|
|
|
#region 更新SerialNumStr
|
|
|
|
if (billResultObj.M100Bill != null) |
|
|
@ -757,7 +754,7 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
/// 更新R100或M100子表的三个零件类型(分别更新为产线,分组,零件大类)
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="billResObj"></param>
|
|
|
|
/// <returns>存在没有识别的,返回该子件号</returns>
|
|
|
|
/// <returns>存在没有识别的,返回错误信息,否则返回空</returns>
|
|
|
|
private string UpdatePartLargeType(BillResult billResObj) |
|
|
|
{ |
|
|
|
string ret = ""; |
|
|
@ -777,7 +774,7 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
ret = billPart.PartCode; |
|
|
|
ret = $"根据车型{bill.VehicleModelCode}和零件大类{partLargeType}在零件大类字典中没有取到数据:{billPart.PartCode}"; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
@ -798,7 +795,7 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
ret = billPart.PartCode; |
|
|
|
ret = $"根据车型{bill.VehicleModelCode}和零件大类{partLargeType}在零件大类字典中没有取到数据:{billPart.PartCode}"; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
@ -1061,7 +1058,7 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
/// 更新车型
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="billResObj"></param>
|
|
|
|
private void UpdateVehicleModel(BillResult billResObj) |
|
|
|
private void UpdateVehicleModel(MessageReceive msgReceObj, BillResult billResObj) |
|
|
|
{ |
|
|
|
if (billResObj.R100Bill != null) |
|
|
|
{ |
|
|
@ -1103,6 +1100,10 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
//string errorMsg = $"报文车型{ediVehicleModel}没有对应的零件生产工厂车型!!KNR={bill.KNR}【不终止错误】";
|
|
|
|
//_logRemindDomainService.WriteLogRemind("报文格式转换", errorMsg, LogTypeEnum.R100);
|
|
|
|
//_logger.LogError(errorMsg);
|
|
|
|
msgReceObj.ErrorCount = 4; |
|
|
|
string errorMsg = $"报文车型{ediVehicleModel}没有对应的零件生产工厂车型:{msgReceObj.MessageFileName}"; |
|
|
|
throw new Exception(errorMsg); //车型不存在,直接返回解析失败,程序执行中断,报警(不进入未知总成)
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
else if (billResObj.M100Bill != null) |
|
|
@ -1143,6 +1144,10 @@ namespace WY.NewJit.Job.ConsoleApp.Messages |
|
|
|
//string errorMsg = $"报文车型{ediVehicleModel}没有对应的零件生产工厂车型!";
|
|
|
|
//_logRemindDomainService.WriteLogRemind("报文格式转换", errorMsg, LogTypeEnum.M100);
|
|
|
|
//_logger.LogError(errorMsg);
|
|
|
|
msgReceObj.ErrorCount = 4; |
|
|
|
string errorMsg = $"报文车型{ediVehicleModel}没有对应的零件生产工厂车型:{msgReceObj.MessageFileName}"; |
|
|
|
throw new Exception(errorMsg); //车型不存在,直接返回解析失败,程序执行中断,报警(不进入未知总成)
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|