public IActionResult Index() { var claimsIdentity = (ClaimsIdentity)User.Identity; var claim = claimsIdentity.FindFirst(ClaimTypes.NameIdentifier); SCVM = new ShoppingCartViewModel() { OrderHeader = new OrderHeader(), Carts = _unitOfWork.ShoppingCart.GetAll( u => u.ApplicationUserId == claim.Value, includeProperties: "Product") }; SCVM.OrderHeader.OrderTotal = 0; SCVM.OrderHeader.ApplicationUser = _unitOfWork.ApplicationUser. GetFirstOrDefault(u => u.Id == claim.Value, includeProperties: "Company"); foreach (var cart in SCVM.Carts) { cart.Price = StaticDetails.GetPrice( cart.Count, cart.Product.Price, cart.Product.Price50, cart.Product.Price100); SCVM.OrderHeader.OrderTotal += (cart.Price * cart.Count); } return(View(SCVM)); }
public IActionResult Summary() { var claimsIdentity = (ClaimsIdentity)User.Identity; var claim = claimsIdentity.FindFirst(ClaimTypes.NameIdentifier); SCVM = new ShoppingCartViewModel { OrderHeader = new OrderHeader(), Carts = _unitOfWork.ShoppingCart.GetAll( c => c.ApplicationUserId == claim.Value, includeProperties: "Product") }; SCVM.OrderHeader.ApplicationUser = _unitOfWork.ApplicationUser. GetFirstOrDefault(c => c.Id == claim.Value, includeProperties: "Company"); foreach (var cart in SCVM.Carts) { cart.Price = StaticDetails.GetPrice( cart.Count, cart.Product.Price, cart.Product.Price50, cart.Product.Price100); SCVM.OrderHeader.OrderTotal += (cart.Price * cart.Count); } SCVM.OrderHeader.Name = SCVM.OrderHeader.ApplicationUser.Name; SCVM.OrderHeader.PhoneNumber = SCVM.OrderHeader.ApplicationUser.PhoneNumber; SCVM.OrderHeader.StreetAddress = SCVM.OrderHeader.ApplicationUser.StreetAddress; SCVM.OrderHeader.City = SCVM.OrderHeader.ApplicationUser.City; SCVM.OrderHeader.State = SCVM.OrderHeader.ApplicationUser.State; SCVM.OrderHeader.PostalCode = SCVM.OrderHeader.ApplicationUser.PostalCode; return(View(SCVM)); }
public IActionResult Increment(int cartId) { var cart = _unitOfWork.ShoppingCart.GetFirstOrDefault( c => c.Id == cartId, includeProperties: "Product"); cart.Count += 1; cart.Price = StaticDetails.GetPrice( cart.Count, cart.Product.Price, cart.Product.Price50, cart.Product.Price100); _unitOfWork.Save(); return(RedirectToAction(nameof(Index))); }
public IActionResult Decrement(int cartId) { var cart = _unitOfWork.ShoppingCart.GetFirstOrDefault( c => c.Id == cartId, includeProperties: "Product"); if (cart.Count == 1) { _unitOfWork.ShoppingCart.Remove(cart); _unitOfWork.Save(); var cnt = _unitOfWork.ShoppingCart.GetAll( u => u.ApplicationUserId == cart.ApplicationUserId).ToList().Count(); HttpContext.Session.SetInt32(StaticDetails.sessionShoppingCart, cnt - 1); } else { cart.Count -= 1; cart.Price = StaticDetails.GetPrice( cart.Count, cart.Product.Price, cart.Product.Price50, cart.Product.Price100); _unitOfWork.Save(); } return(RedirectToAction(nameof(Index))); }