public IActionResult OnPostReduceQuantity(int id) { CartWrapper wrapper = new CartWrapper(HttpContext.Session, _context); wrapper.ReduceQuantity(id); return(RedirectToPage()); }
public IActionResult OnPostAddToCart(int id) { CartWrapper cartWrapper = new CartWrapper(HttpContext.Session, _context); cartWrapper.AddDish(id); return(RedirectToAction("Index")); }
public ActionResult ViewCart(int?id, int?quantity) { if (id != null) { int Quantity = 0; if (Session["AddToCart"] != null) { CartWrapper Cart = (CartWrapper)Session["AddToCart"]; if (quantity == null || quantity >= 1) { Quantity = quantity.HasValue ? quantity.Value > 0 ? quantity.Value : 1 : 1; } else { Quantity = (int)quantity; } var item = _unitOfWork.PartsProducts.PartProductDetail(id, Quantity); foreach (var CartItem in Cart.PartsProductsViewModelList) { if (CartItem.PartsProductId == item.PartsProductId) { CartItem.Quantity = CartItem.Quantity + item.Quantity; Cart.SubTotal = (item.UnitPrice * item.Quantity) + Cart.SubTotal; break; } } Cart.Tax = Cart.SubTotal * (decimal).16; Cart.Total = Cart.Tax + Cart.SubTotal; Session["AddToCart"] = Cart; } } return(PartialView("_ViewCart")); }
public ActionResult shipment(ShipmentViewModel shipmentViewModel) { CartWrapper cart = new CartWrapper(); cart = (CartWrapper)Session["AddToCart"]; Order order = new Order() { First_Name = shipmentViewModel.First_Name, Last_Name = shipmentViewModel.Last_Name, MobileNumber = shipmentViewModel.MobileNumber, ShippingAddress = shipmentViewModel.ShippingAddress, CityId = Convert.ToInt32(shipmentViewModel.SelectedCity), OrderDate = DateTime.Now, TaxAmount = cart.Tax, TotalAmount = cart.Total, SubTotal = cart.SubTotal, UserId = shipmentViewModel?.UserId, OrderStatusId = 1, OrderDetails = OrderDetails(cart) }; Order orderNo = _unitOfWork.Order.Add(order); _unitOfWork.Complete(); _unitOfWork.Dispose(); Session["AddToCart"] = null; return(RedirectToAction("Invoice", orderNo)); }
public void OnGet() { Cart = new CartWrapper(HttpContext.Session, _context).Cart; if (Cart.Dishes.Any()) { Total = Cart.Dishes.Sum(item => item.Dish.Price * item.Quantity); } else { Total = 0; } }
public List <OrderDetail> OrderDetails(CartWrapper cart) { List <OrderDetail> ord = new List <OrderDetail>(); if (cart.PartsProductsViewModelList.Count >= 0 && cart.PartsProductsViewModelList != null) { foreach (var item in cart.PartsProductsViewModelList) { OrderDetail orderDetail = new OrderDetail(); orderDetail.PartsProductId = item.PartsProductId; orderDetail.Quantity = item.Quantity; orderDetail.ProductUnitPrice = item.UnitPrice; orderDetail.ItemQuanitiyPrice = (item.UnitPrice * item.Quantity); orderDetail.Discount = 0; orderDetail.ProductUnitPriceAfterDiscount = 0; ord.Add(orderDetail); } } return(ord); }
public ActionResult RemoveFromCart(int id) { CartWrapper Cart = (CartWrapper)Session["AddToCart"]; if (Cart.PartsProductsViewModelList.Count > 0) { foreach (var item in Cart.PartsProductsViewModelList) { if (item.PartsProductId == id) { Cart.SubTotal = Cart.SubTotal - (item.Quantity * item.UnitPrice); Cart.Tax = Cart.SubTotal * (decimal).16; Cart.Total = Cart.SubTotal + Cart.Tax; Cart.PartsProductsViewModelList.Remove(item); break; } } } Session["AddToCart"] = Cart; return(PartialView("_ViewCart")); }
//[ChildActionOnly] public ActionResult AddToCart(int?id, int?quantity) { if (id != null) { if (Session["AddToCart"] == null) { int Quantity = quantity.HasValue ? quantity.Value > 0 ? quantity.Value : 1 : 1; var item = _unitOfWork.PartsProducts.PartProductDetail(id, Quantity); List <PartsProductsViewModel> Cart = new List <PartsProductsViewModel>(); Cart.Add(item); CartWrapper cartWarpper = new CartWrapper(); cartWarpper.PartsProductsViewModelList = Cart; cartWarpper.SubTotal = item.UnitPrice * item.Quantity; cartWarpper.Tax = (cartWarpper.SubTotal * (decimal).16); cartWarpper.Total = cartWarpper.SubTotal + cartWarpper.Tax; Session["AddToCart"] = cartWarpper; } else { bool IsInCart = false; CartWrapper Cart = (CartWrapper)Session["AddToCart"]; int Quantity = quantity.HasValue ? quantity.Value > 0 ? quantity.Value : 1 : 1; var item = _unitOfWork.PartsProducts.PartProductDetail(id, Quantity); if (Quantity >= 1) { if (Cart.PartsProductsViewModelList.Count == 0) { Cart.SubTotal = 0; Cart.Tax = 0; Cart.Total = 0; Cart.PartsProductsViewModelList.Add(item); Cart.SubTotal = item.UnitPrice * item.Quantity; Cart.Tax = (Cart.SubTotal * (decimal).16); Cart.Total = Cart.SubTotal + Cart.Tax; Session["AddToCart"] = Cart; return(PartialView("_AutoSolutionCart")); } else { foreach (var CartItem in Cart.PartsProductsViewModelList) { if (CartItem.PartsProductId == item.PartsProductId) { CartItem.Quantity = CartItem.Quantity + item.Quantity; Cart.SubTotal = (item.UnitPrice * item.Quantity) + Cart.SubTotal; IsInCart = true; break; } } if (IsInCart != true) { Cart.PartsProductsViewModelList.Add(item); Cart.SubTotal = (item.UnitPrice * item.Quantity) + Cart.SubTotal; IsInCart = false; } } } Cart.Tax = Cart.SubTotal * (decimal).16; Cart.Total = Cart.Tax + Cart.SubTotal; Session["AddToCart"] = Cart; } } return(PartialView("_AutoSolutionCart")); }