/// <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);
            }
        }
Beispiel #2
0
        /// <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);
            }
        }
Beispiel #3
0
        /// <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);
            }
        }
Beispiel #4
0
        /// <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);
            }
        }
Beispiel #5
0
        /// <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);
            }
        }
Beispiel #7
0
        /// <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);
            }
        }