public HttpResponseMessage AdicionarResposta([FromBody] RespostaModel respostaModel, int idPergunta) { var usuario = usuariosRepositorio.ObterPorEmail(Thread.CurrentPrincipal.Identity.Name); var pergunta = perguntasRepositorio.ObterPorId(idPergunta); var resposta = new Resposta(usuario, pergunta, respostaModel.Descricao); if (!resposta.EhValida()) { return(ResponderErro(resposta.Mensagens)); } respostasRepositorio.Criar(resposta); badgeService.UsuarioFezPergunta(usuario); //papudo badgeService.UsuarioRecebeuResposta(pergunta.Usuario, idPergunta); return(ResponderOK()); }
public HttpResponseMessage Deletar(Pergunta pergunta) { if (perguntasRepositorio.ObterPorId(pergunta.Id) == null) { throw new Exception(); } perguntasRepositorio.Deletar(pergunta); return(ResponderOK(pergunta)); }
public IActionResult Atualizar(int PerguntaId, PerguntaDto perguntaModel) { try{ var pergunta = _perguntaRepositorio.ObterPorId(PerguntaId).Result; if (pergunta == null) { return(NotFound()); } _perguntaRepositorio.Atualizar(pergunta); var result = _mapper.Map <PerguntaDto>(pergunta); return(Created($"api/pergunta/v1/obterporid/{result.Id}", result)); } catch (System.Exception) { return(this.StatusCode(StatusCodes.Status500InternalServerError, "Banco de Dados Falou")); } }