public async Task <IActionResult> GetAsync([FromRoute] string token, [FromBody] Extrato extrato) { try { await _service.ValidateTokenAsync(token); IEnumerable <Extrato> extratos = default(List <Extrato>); if (extrato.DataInicio != null && extrato.DataInicio > DateTime.MinValue && extrato.DataFim != null && extrato.DataFim > DateTime.MinValue) { extratos = _domain.GetByRangeOfDate(extrato.DataInicio, extrato.DataFim); return(Ok(extratos)); } extratos = await _domain.GetByProperties(extrato.GetProperties()); return(Ok(extratos)); } catch (Exception e) { return(StatusCode(500, "Ocorreu um erro interno no servidor.")); } }