public RespostaModel CriarModelResposta(Resposta entidadeResposta) { var respostaModel = new RespostaModel(); respostaModel.Id = entidadeResposta.Id; respostaModel.Usuario = entidadeResposta.Usuario.converterUsuarioParaUsuarioModel(); respostaModel.Descricao = entidadeResposta.Descricao; respostaModel.DataResposta = entidadeResposta.DataResposta; respostaModel.QuantidadeUpVotes = entidadeResposta.UpVotes.Count; respostaModel.QuantidadeDownVotes = entidadeResposta.DownVotes.Count; respostaModel.EhRespostaCorreta = entidadeResposta.EhRespostaCorreta; respostaModel.DownVotes = new List <UsuarioBaseModel>(); foreach (var downvote in entidadeResposta.DownVotes) { respostaModel.DownVotes.Add(downvote.Usuario.converterUsuarioParaUsuarioModel()); } respostaModel.UpVotes = new List <UsuarioBaseModel>(); foreach (var upvote in entidadeResposta.UpVotes) { respostaModel.UpVotes.Add(upvote.Usuario.converterUsuarioParaUsuarioModel()); } respostaModel.Comentarios = new List <ComentarioRespostaModel>(); foreach (var each in entidadeResposta.Comentarios) { var comentario = new ComentarioRespostaModel(); comentario.Usuario = each.Usuario.converterUsuarioParaUsuarioModel(); comentario.Id = each.Id; comentario.DataComentario = each.DataComentario; comentario.Descricao = each.Descricao; respostaModel.Comentarios.Add(comentario); } return(respostaModel); }
public HttpResponseMessage AdicionarComentario(int idResposta, [FromBody] ComentarioRespostaModel comentarioModel) { var usuario = usuariosRepositorio.ObterPorEmail(Thread.CurrentPrincipal.Identity.Name); var resposta = respostasRepositorio.ObterPorId(idResposta); resposta.Comentar(usuario, comentarioModel.Descricao); respostasRepositorio.Alterar(resposta); return(ResponderOK()); }
private PerguntaModel CriarModelPergunta(Pergunta entidadePergunta) { var perguntaModel = new PerguntaModel(); perguntaModel.Id = entidadePergunta.Id; perguntaModel.Titulo = entidadePergunta.Titulo; perguntaModel.Usuario = entidadePergunta.Usuario.converterUsuarioParaUsuarioModel(); perguntaModel.Descricao = entidadePergunta.Descricao; perguntaModel.DataPergunta = entidadePergunta.DataPergunta; perguntaModel.Tags = new List <TagModel>(); perguntaModel.DownVotes = new List <UsuarioBaseModel>(); perguntaModel.UpVotes = new List <UsuarioBaseModel>(); var tags = entidadePergunta.Tags; foreach (var tag in tags) { var tagModel = new TagModel(); tagModel.Id = tag.Id; tagModel.Descricao = tag.Descricao; perguntaModel.Tags.Add(tagModel); } perguntaModel.Comentarios = new List <ComentarioRespostaModel>(); foreach (var each in entidadePergunta.ComentariosPergunta) { var comentario = new ComentarioRespostaModel(); comentario.Usuario = each.Usuario.converterUsuarioParaUsuarioModel(); comentario.Id = each.Id; comentario.DataComentario = each.DataComentario; comentario.Descricao = each.Descricao; perguntaModel.Comentarios.Add(comentario); } perguntaModel.QuantidadeDownVotes = entidadePergunta.DownVotes.Count(); perguntaModel.QuantidadeUpVotes = entidadePergunta.UpVotes.Count(); foreach (var each in entidadePergunta.UpVotes) { perguntaModel.UpVotes.Add(each.Usuario.converterUsuarioParaUsuarioModel()); } foreach (var each in entidadePergunta.DownVotes) { perguntaModel.DownVotes.Add(each.Usuario.converterUsuarioParaUsuarioModel()); } return(perguntaModel); }