public async Task <PointIssueResponse> PointIssueAsync(AccountNumber accountNumber, CancellationToken cancellationToken = default)
        {
            try
            {
                var messageId = _messageSequencingStrategy.Next();
                var request   =
                    new PointIssueRequest(
                        TimeProvider.Now,
                        messageId,
                        accountNumber);
                var requestXml  = request.BuildRequestDocument();
                var responseXml = await _executor.ExecuteAsync(requestXml, cancellationToken);

                return(new PointIssueResponse(requestXml, responseXml));
            }
            catch (OracleHospitalityClientException)
            {
                throw;
            }
            catch (Exception e)
            {
                throw new OracleHospitalityClientException($"{TransactionKind.POINT_ISSUE} operation failed", e);
            }
        }
Beispiel #2
0
        public async Task <SetCustomerResponse> SetCustomerAsync(int?rowId, ColumnValue[] dataSetColumnValues, CancellationToken cancellationToken = default)
        {
            try
            {
                var request     = new SetCustomerRequest(_options.CustomerRelationshipManagementOperations.RequestSourceName, rowId, dataSetColumnValues);
                var requestXml  = request.BuildRequestDocument();
                var responseXml = await _executor.ExecuteAsync(requestXml, cancellationToken);

                return(new SetCustomerResponse(requestXml, responseXml));
            }
            catch (OracleHospitalityClientException)
            {
                throw;
            }
            catch (Exception e)
            {
                throw new OracleHospitalityClientException($"{RequestCode.Kind.SetCustomer} operation failed", e);
            }
        }