From dd16d333bb67f2b3e17f752fe9b4068a41cf2003 Mon Sep 17 00:00:00 2001 From: me Date: Thu, 31 Jul 2025 15:22:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Messages/MsgTransmissionService.cs | 41 +++++++++++-------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Job.ConsoleApp/Messages/MsgTransmissionService.cs b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Job.ConsoleApp/Messages/MsgTransmissionService.cs index 5e3ef9b..da04b39 100644 --- a/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Job.ConsoleApp/Messages/MsgTransmissionService.cs +++ b/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Job.ConsoleApp/Messages/MsgTransmissionService.cs @@ -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子表的三个零件类型(分别更新为产线,分组,零件大类) /// /// - /// 存在没有识别的,返回该子件号 + /// 存在没有识别的,返回错误信息,否则返回空 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 /// 更新车型 /// /// - 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); //车型不存在,直接返回解析失败,程序执行中断,报警(不进入未知总成) + } } }