public async Task <IActionResult> Get([FromQuery] GetCardListRequest request)
        {
            var query = new GetCardListQuery()
            {
                CardHolder = request.CardHolder,
                ChargeDate = request.ChargeDate,
                Number     = request.Number,
                Limit      = request.Limit,
                Offset     = request.Offset
            };

            var result = await queryDispatcher.ExecuteAsync(query);

            if (!result.Any())
            {
                return(NotFound(query));
            }

            var respose = result.Select(x => new GetCardListResponse()
            {
                Id                       = x.Id,
                Number                   = x.Number,
                CardHolder               = x.CardHolder,
                ExpirationDate           = x.ExpirationDate,
                HighestTransactionAmount = x.HighestTransactionAmount,
                HighestTransactionId     = x.HighestTransactionId
            });

            return(Ok(respose));
        }
        public async Task <IEnumerable <Card> > Handle(GetCardListQuery request, CancellationToken cancellationToken)
        {
            var list = _cardRepository.Get();

            return(list);
        }