namespaceIpow.CMS.Helper
{public static classShoppingCartHelper
{///
///获取购物车///
///
public staticshoppingCart getShoppingCart()
{
shoppingCart cart= newshoppingCart();if (HttpContext.Current.Session["cart"] != null)
{
cart= HttpContext.Current.Session["cart"] asshoppingCart;
}returncart;
}///
///加入购物车///
/// 门票
/// 门票类别
///
public static int addCart(ticket tic, intCategoryID)
{int result = 1;
shoppingCart cart=getShoppingCart();if (cart.CategoryID == 0)
{
cart.CategoryID=CategoryID;
cart.TotalPrice= tic.ticketPrice *tic.ticketCount;
List list = new List();
list.Add(tic);
cart.tickets=list;
}else{if (cart.CategoryID != CategoryID && cart.tickets.Count() != 0)
{//不同园区门票不能加入同一个购物车
result = -1;
}else{
ticket t1= cart.tickets.SingleOrDefault(obj => obj.ticketID ==tic.ticketID);//如果已存在同样的门票,则增加门票数量
if (t1 != null)
{if (t1.ticketCount + tic.ticketCount <= 5)
{
t1.ticketCount+=tic.ticketCount;
cart.TotalPrice+= tic.ticketPrice *tic.ticketCount;
cart.CategoryID=CategoryID;
}else{//门票数量超过5张
result = -2;
}
}//不存在则添加
else{
cart.TotalPrice+= tic.ticketPrice *tic.ticketCount;
cart.CategoryID=CategoryID;
cart.tickets.Add(tic);
}
}
}
HttpContext.Current.Session["cart"] =cart;returnresult;
}///
///从购物车中移除商品///
/// 要移除的商品ID
///
public static int removeCart(stringtid)
{
shoppingCart cart=getShoppingCart();if (cart.CategoryID == 0)
{//离开太久啦,购物车已经空空了,您重新购买吧
return -1;
}else{
ticket t1= cart.tickets.SingleOrDefault(obj => obj.ticketID ==tid);if (t1 != null)
{//重新计算总价
cart.TotalPrice -= t1.ticketPrice *t1.ticketCount;//从购物车中移除
cart.tickets.Remove(t1);
}
}
HttpContext.Current.Session["cart"] =cart;return 1;
}///
///减少购物车中某一商品的数量///
/// 要减少数量的商品id
///
public static int reduceCart(stringtid)
{
shoppingCart cart=getShoppingCart();if (cart.CategoryID == 0)
{//离开太久啦,购物车已经空空了,您重新购买吧
return -1;
}else{
ticket t1= cart.tickets.SingleOrDefault(obj => obj.ticketID ==tid);if (t1 != null)
{if (t1.ticketCount > 1)
{//从购物车中减少某一商品的数量
t1.ticketCount--;//重新计算总价
cart.TotalPrice -=t1.ticketPrice;
}
}
}
HttpContext.Current.Session["cart"] =cart;return 1;
}///
///增加购物车中某一商品的数量///
/// 要减少数量的商品id
///
public static int addCart(stringtid)
{
shoppingCart cart=getShoppingCart();if (cart.CategoryID == 0)
{//离开太久啦,购物车已经空空了,您重新购买吧
return -1;
}else{
ticket t1= cart.tickets.SingleOrDefault(obj => obj.ticketID ==tid);if (t1 != null)
{if (t1.ticketCount < 5)
{//从购物车中减少某一商品的数量
t1.ticketCount++;//重新计算总价
cart.TotalPrice +=t1.ticketPrice;
}
}
}
HttpContext.Current.Session["cart"] =cart;return 1;
}
}///
///购物车///
public classshoppingCart
{///
///门票类别ID///
public int CategoryID { get; set; }///
///总价///
public decimal? TotalPrice { get; set; }///
///门票列表///
public List tickets { get; set; }
}///
///门票///
public classticket
{public string ticketID { get; set; }///
///门票名称///
public string ticketName { get; set; }///
///门票数量///
public int ticketCount { get; set; }///
///门票价格///
public decimal? ticketPrice { get; set; }
}
}