public IActionResult RetornaExtrato(string contaId, [FromQuery] TransferenciaFiltro filtro, [FromQuery] TransferenciaOrdem ordem, [FromQuery] TransferenciaPaginacao paginacao) { if (ModelState.IsValid) { try { var extrato = _transferenciaService.RetornaExtrato(contaId, filtro, ordem, paginacao); if (extrato == null) { return(NotFound()); } return(Ok(extrato)); } catch (Exception ex) { return(BadRequest(ex.Message)); } } return(BadRequest()); }
public ExtratoPaginado RetornaExtrato(string contaId, TransferenciaFiltro filtro, TransferenciaOrdem ordem, TransferenciaPaginacao paginacao) { var lista = _repoTransf.GetTransacoesPorContaId(contaId) .AplicaFiltro(filtro) .AplicaOrdenacao(ordem) .Select(l => l.ToApi()); return(ExtratoPaginado.From(paginacao, lista, contaId)); }