public IActionResult Index() { var claimsIdentity = (ClaimsIdentity)User.Identity; var claims = claimsIdentity.FindFirst(ClaimTypes.NameIdentifier); ShoppingCartVM = new ShoppingCartVM() { OrderHeader = new OrderHeader(), CartList = unitOfWork.ShoppingCart.GetAll(u => u.ApplicatinUserId == claims.Value, includeProperties: "Product") }; ShoppingCartVM.OrderHeader.OrderTotal = 0; ShoppingCartVM.OrderHeader.ApplicationUser = unitOfWork.ApplicationUser.GetFirstOrDefault(u => u.Id == claims.Value, includeProperties: "Organization"); foreach (var item in ShoppingCartVM.CartList) { item.Price = StaticDetails.CalculateBooksPrice(item.Count, item.Product.Price, item.Product.Price50, item.Product.Price100); ShoppingCartVM.OrderHeader.OrderTotal += (item.Price * item.Count); item.Product.ProductDescription = StaticDetails.ConvertToRawHtml(item.Product.ProductDescription); if (item.Product.ProductDescription.Length > 100) { item.Product.ProductDescription = item.Product.ProductDescription.Substring(0, 99) + "..."; } } return(View(ShoppingCartVM)); }
public IActionResult Plus(int cartId) { var cart = unitOfWork.ShoppingCart.GetFirstOrDefault(u => u.ShoppingCartId == cartId, includeProperties: "Product"); cart.Count += 1; cart.Price = StaticDetails.CalculateBooksPrice(cart.Count, cart.Product.Price, cart.Product.Price50, cart.Product.Price100); unitOfWork.Save(); return(RedirectToAction(nameof(Index))); }
public IActionResult Minus(int cartId) { var cart = unitOfWork.ShoppingCart.GetFirstOrDefault(u => u.ShoppingCartId == cartId, includeProperties: "Product"); var count = unitOfWork.ShoppingCart.GetAll(u => u.ApplicatinUserId == cart.ApplicatinUserId).ToList().Count(); if (cart.Count == 1) { unitOfWork.ShoppingCart.RemoveEntity(cart); HttpContext.Session.SetObject(StaticDetails.SessionShoppingCart, count - 1); } else { cart.Count -= 1; cart.Price = StaticDetails.CalculateBooksPrice(cart.Count, cart.Product.Price, cart.Product.Price50, cart.Product.Price100); } unitOfWork.Save(); return(RedirectToAction(nameof(Index))); }