public async Task <IActionResult> Create([Bind("ShoppingitemID,Quantity,ProductID,ShoppingbagID")] Shoppingitem shoppingitem) { if (ModelState.IsValid) { if (shoppingitem.Quantity == 0) { return(RedirectToAction("Overzicht", "Shoppingbags", new { id = shoppingitem.ShoppingbagID })); } var checkproduct = await _context.Shoppingitems.Include(i => i.Product).Where(i => i.ProductID == shoppingitem.ProductID && i.ShoppingbagID == shoppingitem.ShoppingbagID).FirstOrDefaultAsync(); if (checkproduct == null) { _context.Add(shoppingitem); await _context.SaveChangesAsync(); checkproduct = shoppingitem; } else { checkproduct.Quantity += shoppingitem.Quantity; _context.Update(checkproduct); await _context.SaveChangesAsync(); } return(RedirectToAction("Overzicht", "Shoppingbags", new { id = checkproduct.ShoppingbagID })); //else quantity aanpassen //redirect naar shoppingbag overzicht (new view parameters=customerid,shoppingbagid } ViewData["ProductID"] = new SelectList(_context.Products, "ProductID", "Name", shoppingitem.ProductID); ViewData["ShoppingbagID"] = new SelectList(_context.Shoppingbags, "ShoppingbagID", "ShoppingbagID", shoppingitem.ShoppingbagID); return(View(shoppingitem)); }
public async Task <IActionResult> Edit(int id, [Bind("ShoppingitemID,Quantity,ProductID,ShoppingbagID")] Shoppingitem shoppingitem) { if (id != shoppingitem.ShoppingitemID) { return(NotFound()); } if (ModelState.IsValid) { //kijken of qty = 0 if (shoppingitem.Quantity == 0) { return(RedirectToAction("Delete", "Shoppingitems", new { id = shoppingitem.ShoppingitemID })); } try { _context.Update(shoppingitem); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ShoppingitemExists(shoppingitem.ShoppingitemID)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Overzicht", "Shoppingbags", new { id = shoppingitem.ShoppingbagID })); } ViewData["ProductID"] = new SelectList(_context.Products, "ProductID", "Name", shoppingitem.ProductID); ViewData["ShoppingbagID"] = new SelectList(_context.Shoppingbags, "ShoppingbagID", "ShoppingbagID", shoppingitem.ShoppingbagID); return(View(shoppingitem)); }