[HttpGet("consultartodos")] //requisição do tipo GET //URL:api/[controller]/consultar public ActionResult <List <Funcionario> > ConsultarTodos() { List <Funcionario> lista = new List <Funcionario>(); try { foreach (Funcionario f in business.ConsultarTodos()) { Funcionario fun = new Funcionario(); fun.FuncionarioId = f.FuncionarioId; fun.AddNome(f.Nome); fun.AddSalario(f.Salario); fun.AddDataAdmissao(f.DataAdmissao); lista.Add(fun); } return(lista); } catch (Exception e) { return(new ContentResult { Content = e.Message, ContentType = "text/plain", StatusCode = 400 }); } }
[HttpPost("cadastrar")] //requisição do tipo POST //URL:api/[controller]/cadastrar public ActionResult Cadastrar(FuncionarioCadastroRequest request) { //var response = new FuncionarioCadastroResponse(); if (ModelState.IsValid) { try { Funcionario f = new Funcionario(); f.AddNome(request.Nome); f.AddSalario(Convert.ToDecimal(request.Salario)); f.AddDataAdmissao(Convert.ToDateTime(request.DataAdmissao)); business.Cadastrar(f); return(new ContentResult { Content = $"Funcionário {request.Nome} | Cadastrado com sucesso !", ContentType = "text/plain", StatusCode = 200 }); } catch (Exception e) { return(new ContentResult { Content = e.Message, ContentType = "text/plain", StatusCode = 400 }); } } else { erros = ObterMensagensDeValidacao(ModelState); return(new ContentResult { Content = string.Join(",", erros), ContentType = "text/plain", StatusCode = 400 }); } }