public IActionResult Post(CompromissoCadastroModel model, [FromServices] ICompromissoRepository repository, [FromServices] IMapper mapper) { if (ModelState.IsValid) { try { var compromisso = mapper.Map <Compromisso>(model); repository.Inserir(compromisso); return(Ok("Compromisso cadastrado com sucesso.")); } catch (Exception e) { return(StatusCode(500, e.Message)); } } else { return(BadRequest()); } }
public IActionResult CadastroCompromisso(CompromissoCadastroModel model, [FromServices] UsuarioRepository usuarioRepository, [FromServices] CompromissoRepository compromissoRepository) { //verificar se todos os campos da model passaram nas regras de validação if (ModelState.IsValid) { try { //buscar no banco de dados os dados do usuario autenticado atraves do email var usuario = usuarioRepository.GetByEmail(User.Identity.Name); var compromisso = new Compromisso(); compromisso.Titulo = model.Titulo; compromisso.Descricao = model.Descricao; compromisso.DataInicio = DateTime.Parse(model.DataInicio); compromisso.HoraInicio = TimeSpan.Parse(model.HoraInicio); compromisso.DataFim = DateTime.Parse(model.DataFim); compromisso.HoraFim = TimeSpan.Parse(model.HoraFim); compromisso.IdUsuario = usuario.IdUsuario; compromisso.Categoria = model.Categoria; //gravar o compromisso no banco de dados compromissoRepository.Create(compromisso); TempData["MensagemSucesso"] = $"Compromisso {compromisso.Titulo} cadastrado com sucesso."; ModelState.Clear(); //limpar o conteudo do formulario } catch (Exception e) { TempData["MensagemErro"] = e.Message; } } return(View()); }