Пример #1
0
        public async Task <string> CallESBClient(ProcessInterfaceDataChangeLogsRequest request, string paymentRequestMessage, string legalEntityCode)
        {
            HttpsTransportBindingElement httpsTransport = new HttpsTransportBindingElement();

            httpsTransport.AuthenticationScheme = System.Net.AuthenticationSchemes.Basic;
            CustomBinding esbCustomBinding = new CustomBinding();
            TextMessageEncodingBindingElement esbTextMessageEncod = new TextMessageEncodingBindingElement();

            esbTextMessageEncod.MessageVersion = MessageVersion.CreateVersion(EnvelopeVersion.Soap12, AddressingVersion.None);
            esbTextMessageEncod.WriteEncoding  = Encoding.UTF8;

            esbCustomBinding.Elements.Add(esbTextMessageEncod);
            esbCustomBinding.Elements.Add(httpsTransport);

            var             uri = string.Format(CultureInfo.InvariantCulture, "{0}/ws/LDC.API.processPaymentOrder_v1.soap:ws/LDC_API_processPaymentOrder_v1_soap_ws_Port", _settings.EnvironmentLink);
            EndpointAddress esbRemoteAddress = new EndpointAddress(uri);

            ESBPaymentRequestClient.ws_PortTypeClient esbClient = new ESBPaymentRequestClient.ws_PortTypeClient(esbCustomBinding, esbRemoteAddress);
            esbClient.ClientCredentials.UserName.UserName = _settings.UserName;
            esbClient.ClientCredentials.UserName.Password = _settings.Password;
            string fileName = string.Format(CultureInfo.InvariantCulture, "{0}_{1}_{2}.{3}", _settings.FileNameCompany, legalEntityCode, DateTime.UtcNow.ToString("yyyyMMddHHmmss", CultureInfo.InvariantCulture), _settings.FileNameFormat);

            _logger.LogInformation("Calling ESB at {Atlas_EsbUri} with {Atlas_EsbFileName} {Atlas_EsbMessage}", uri, fileName, paymentRequestMessage);

            ESBPaymentRequestClient.processResponse esbResponse = await esbClient.processAsync(fileName, legalEntityCode, Encoding.UTF8.GetBytes(paymentRequestMessage));

            return(esbResponse.uuid);
        }
Пример #2
0
        public async Task InsertInterfaceLogsAsync(ProcessInterfaceDataChangeLogsRequest request, InterfaceStatus interfaceStatus, string message)
        {
            var queryParameters = new DynamicParameters();

            queryParameters.Add("@TransactionDocumentId", request.TransactionDocumentId);
            queryParameters.Add("@AccountingDocumentId", request.DocumentId);
            queryParameters.Add("@DocumentReference", request.DocumentReference);
            queryParameters.Add("@StatusId", interfaceStatus);
            queryParameters.Add("@InterfaceTypeId", request.BusinessApplicationType);
            queryParameters.Add("@Message", message);
            queryParameters.Add("@CompanyId", request.CompanyId);
            queryParameters.Add("@ESBResponse", request.ESBMessage);
            await ExecuteNonQueryAsync(StoredProcedureNames.InsertInterfaceLogs, queryParameters, true);
        }
Пример #3
0
        public async Task InsertOrUpdateInterfaceStatusAsync(ProcessInterfaceDataChangeLogsRequest request, InterfaceStatus interfaceStatus)
        {
            var queryParameters = new DynamicParameters();

            queryParameters.Add("@TransactionDocumentId", request.TransactionDocumentId);
            queryParameters.Add("@DocumentReference", request.CashDocumentRef);
            queryParameters.Add("@StatusId", interfaceStatus);
            queryParameters.Add("@InterfaceTypeId", request.BusinessApplicationType);
            queryParameters.Add("@AcknowledgementId", request.AcknowledgementId);
            queryParameters.Add("@CompanyId", request.CompanyId);
            queryParameters.Add("@DocumentDate", request.DocumentDate.GetValueOrDefault() == default(DateTime) ? DateTime.UtcNow : request.DocumentDate);
            queryParameters.Add("@Uuid", request.UUID);

            await ExecuteNonQueryAsync(StoredProcedureNames.InsertOrUpdateInterfaceStatus, queryParameters, true);
        }
Пример #4
0
        public async Task InsertOrUpdateInterfaceStatusAsync(ProcessInterfaceDataChangeLogsRequest request, InterfaceStatus interfaceStatus)
        {
            var queryParameters = new DynamicParameters();

            queryParameters.Add("@TransactionDocumentId", request.TransactionDocumentId);
            queryParameters.Add("@AccountingDocumentId", request.DocumentId);
            queryParameters.Add("@DocumentReference", request.DocumentReference);
            queryParameters.Add("@StatusId", interfaceStatus);
            queryParameters.Add("@InterfaceTypeId", request.BusinessApplicationType);
            queryParameters.Add("@AcknowledgementId", request.AcknowledgementId);
            queryParameters.Add("@BackOfficeJournalNumber", request.JournalNumber);
            queryParameters.Add("@CompanyId", request.CompanyId);
            queryParameters.Add("@TransactionDate", request.TransactionDate);
            queryParameters.Add("@TimeStamp", request.TimeStamp);
            queryParameters.Add("@Uuid", request.UUID);
            await ExecuteNonQueryAsync(StoredProcedureNames.InsertOrUpdateInterfaceStatus, queryParameters, true);
        }
Пример #5
0
        public async Task <ActionResult> ProcessPaymentRequestdatachangelog(ProcessInterfaceDataChangeLogsRequest processInterfaceDataChangeLogsRequest)
        {
            await _mediator.Send(processInterfaceDataChangeLogsRequest);

            return(Ok());
        }
Пример #6
0
        public async Task <ActionResult> ProcessAXDataLogsRequest(ProcessInterfaceDataChangeLogsRequest processInterfaceDataChangeLogsRequest)
        {
            await _mediator.Send(processInterfaceDataChangeLogsRequest);

            return(Ok());
        }