Esempio n. 1
0
        public async Task <GetPaymentMethodDto> AddAsync(AddPaymentMethodDto addPaymentMethodDto, CancellationToken ct = default)
        {
            _logger.LogInformation("Add new payment method for account {AccountId}", addPaymentMethodDto.AccountId);

            PaymentMethod paymentMethod = PaymentMethod.Create(
                addPaymentMethodDto.AccountId,
                addPaymentMethodDto.Name,
                addPaymentMethodDto.CardNumber,
                addPaymentMethodDto.CardHolderFullName,
                addPaymentMethodDto.Expiration,
                addPaymentMethodDto.Cvv);

            _unitOfWork.PaymentMethodRepository.Create(paymentMethod);

            await _unitOfWork.SaveAsync(ct);

            return(_mapper.Map <GetPaymentMethodDto>(paymentMethod));
        }
        protected override async Task <GetPaymentMethodDto> ExecuteAsync(CreatePaymentMethodCommand request, CancellationToken ct)
        {
            AddPaymentMethodDto paymentMethodDto = _mapper.Map <AddPaymentMethodDto>(request);

            return(await _paymentMethodService.AddAsync(paymentMethodDto, ct));
        }