public List <FavoritoDTO> ListarPorUsuario(int idUsuario) { var listaFavoritos = _favoritosRepo.ListarPorUsuario(idUsuario); var listaFavoritosDTO = FavoritoDTO.From(listaFavoritos); return(listaFavoritosDTO); }
public async Task <ActionResult> Favoritar([FromBody] FavoritoDTO model, [FromServices] MaiaContext context) { try { var favorito = model.ToFavorito(); var favoritoAntigo = await context.Favoritos .Where(f => f.PostId == favorito.PostId && f.UsuarioId == favorito.UsuarioId) .FirstOrDefaultAsync(); if (favoritoAntigo != null) { favoritoAntigo.Ativo = true; } else { context.Favoritos.Add(favorito); } var post = context.Posts.Where(p => p.Id == model.PostId).FirstOrDefault(); post.QuantFav = post.QuantFav + 1; if (await context.SaveChangesAsync() > 0) { return(Ok()); } return(BadRequest()); } catch (Exception e) { throw e; } }
public async Task <ActionResult> Desfavoritar([FromBody] FavoritoDTO model, [FromServices] MaiaContext context) { try { context.Favoritos.FirstOrDefault( f => f.PostId == model.PostId && f.UsuarioId == model.UsuarioId ).Ativo = false; context.Posts.FirstOrDefault(p => p.Id == model.PostId).QuantFav--; await context.SaveChangesAsync(); return(Ok()); } catch (Exception e) { throw e; } }
public void Remover(FavoritoDTO favorito) { _favoritosRepo.Remover(favorito.FavoritoId); }
public void Inserir(FavoritoDTO favorito) { _favoritosRepo.Inserir(favorito.UsuarioId, favorito.LivroIsbn); }
public Favorito(FavoritoDTO dto) { this.PostId = dto.PostId; this.UsuarioId = dto.UsuarioId; this.ComentarioId = dto.ComentarioId; }
public void Delete(FavoritoDTO favorito) { _favoritosService.Remover(favorito); }
public void Post([FromBody] FavoritoDTO favorito) { _favoritosService.Inserir(favorito); }