public ActionResult <IEnumerable <ListagemMovimentacaoFundoViewModel> > Get([FromServices] IMovimentoApplication application, [FromServices] IMapper mapper) { try { var movimentos = application.Listar(); return(mapper.Map <List <ListagemMovimentacaoFundoViewModel> >(movimentos)); } catch (Exception) { //TODO: Logar a exception return(BadRequest("Erro ao listar Fundos.")); } }
public ActionResult Post([FromServices] IMovimentoApplication application, [FromServices] IMapper mapper, [FromBody] InclusaoMovimentacaoFundoViewModel model) { if (ModelState.IsValid) { try { var movimentacao = mapper.Map <Movimentacao>(model); if (model.TipoMovimentacao == TipoMovimentoFundoViewModel.Aplicacao) { application.Resgatar(movimentacao); } else { application.Aplicar(movimentacao); } var movimento = model.TipoMovimentacao == TipoMovimentoFundoViewModel.Aplicacao ? "Aplicação" : "Resgate"; return(Ok($"{movimento} realizado com sucesso.")); } catch (DomainServiceException ex) { return(StatusCode(500, ex)); } catch (Exception) { //TODO: Logar a exception return(StatusCode(500, "Erro ao incluir movimento no fundo.")); } } else { return(BadRequest(ModelState)); } }