/// <summary> /// Handler /// </summary> public void Handler() { List <InterfaceConfigInfo> interfaceConfigInfos = new InterfaceConfigBLL().GetList("[SYS_NAME] = N'" + targetSystem + "'", string.Empty); Log.WriteLogToFile("The interfaceConfigInfos.cout|" + interfaceConfigInfos.Count, AppDomain.CurrentDomain.BaseDirectory + @"\log\", DateTime.Now.ToString("yyyyMMddHHmm")); if (interfaceConfigInfos.Count == 0) { return; } ///发送消息前需要获取执行结果⑨为10.submit、60.submit的数据,逐条按methodCode④提交到不同的业务处理函数内 List <QmisOutboundLogInfo> qmisOutboundLogInfos = new QmisOutboundLogBLL().GetListForUnsend(); if (qmisOutboundLogInfos.Count == 0) { return; } foreach (QmisOutboundLogInfo srmOutboundInfo in qmisOutboundLogInfos) { Log.WriteLogToFile("The srmOutboundInfo.MethodCode|" + srmOutboundInfo.MethodCode, AppDomain.CurrentDomain.BaseDirectory + @"\log\", DateTime.Now.ToString("yyyyMMddHHmm")); ///业务处理函数开始处理之前需要根据logFid更新executeResult⑧为20.processing ///executeStartTime为当前数据库时间 ///在BLL.LES.CommonBll提供UpdateProcessingLog函数,参数为Guid logFid BLL.LES.CommonBLL.UpdateProcessingLog(targetSystem, srmOutboundInfo.Id, loginUser); ///处理结果 ExecuteResultConstants executeResult = ExecuteResultConstants.Processing; ///错误代码 string errorCode = string.Empty; ///报文内容 string msgContent = null; ///错误消息 string errorMsg = string.Empty; InterfaceConfigInfo interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToLower() == srmOutboundInfo.MethodCode.ToLower()); if (interfaceConfigInfo == null) { errorCode = "MC:3x00000021";///接口配置错误 executeResult = ExecuteResultConstants.Exception; } else { /// Log.WriteLogToFile("The switch|" + srmOutboundInfo.MethodCode, AppDomain.CurrentDomain.BaseDirectory + @"\log\", DateTime.Now.ToString("yyyyMMddHHmm")); switch (srmOutboundInfo.MethodCode.ToLower()) { ///LES-SRM-001 VMI供应商物料关系 post 形式发送数据 case "les-qmis-002": executeResult = BFDAQmisVmiAsnPullSheetBLL.SendQmisAsnPullSheet(srmOutboundInfo.Fid, interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; } } if (!string.IsNullOrEmpty(errorCode)) { errorMsg = GetMessage(ref errorCode); } ///更新任务状态 BLL.LES.CommonBLL.UpdateResultLog(targetSystem, srmOutboundInfo.Id, executeResult, msgContent, errorCode, errorMsg, loginUser); } }
/// <summary> /// 主函数 /// </summary> public void Handler() { List <InterfaceConfigInfo> interfaceConfigInfos = new InterfaceConfigBLL().GetList("[SYS_NAME] = N'" + targetSystem + "'", string.Empty); if (interfaceConfigInfos.Count == 0) { return; } ///接口配置 InterfaceConfigInfo interfaceConfigInfo = null; ///SRM-LES-003,物料发货单 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "SRM-LES-003"); if (interfaceConfigInfo != null) { SyncVmiShippingNoteBLL.Sync(loginUser); } ///SRM-LES-006,物料送货单 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "SRM-LES-006"); if (interfaceConfigInfo != null) { SyncDeliveryNoteBLL.Sync(loginUser); } ///SRM-LES-007,SRM箱标签 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "SRM-LES-007"); if (interfaceConfigInfo != null) { SyncBarcodesBLL.Sync(loginUser); } }
/// <summary> /// Handler /// </summary> public void Handler() { List <InterfaceConfigInfo> interfaceConfigInfos = new InterfaceConfigBLL().GetList("[SYS_NAME] = N'" + targetSystem + "'", string.Empty); if (interfaceConfigInfos.Count == 0) { return; } ///发送消息前需要获取执行结果⑨为10.submit、60.submit的数据,逐条按methodCode④提交到不同的业务处理函数内 List <VmiOutboundLogInfo> vmiOutboundLogInfos = new VmiOutboundLogBLL().GetListForUnsend(); if (vmiOutboundLogInfos.Count == 0) { return; } foreach (VmiOutboundLogInfo vmiOutboundLogInfo in vmiOutboundLogInfos) { ///业务处理函数开始处理之前需要根据logFid更新executeResult⑧为20.processing ///executeStartTime为当前数据库时间 ///在BLL.LES.CommonBll提供UpdateProcessingLog函数,参数为Guid logFid BLL.LES.CommonBLL.UpdateProcessingLog(targetSystem, vmiOutboundLogInfo.Id, loginUser); ///处理结果 ExecuteResultConstants executeResult = ExecuteResultConstants.Processing; ///错误代码 string errorCode = string.Empty; ///报文内容 string msgContent = null; ///错误消息 string errorMsg = string.Empty; InterfaceConfigInfo interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.Trim().ToLower() == vmiOutboundLogInfo.MethodCode.Trim().ToLower()); if (interfaceConfigInfo == null) { errorCode = "MC:3x00000021";///接口配置错误 executeResult = ExecuteResultConstants.Exception; } else { Log.WriteLogToFile("vmiOutboundLogInfo.MethodCode:" + vmiOutboundLogInfo.MethodCode.ToString().Trim(), AppDomain.CurrentDomain.BaseDirectory + @"\LOG\", DateTime.Now.ToString("yyyyMMdd")); switch (vmiOutboundLogInfo.MethodCode.ToLower()) { ///les-wms-001 物料发货单 (又名供应商发货单) LW001 // case "les-wms-001": executeResult = BFDAInboundOrderBLL.SendInboundOrder(vmiOutboundLogInfo.Fid, interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; } } if (!string.IsNullOrEmpty(errorCode)) { errorMsg = GetMessage(ref errorCode); } ///更新任务状态 BLL.LES.CommonBLL.UpdateResultLog(targetSystem, vmiOutboundLogInfo.Id, executeResult, msgContent, errorCode, errorMsg, loginUser); } }
/// <summary> /// /// </summary> public void Handler() { List <InterfaceConfigInfo> interfaceConfigInfos = new InterfaceConfigBLL().GetList("[SYS_NAME] = N'" + targetSystem + "'", string.Empty); if (interfaceConfigInfos.Count == 0) { return; } ///接口配置 InterfaceConfigInfo interfaceConfigInfo = null; ///SAP-LES-018,工厂布局基础数据 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "SAP-LES-018"); if (interfaceConfigInfo != null) { SyncPlantStructureBLL.Sync(loginUser); } ///SAP-LES-001,SAP物料基础数据同步 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "SAP-LES-001"); if (interfaceConfigInfo != null) { SyncMaintainPartsBLL.Sync(loginUser); } ///SAP-LES-003,SAP供应商配额基础数据同步 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "SAP-LES-003"); if (interfaceConfigInfo != null) { SyncSupplierPartQuotaBLL.Sync(loginUser); } ///SAP-LES-005,工作日历基础数据 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "SAP-LES-005"); if (interfaceConfigInfo != null) { SyncWorkScheduleBLL.Sync(loginUser); } ///SAP-LES-016,物料预留单接收 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "SAP-LES-016"); if (interfaceConfigInfo != null) { SyncMaterialReservationBLL.Sync(loginUser); } }
/// <summary> /// Handler /// </summary> public void Handler() { List <InterfaceConfigInfo> interfaceConfigInfos = new InterfaceConfigBLL().GetList("[SYS_NAME] = N'" + targetSystem + "'", string.Empty); if (interfaceConfigInfos.Count == 0) { return; } ///接口配置 InterfaceConfigInfo interfaceConfigInfo = null; ///WMS-LES-002,WMS库存交易记录 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "WMS-LES-002"); if (interfaceConfigInfo != null) { SyncWmsVmiTranDetailBLL.Sync(loginUser); } ///WMS-LES-006,WMS送货单 interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToUpper() == "WMS-LES-006"); if (interfaceConfigInfo != null) { SyncWmsVmiAsnRunsheetBLL.Sync(loginUser); } }
/// <summary> /// Handler /// </summary> public void Handler() { List <InterfaceConfigInfo> interfaceConfigInfos = new InterfaceConfigBLL().GetList("[SYS_NAME] = N'" + targetSystem + "'", string.Empty); if (interfaceConfigInfos.Count == 0) { return; } ///发送消息前需要获取执行结果⑨为10.submit、60.submit的数据,逐条按methodCode④提交到不同的业务处理函数内 List <SapOutboundLogInfo> sapOutboundLogInfos = new SapOutboundLogBLL().GetListForUnsend(); if (sapOutboundLogInfos.Count == 0) { return; } foreach (SapOutboundLogInfo sapOutboundLogInfo in sapOutboundLogInfos) { ///业务处理函数开始处理之前需要根据logFid更新executeResult⑧为20.processing ///executeStartTime为当前数据库时间 ///在BLL.LES.CommonBll提供UpdateProcessingLog函数,参数为Guid logFid BLL.LES.CommonBLL.UpdateProcessingLog(targetSystem, sapOutboundLogInfo.Id, loginUser); ///处理结果 ExecuteResultConstants executeResult = ExecuteResultConstants.Processing; ///错误代码 string errorCode = string.Empty; ///报文内容 string msgContent = null; ///错误消息 string errorMsg = string.Empty; InterfaceConfigInfo interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToLower() == sapOutboundLogInfo.MethodCode.ToLower()); if (interfaceConfigInfo == null) { errorCode = "MC:3x00000021";///接口配置错误 executeResult = ExecuteResultConstants.Exception; } else { /// switch (sapOutboundLogInfo.MethodCode.ToLower().Trim()) { ///物料移动数据发送至SAP TI_IFM_SAP_TRAN_OUT case "les-sap-009": executeResult = BFDAMaterialMoveBLL.SendMaterialMoveData(sapOutboundLogInfo.Fid, interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; ///LES-SAP-017 缺件影响生产订单范围 TI_IFM_SAP_PRODUCTION_ORDER_LACK_MATERIAL case "les-sap-017": executeResult = BFDAProductionOrderLackMaterialBLL.SendLackMaterialData(sapOutboundLogInfo.Fid, interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; ///LES-SAP-015 断点替换记录 TI_IFM_SAP_BREAKPOINT_REPLACE case "les-sap-015": executeResult = BFDASAPBreakpointReplaceBLL.SendBreakpointReplaceData(sapOutboundLogInfo.Fid, interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; ///LES-SAP-012 发送盘点报告 TI_IFM_SAP_INVENTORY_CHECK_REPORT case "les-sap-012": executeResult = BFDASAPInventoryCheckReportBLL.SendInventoryCheckReportData(sapOutboundLogInfo.Fid, interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; } } if (!string.IsNullOrEmpty(errorCode)) { errorMsg = GetMessage(ref errorCode); } ///更新任务状态 BLL.LES.CommonBLL.UpdateResultLog(targetSystem, sapOutboundLogInfo.Id, executeResult, msgContent, errorCode, errorMsg, loginUser); } }
/// <summary> /// Handler /// </summary> public void Handler() { List <InterfaceConfigInfo> interfaceConfigInfos = new InterfaceConfigBLL().GetList("[SYS_NAME] = N'" + targetSystem + "'", string.Empty); if (interfaceConfigInfos.Count == 0) { return; } ///发送消息前需要获取执行结果⑨为10.submit、60.submit的数据,逐条按methodCode④提交到不同的业务处理函数内 List <SrmOutboundLogInfo> vmiOutboundLogInfos = new SrmOutboundLogBLL().GetListForUnsend(); if (vmiOutboundLogInfos.Count == 0) { return; } foreach (SrmOutboundLogInfo srmOutboundInfo in vmiOutboundLogInfos) { ///业务处理函数开始处理之前需要根据logFid更新executeResult⑧为20.processing ///executeStartTime为当前数据库时间 ///在BLL.LES.CommonBll提供UpdateProcessingLog函数,参数为Guid logFid BLL.LES.CommonBLL.UpdateProcessingLog(targetSystem, srmOutboundInfo.Id, loginUser); ///处理结果 ExecuteResultConstants executeResult = ExecuteResultConstants.Processing; ///错误代码 string errorCode = string.Empty; ///报文内容 string msgContent = null; ///错误消息 string errorMsg = string.Empty; InterfaceConfigInfo interfaceConfigInfo = interfaceConfigInfos.FirstOrDefault(d => d.InterfaceCode.ToLower() == srmOutboundInfo.MethodCode.ToLower()); if (interfaceConfigInfo == null) { executeResult = ExecuteResultConstants.Exception; errorCode = "3x00000021";///接口配置错误 errorMsg = GetMessage(ref errorCode); BLL.LES.CommonBLL.UpdateResultLog(targetSystem, srmOutboundInfo.Id, executeResult, msgContent, errorCode, errorMsg, loginUser); continue; } /// switch (srmOutboundInfo.MethodCode.ToLower()) { ///LES-SRM-001 VMI供应商物料关系 √ case "les-srm-001": executeResult = BFDAVmiSupplierPartBLL.Send(srmOutboundInfo.Fid.GetValueOrDefault(), interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; ///LES-SRM-002 供货计划 √ TI_IFM_SRM_SUPPLY_PLAN case "les-srm-002": executeResult = BFDASupplyPlanBLL.Send(srmOutboundInfo.Fid.GetValueOrDefault(), interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; ///LES-WMS-004 JIS 拉动单 (排序拉动单) √ TI_IFM_SRM_JIS_PULL_ORDER case "les-srm-004": executeResult = BFDAJisPullOrderBLL.Send(srmOutboundInfo.Fid.GetValueOrDefault(), interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; /// LES-SRM-005 物料拉动单 √ TI_IFM_SRM_PULLING_ORDER case "les-srm-005": executeResult = BFDAPullingOrderBLL.Send(srmOutboundInfo.Fid.GetValueOrDefault(), interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; ///LES-SRM-008 入库数据 √ TI_IFM_SRM_TRAN_OUT case "les-srm-008": executeResult = BFDATranOutBLL.Send(srmOutboundInfo.Fid.GetValueOrDefault(), interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; /// LES-SRM-009 物料退货单 TI_IFM_SRM_PART_RETURN_SHEET case "les-srm-009": executeResult = BFDAPartReturnSheetBLL.Send(srmOutboundInfo.Fid.GetValueOrDefault(), interfaceConfigInfo, ref errorCode, ref errorMsg, out msgContent); break; } errorMsg = GetMessage(ref errorCode); Log.WriteLogToFile(logFlag, srmOutboundInfo.MethodCode + ":Handler:msgContent:" + msgContent, AppDomain.CurrentDomain.BaseDirectory + @"\log\", DateTime.Now.ToString("yyyyMMddHH")); ///更新任务状态 BLL.LES.CommonBLL.UpdateResultLog(targetSystem, srmOutboundInfo.Id, executeResult, msgContent, errorCode, errorMsg, loginUser); } }