public ActionResult <EventoResponse> PutEvento([FromBody] EventoRequest eventoRequest, string id) { Evento evento = _eventoRepository.GetEvento(id); if (evento != null) { if (evento.Casa.UsuarioEmail != User.Identity.Name) { return(BadRequest("Só é possível editar um evento que você criou.")); } var eventoUpdate = eventoRequest.ToEvento(); eventoUpdate.Id = id; bool deu = _eventoRepository.Update(eventoUpdate); if (deu) { var casaUri = Url.Action("GetCasa", "Casa", new{ id = eventoUpdate.CasaId }); var uriVendas = Url.Action("GetVendas", new{ id = eventoUpdate.Id }); return(eventoUpdate.ToEventoResponse(casaUri, uriVendas)); } return(NotFound("Casa não existe.")); } return(BadRequest("Evento não existe.")); }
public ActionResult <EventoResponse> PostEvento([FromBody] EventoRequest eventoRequest) { if (ModelState.IsValid) { Evento evento = eventoRequest.ToEvento(); bool deu = _eventoRepository.Add(evento, User.Identity.Name); if (deu) { var uriEvento = Url.Action("GetEvento", new{ id = evento.Id }); var uriCasa = Url.Action("GetCasa", "Casa", new{ id = evento.CasaId }); var uriVendas = Url.Action("GetVendas", new{ id = evento.Id }); return(Created(uriEvento, evento.ToEventoResponse(uriCasa, uriVendas))); } return(BadRequest("Você não criou esta casa.")); } return(BadRequest("Requisição inválida.")); }