コード例 #1
0
        // Void Merchandise Transfer out
        public bool MDSETransferVoidWS(string storeNo, string transNumber, out string errorMessage)
        {
            bool transferWebService = false;

            TransferService.VMRequestType req = new TransferService.VMRequestType();
            req.serviceInformation = new serviceInformationType();

            req.serviceInformation.source               = new endpointType();
            req.serviceInformation.source.systemId      = "P2";
            req.serviceInformation.source.systemName    = "Cashlinx Phase 2";
            req.serviceInformation.source.systemVersion = "4.0";
            var conf        = SecurityAccessor.Instance.EncryptConfig;
            var transferEsb = conf.GetMDSETransferService();

            req.serviceInformation.domain = conf.DecryptValue(transferEsb.Domain);

            req.serviceInformation.shopNumber    = ShopNumber;
            req.serviceInformation.terminalID    = TerminalID;
            req.serviceInformation.userID        = UserID;
            req.serviceInformation.transactionID = TransactionID;
            req.serviceInformation.timeStamp     = CurrentDateTime;

            req.serviceData = new TransferService.VMRequestTypeServiceData();
            req.serviceData.VoidTransfer                = new VoidTransferType();
            req.serviceData.VoidTransfer.storeNumber    = storeNo;
            req.serviceData.VoidTransfer.transferNumber = transNumber;

            TransferService.VMReplyType response = portClient.CreateVoidedMissile(req);

            transferWebService = HandleWSResponseForVoid(response, out errorMessage, transNumber);

            portClient.Close();

            return(transferWebService);
        }
コード例 #2
0
        private bool HandleWSResponseForVoid(TransferService.VMReplyType replydata, out string errorMessage, string transNumber)
        {
            bool transferWebService = false;

            if (replydata.serviceInformation != null)
            {
                //check whether there is a general exception
                if (replydata.serviceInformation.status != null &&
                    replydata.serviceInformation.status.exceptionCode != null)
                {
                    ErrorMessage = replydata.serviceInformation.status.exceptionCode.ToString() +
                                   replydata.serviceInformation.status.sourceMessage;
                    FileLogger.Instance.logMessage(LogLevel.ERROR, this, "Void Transfer web service came back with errors for" + transNumber
                                                   + replydata.serviceInformation.status.exceptionCode.ToString() +
                                                   replydata.serviceInformation.status.sourceMessage);
                }

                if (replydata.serviceData != null && replydata.serviceData.Items != null)
                {
                    if (replydata.serviceData.Items[0].GetType() != typeof(businessExceptionType))
                    {
                        //check the reply
                        transferWebService = true;
                    }
                    else
                    {
                        businessExceptionType returnData = (businessExceptionType)replydata.serviceData.Items[0];
                        ErrorMessage = returnData.responseCode.ToString() +
                                       returnData.message;
                        FileLogger.Instance.logMessage(LogLevel.ERROR, this, "Void Transfer web service returned with business exception for" + transNumber +
                                                       returnData.responseCode.ToString() +
                                                       returnData.message);
                        transferWebService = false;
                    }
                }
                else
                //No data came back from the web service call...log it
                {
                    transferWebService = true;
                    FileLogger.Instance.logMessage(LogLevel.ERROR, this, "Void Transfer web service did not return any data ");
                }
            }
            errorMessage = ErrorMessage;
            return(transferWebService);
        }