public IActionResult AvaliarMusica([FromBody] Models.Request.AvaliacaoDto avaliacaoRequest) { var usuario = usuarioRepository.Obter(avaliacaoRequest.IdUsuario); if (usuario == null) { return(NotFound()); } var musica = musicaRepository.Obter(avaliacaoRequest.IdMusica); if (musica == null) { return(NotFound()); } var avaliacao = new Avaliacao(usuario, musica, avaliacaoRequest.Nota); var mensagens = usuarioService.Validar(avaliacao); if (mensagens.Count > 0) { return(BadRequest(mensagens)); } var avaliacaoCadastrada = usuarioRepository.AvaliarMusica(avaliacao); contexto.SaveChanges(); return(Ok(avaliacaoCadastrada)); }
public IActionResult AvaliarMusica([FromBody] Models.Request.AvaliacaoDto avaliacaoRequest) { var avaliacao = MapearDtoParaDominio(avaliacaoRequest); var mensagens = usuarioService.Validar(avaliacao); if (mensagens.Count > 0) { return(BadRequest(mensagens)); } if (usuarioRepository.AvaliarMusica(avaliacao) == 1) { database.Commit(); return(Ok()); } else { database.Commit(); return(CreatedAtRoute("GetAvaliacao", new { id = avaliacao.IdAvaliacao }, avaliacao)); } }
private Avaliacao MapearDtoParaDominio(Models.Request.AvaliacaoDto avaliacao) { return(new Avaliacao(avaliacao.IdUsuario, avaliacao.IdMusica, avaliacao.Nota)); }