public ActionResult GetCheckoutQuantity(CheckoutQuantityViewModel QuantityArray) { var carList = (CartItemListViewModel)Session["Cart"]; ///此carList為更改數量後的狀態 carList = _CartService.ChangeCartQuantity(carList, QuantityArray); Session["Cart"] = carList; return(View("ListShoppingCart")); }
/// <summary> /// cartItems為購物車內容,QuantityArray則為前端傳入的數量陣列及留言內容 /// </summary> /// <param name="cartItems"></param> /// <param name="QuantityArray"></param> /// <returns></returns> public CartItemListViewModel ChangeCartQuantity(CartItemListViewModel cartItems, CheckoutQuantityViewModel QuantityArray) { if (QuantityArray == null) { return(cartItems); } else { for (int i = 0; i < QuantityArray.Quantity.Count; i++) { ///第一項商品的購買數量等於數量陣列的第一項 cartItems.CartItems[i].Quantity = QuantityArray.Quantity[i]; ///如果商品購買數量大於庫存,則購買數量等於庫存 if (cartItems.CartItems[i].Quantity > cartItems.CartItems[i].QuantityLimit) { cartItems.CartItems[i].Quantity = cartItems.CartItems[i].QuantityLimit; } } cartItems.Comment = QuantityArray.Comment; ///初始化記錄數量的陣列 QuantityArray.Quantity.Clear(); return(cartItems); } }