package com.lyq.action.order; import java.util.Iterator; import java.util.Set; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; import com.lyq.action.BaseAction; import com.lyq.model.order.OrderItem; import com.lyq.model.product.ProductInfo; /** * 购物车Action * @author Li Yongqiang */ @Scope("prototype") @Controller("cartAction") public class CartAction extends BaseAction { private static final long serialVersionUID = 1L; // 向购物车中添加商品 @Override public String add() throws Exception { if(productId != null && productId > 0){ // 获取购物车 Set<OrderItem> cart = getCart(); // 标记添加的商品是否是同一件商品 boolean same = false; for (OrderItem item : cart) { if(item.getProductId() == productId){ // 购买相同的商品,更新数量 item.setAmount(item.getAmount() + 1); same = true; } } // 不是同一件商品 if(!same){ OrderItem item = new OrderItem(); ProductInfo pro = productDao.load(productId); item.setProductId(pro.getId()); item.setProductName(pro.getName()); item.setProductPrice(pro.getSellprice()); item.setProductMarketprice(pro.getMarketprice()); cart.add(item); } session.put("cart", cart); } return LIST; } // 查看购物车 public String list() throws Exception { return LIST;//返回购物车页面 } // 从购物车中删除商品 public String delete() throws Exception { Set<OrderItem> cart = getCart();// 获取购物车 // 此处使用Iterator,否则出现java.util.ConcurrentModificationException Iterator<OrderItem> it = cart.iterator(); while(it.hasNext()){//使用迭代器遍历商品订单条目信息 OrderItem item = it.next(); if(item.getProductId() == productId){ it.remove();//移除商品订单条目信息 } } session.put("cart", cart);//将清空后的信息重新放入Session中 return LIST;//返回购物车页面 } // 清空购物车 public String clear() throws Exception { session.remove("cart"); return LIST; } // 商品id private Integer productId; public Integer getProductId() { return productId; } public void setProductId(Integer productId) { this.productId = productId; } }
最近下载更多
hongdongdong LV12
2023年12月16日
微信网友_6680567232876544 LV8
2023年10月10日
2036495585 LV9
2023年9月25日
pangxiangdong LV4
2023年3月12日
xiaowangjj LV4
2023年2月15日
微信网友_5966087716769792 LV9
2022年9月2日
309681 LV5
2022年5月11日
kuoluoluo LV3
2022年4月18日
149872g LV2
2022年3月28日
不停的奔跑 LV20
2022年3月5日
最近浏览更多
zrz666 LV1
19分钟前
刘孟飞 LV19
3月29日
heshao LV2
1月11日
a2418735612 LV1
1月4日
1765281247
1月2日
暂无贡献等级
微信网友_6797846869299200 LV7
1月1日
asddwh LV12
2023年12月26日
1601547803 LV1
2023年12月26日
2517958616 LV1
2023年12月26日
qxs110 LV1
2023年12月25日