public List <FavoritoDTO> ListarPorUsuario(int idUsuario)
        {
            var listaFavoritos    = _favoritosRepo.ListarPorUsuario(idUsuario);
            var listaFavoritosDTO = FavoritoDTO.From(listaFavoritos);

            return(listaFavoritosDTO);
        }
Exemplo n.º 2
0
        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;
            }
        }
Exemplo n.º 3
0
        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);
 }
Exemplo n.º 6
0
 public Favorito(FavoritoDTO dto)
 {
     this.PostId       = dto.PostId;
     this.UsuarioId    = dto.UsuarioId;
     this.ComentarioId = dto.ComentarioId;
 }
Exemplo n.º 7
0
 public void Delete(FavoritoDTO favorito)
 {
     _favoritosService.Remover(favorito);
 }
Exemplo n.º 8
0
 public void Post([FromBody] FavoritoDTO favorito)
 {
     _favoritosService.Inserir(favorito);
 }