public async Task <ActionResult> LikePreference(Product product) { var user = await GetCurrentUserAsync(); var currentPreference = await _context.LikeProduct .FirstOrDefaultAsync(l => l.ProductId == product.ProductId && l.UserId == user.Id); if (currentPreference == null) { var likeProduct = new LikeProduct() { UserId = user.Id, ProductId = product.ProductId, Like = true }; _context.LikeProduct.Add(likeProduct); } else if (currentPreference.Like == false) { currentPreference.Like = true; _context.LikeProduct.Update(currentPreference); } else { _context.LikeProduct.Remove(currentPreference); } await _context.SaveChangesAsync(); return(RedirectToAction("Details", "Products", new { id = product.ProductId })); }
public async Task <IActionResult> PutLikeProduct(int id, LikeProduct likeProduct) { if (id != likeProduct.LikeId) { return(BadRequest()); } _context.Entry(likeProduct).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!LikeProductExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public IHttpActionResult PutLikeProduct(int id, LikeProduct likeProduct) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != likeProduct.likeId) { return(BadRequest()); } db.Entry(likeProduct).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!LikeProductExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult PostLikeProduct(LikeProduct likeProduct) { db.LikeProducts.Add(likeProduct); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = likeProduct.likeId }, likeProduct)); }
public async Task <IResult> Add(LikeProductCreateDto likeProduct) { var lproduct = new LikeProduct { ProductId = likeProduct.ProductId, UserId = likeProduct.UserId, LikeStatus = likeProduct.LikeStatus }; await _likeProductDal.Add(lproduct); return(new SuccessResult(Messages.LikeProductAdded)); }
public IHttpActionResult DeleteLikeProduct(int id) { LikeProduct likeProduct = db.LikeProducts.Find(id); if (likeProduct == null) { return(NotFound()); } db.LikeProducts.Remove(likeProduct); db.SaveChanges(); return(Ok(likeProduct)); }