首页>代码>JSP三大框架SSH开发天下陶网络商城源代码下载>/天下陶网络商城/Shop/src/com/lyq/action/order/CartAction.java
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;
	}
}
最近下载更多
2017143155  LV12 2022年4月26日
lzlzyw  LV14 2022年3月24日
wanglinddad  LV55 2022年2月9日
dy123123  LV8 2022年1月1日
mwk545924364  LV4 2021年12月10日
178174qasw  LV10 2021年8月19日
Wang17539231758  LV11 2020年5月27日
林志勇  LV10 2020年5月16日
邱玉豪  LV7 2020年4月24日
仙女小麋鹿  LV6 2019年12月27日
最近浏览更多
lyt010628  LV4 2024年7月9日
lihaixin  LV2 2024年7月1日
崔新坤 2024年3月5日
暂无贡献等级
Henew168  LV2 2023年11月19日
微信网友_6707371254878208 2023年10月25日
暂无贡献等级
hrbylw  LV9 2023年1月28日
111114758  LV2 2022年11月27日
2998919365  LV5 2022年10月28日
zhaoyangwfd  LV17 2022年10月18日
绘飛的渔 2022年8月2日
暂无贡献等级
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友