public IResponse Visit(CreateCreditCardRequest request) { return(_restWrapper.Post <CreateCreditCardRequestBody, CreditCard>(request.Body, uri: GetEndpoint(request), accessTokenHeader: GetHeaderToken(request), actions: GetCustomResponseHandlers(request))); }
internal static CreateCreditCardRequest BuildCreateCreditCardRequest() { var request = new CreateCreditCardRequest() { Number = "4556604245849434", HolderName = "VITOR DE ANDRADE", Cvv = "123", ExpMonth = 12, ExpYear = 21, Brand = "Visa", BillingAddress = new CreateAddressRequest() { City = "City", Complement = "Complement", Country = "BR", Neighborhood = "Neighborhood", Number = "123", State = "RJ", Street = "Street", ZipCode = "22221010" } }; return(request); }
public CreditCard CreateCreditCard(string accessToken, string encryptedNumber, string encryptedExpirationMonth, string encryptedExpirationYear, string encryptedCvv, string postalCode) { CreateCreditCardRequest request = new CreateCreditCardRequest(accessToken, encryptedNumber, encryptedExpirationMonth, encryptedExpirationYear, encryptedCvv, postalCode); return(request.Accept(_engine) as CreditCard); }
public CreditCard CreateCreditCard(string accessToken, string encryptedNumber, string encryptedExpirationMonth, string encryptedExpirationYear, string encryptedCvv, string postalCode) { CreateCreditCardRequest request = new CreateCreditCardRequest(accessToken, encryptedNumber, encryptedExpirationMonth, encryptedExpirationYear, encryptedCvv, postalCode); return(_restWrapper.Post <CreateCreditCardRequestBody, CreditCard>( request.Body, uri: BuildUri(request.ApiVersion, "credit_cards"), accessTokenHeader: FormatAccessTokenString(unspecifiedUserAccessToken: request.AccessToken), actions: null)); }
private CreditCard CreateCreditCard(CreateCreditCardRequest request) { if (request != null) { return(new CreditCard() { CreditCardNo = request.CreditCardNo, PIN = request.PIN, ExpirationDate = request.ExpirationDate, BankAccountId = request.BankAccountId, CreatedBy = _httpContextAccessor.HttpContext.User.Identity.Name }); } return(null); }
/// <summary> /// Add or Edit an existing credit card /// </summary> /// <param name="creditCardId"></param> /// <param name="request"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task <Response> AddOrEditCreditCardAsync(int creditCardId, CreateCreditCardRequest request, CancellationToken cancellationToken = default) { var responseModel = new Response(); if (creditCardId != 0) { var creditCard = await _creditCardsRepo.FindByIdAsync(creditCardId); try { if (creditCard != null) { creditCard.CreditCardNo = request.CreditCardNo; creditCard.ExpirationDate = request.ExpirationDate; creditCard.BankAccountId = request.BankAccountId; creditCard.LastModifiedBy = _httpContextAccessor.HttpContext.User.Identity.Name; creditCard.LastModifiedOn = DateTime.UtcNow; await _creditCardsRepo.UpdateAsync(creditCard); } else { responseModel.AddError(ExceptionCreator.CreateNotFoundError(nameof(creditCard), $"credit card of id: {creditCardId} not found")); return(responseModel); } } catch (Exception ex) { responseModel.AddError(ExceptionCreator.CreateInternalServerError(ex.ToString())); } } else { try { await _creditCardsRepo.AddAsync(CreateCreditCard(request)); } catch (Exception ex) { responseModel.AddError(ExceptionCreator.CreateInternalServerError(ex.ToString())); } } return(responseModel); }
public virtual T Visit(CreateCreditCardRequest request) { return(DEFAULT_FUNC(request)); }
public string Visit(CreateCreditCardRequest request) { return(BuildUri(request.ApiVersion, "credit_cards")); }
public async Task <IActionResult> AddOrEditCreditCard([FromRoute] int creditCardId, [FromBody] CreateCreditCardRequest request, CancellationToken cancellationToken = default) { var apiResponse = new Response(); var user = await _userManager.GetUserAsync(User); var customer = await _customerService.GetCustomerByCreditCardIdsync(creditCardId, cancellationToken); if (customer == null) { apiResponse.AddError(ExceptionCreator.CreateNotFoundError(nameof(customer))); return(NotFound(apiResponse)); } if (user.Id != customer?.Data?.UserId) { apiResponse.AddError(ExceptionCreator.CreateBadRequestError(nameof(user), "user is not authorized to complete this operation")); return(BadRequest(apiResponse)); } try { apiResponse = await _creditCardsService.AddOrEditCreditCardAsync(creditCardId, request, cancellationToken); if (apiResponse.Success) { return(Ok(apiResponse)); } else if (apiResponse.Errors[0].Code == StatusCodes.Status404NotFound) { return(NotFound(apiResponse)); } return(BadRequest(apiResponse)); } catch (Exception exception) { return(_actionResultMapper.Map(exception)); } }