using ApiTool.Dto; using LogTool; using WcsMain.DataBase.Dao; using WcsMain.DataBase.TableEntity; using WcsMain.DataService; using WcsMain.WcsAttribute.AutoFacAttribute; namespace WcsMain.Business.CommonAction; /// /// WMS 接口响应触发事件 /// [Component] public class WMSApiResponseAction(DataBaseData dataBaseData, AppApiRequestDao apiRequestDao) { /// /// 当请求其他系统时触发本方法 /// /// public void WMSApiResponse(ApiResponseInfo responseInfo) { try { // 写日志 WcsLog.Instance().WriteApiRequestLog(responseInfo.ToString()); // 存库 AppApiRequest insertData = new() { RequestId = dataBaseData.GetNewUUID(), RequestUrl = responseInfo.RequestUrl, RequestMethod = responseInfo.RequestMethod, IsSuccess = responseInfo.IsSend ? 1 : 0, RequestMsg = responseInfo.RequestMsg, ResponseMsg = responseInfo.ResponseMsg, RequestTime = responseInfo.RequestTime, ResponseTime = responseInfo.ResponseTime, UseTime = responseInfo.UseTime, ErrMsg = responseInfo.RequestException?.Message, }; apiRequestDao.Insert(insertData); } catch (Exception ex) { ConsoleLog.Error($"【异常】写接口日志发生异常,信息:{ex}"); } } }