public async Task <string> DeleteProductFromWishList(int?id) { try { if (id != null) { if (HttpContext.User.Identity.IsAuthenticated) { ProductWishList productWishList = await _baselDb.AppUsers .Where(x => x.UserName == HttpContext.User.Identity.Name) .Include(x => x.WishList).ThenInclude(x => x.ProductWishLists) .Select(x => x.WishList).SelectMany(x => x.ProductWishLists) .Where(x => x.ProductId == id) .SingleOrDefaultAsync(); AppUser appUser = await _baselDb.AppUsers .Where(x => x.UserName == HttpContext.User.Identity.Name) .Include(x => x.WishList).ThenInclude(x => x.ProductWishLists) .SingleOrDefaultAsync(); appUser.WishList.ProductWishLists.Remove(productWishList); await _baselDb.SaveChangesAsync(); return("Product deleted from WishList"); } return("Please, Sign in to Site"); } } catch (Exception) { throw; } return(""); }
internal int Create(ProductWishList newPWL) { string sql = @" INSERT INTO productWish (productId, wishListId, creatorId) VALUES (@ProductId, @WishListId, @CreatorId); SELECT LAST_INSERT_ID();"; return(_db.ExecuteScalar <int>(sql, newPWL)); }
public async Task <ActionResult <ProductWishList> > Create([FromBody] ProductWishList newPWL) { try { Profile userInfo = await HttpContext.GetUserInfoAsync <Profile>(); newPWL.CreatorId = userInfo.Id; ProductWishList created = _pwl.Create(newPWL); return(Ok(created)); } catch (System.Exception e) { return(BadRequest(e.Message)); } }
// POST: api/Whichlists public void postAddProductTowishList(int id) { //get cart of current logged user var userID = "1";//User.Identity.GetUserId(); var wishListID = Getwhichlist().Where(c => c.UserID == userID) .Select(c => c.ID).FirstOrDefault(); var productWishList = new ProductWishList() { wishListID = wishListID, ProductID = id }; db.ProductWishLists.Add(productWishList); db.SaveChanges(); }
internal ProductWishList Create(ProductWishList newPWL) { newPWL.Id = _repo.Create(newPWL); return(newPWL); }
public async Task <string> WishListAddProduct(int?id) { try { if (HttpContext.User.Identity.IsAuthenticated) { if (id != null) { AppUser appUser = await _baselDb .AppUsers.Where(x => x.UserName == HttpContext.User.Identity.Name) .Include(x => x.WishList).ThenInclude(x => x.ProductWishLists) .SingleOrDefaultAsync(); if (appUser != null) { Product product = await _baselDb.Products .Where(x => x.Id == id) .SingleOrDefaultAsync(); if (product != null) { if (appUser.WishList == null) { List <ProductWishList> productWishLists = new List <ProductWishList> { new ProductWishList() { Product = product } }; WishList wishList = new WishList { AppUser = appUser, ProductWishLists = productWishLists, AppUserId = appUser.Id }; await _baselDb.WishLists.AddAsync(wishList); await _baselDb.SaveChangesAsync(); WishList newWishList = await _baselDb.WishLists .Where(x => x.AppUserId == appUser.Id) .SingleOrDefaultAsync(); appUser.WishListId = newWishList.Id; } else { if (!appUser.WishList.ProductWishLists .Any(x => x.ProductId == id)) { ProductWishList productWishList = new ProductWishList() { Product = product, ProductId = product.Id }; appUser.WishList.ProductWishLists.Add(productWishList); } } await _baselDb.SaveChangesAsync(); return("Product Added to WishList"); } } } } else { return("Please, Sign in to the Site"); } } catch (Exception) { throw; } return(""); }