Пример #1
0
 private IEnumerable <TransactionResponse> FilterTransactions(GetTransactionsByDateQuery query)
 {
     return(_context.Set <Transaction>()
            .Where(x => query.Filter.From.HasValue && x.Date.Value >= query.Filter.From.Value.Date)
            .Where(x => query.Filter.To.HasValue && x.Date.Value <= query.Filter.To.Value.Date)
            .AsNoTracking()
            .AsEnumerable()
            .Select(_mapper.Map <TransactionResponse>));
 }
Пример #2
0
        public async Task <IActionResult> Get([FromQuery] DateTime?from, [FromQuery] DateTime?to)
        {
            GetTransactionsByDateQuery query = (from, to);

            var transactions = await _mediator.Send(query);

            if (transactions.Any())
            {
                return(Ok(transactions));
            }

            return(NoContent());
        }
Пример #3
0
 public async Task <IEnumerable <TransactionResponse> > Handle(GetTransactionsByDateQuery query,
                                                               CancellationToken cancellationToken)
 {
     return(FilterTransactions(query));
 }