Example #1
0
        public async Task <IDataResult <List <CustomerCreditCardDto> > > GetCardsByCustomerIdAsync(int customerId)
        {
            var customerCreditCardsResult = await _customerCreditCardDal.GetAllNoTrackingAsync(p => p.UserId == customerId);

            if (customerCreditCardsResult.Count == 0)
            {
                return(new ErrorDataResult <List <CustomerCreditCardDto> >(null, Messages.CustomerCreditCardFound));
            }

            var customerCreditCardDtoList = new List <CustomerCreditCardDto>();

            foreach (var creditCard in customerCreditCardsResult)
            {
                customerCreditCardDtoList.Add(new CustomerCreditCardDto()
                {
                    UserId            = creditCard.UserId,
                    CardNumber        = creditCard.CardNumber,
                    CardOwnerFullName = creditCard.CardOwnerFullName,
                    Cvv        = creditCard.Cvv,
                    ExpiryDate = creditCard.ExpiryDate
                });
            }

            return(new SuccessDataResult <List <CustomerCreditCardDto> >(customerCreditCardDtoList, Messages.CreditCardsListed));
        }