예제 #1
0
 /// <summary>
 /// This function will call the ProcessRequisitionDocument Method internally and will make async result compelted
 /// </summary>
 /// <param name="state">current MeridianAsyncResult </param>
 /// <returns></returns>
 private void CompleteRequisitionProcess(object state)
 {
     var meridianAsyncResult = state as MeridianAsyncResult;
     ProcessRequisition objProcessRequisition = new ProcessRequisition();
     meridianAsyncResult.Result = objProcessRequisition.ProcessRequisitionDocument(meridianAsyncResult.CurrentOperationContext);
     meridianAsyncResult.Completed();
 }
예제 #2
0
        /// <summary>
        /// Soap Method to pass xCBL XML data to the web serivce
        /// </summary>
        /// <param name="Requisition">XmlElement the xCBL XML data to parse</param>
        /// <returns>XElement - XML Message Acknowledgement response indicating Success or Failure</returns>
        public XElement Requisition()
        {
            ProcessRequisition objProcessRequisition = new ProcessRequisition();
            var meridianResult = objProcessRequisition.ProcessRequisitionDocument(OperationContext.Current);

            if (!meridianResult.Status.Equals(MeridianGlobalConstants.MESSAGE_ACKNOWLEDGEMENT_FAILURE, StringComparison.OrdinalIgnoreCase))
            {
                meridianResult.Status = SendFileToFTP(meridianResult).GetAwaiter().GetResult() ? MeridianGlobalConstants.MESSAGE_ACKNOWLEDGEMENT_SUCCESS : MeridianGlobalConstants.MESSAGE_ACKNOWLEDGEMENT_FAILURE;
            }
            return(XElement.Parse(MeridianSystemLibrary.GetMeridian_Status(meridianResult.Status, meridianResult.UniqueID, meridianResult.IsSchedule)));
        }
예제 #3
0
        /// <summary>
        /// This function will call the ProcessRequisitionDocument Method internally and will make async result compelted
        /// </summary>
        /// <param name="state">current MeridianAsyncResult </param>
        /// <returns></returns>
        private void CompleteRequisitionProcess(object state)
        {
            var meridianAsyncResult = state as MeridianAsyncResult;
            ProcessRequisition objProcessRequisition = new ProcessRequisition();

            if (MeridianGlobalConstants.CONFIG_AWC_REQUISITION_TEST)
            {
                meridianAsyncResult.Result = objProcessRequisition.ProcessRequisitionDocumentAWCTest(meridianAsyncResult.CurrentOperationContext);
            }
            else
            {
                meridianAsyncResult.Result = objProcessRequisition.ProcessRequisitionDocument(meridianAsyncResult.CurrentOperationContext);
            }

            meridianAsyncResult.Completed();
        }
예제 #4
0
        /// <summary>
        /// This function will call the ProcessDocument Method internally and will make async result compelted
        /// </summary>
        /// <param name="state">current MeridianAsyncResult </param>
        /// <returns></returns>
        private void CompleteProcess(object state)
        {
            var meridianAsyncResult = state as MeridianAsyncResult;

            if (CommonProcess.IsShippingScheduleRequest(meridianAsyncResult.CurrentOperationContext))
            {
                ProcessShippingSchedule objProcessShippingSchedule = new ProcessShippingSchedule();
                meridianAsyncResult.Result = objProcessShippingSchedule.ProcessDocument(meridianAsyncResult.CurrentOperationContext);
            }
            else
            {
                ProcessRequisition objProcessRequisition = new ProcessRequisition();
                meridianAsyncResult.Result = objProcessRequisition.ProcessRequisitionDocument(meridianAsyncResult.CurrentOperationContext);
            }
            meridianAsyncResult.Completed();
        }