cartmanager.java.svn-base

来自「spring+hibernate做的网上订餐系统」· SVN-BASE 代码 · 共 101 行

SVN-BASE
101
字号
package com.pure.web.spring;

import java.util.Iterator;

import javax.servlet.http.HttpServletRequest;

import org.springframework.web.util.WebUtils;

import uk.ltd.getahead.dwr.WebContext;
import uk.ltd.getahead.dwr.WebContextFactory;

import com.pure.domain.Cart;
import com.pure.domain.CartItem;
import com.pure.domain.Dish;
import com.pure.domain.logic.DishFacade;
import com.pure.util.ParamUtil;

public class CartManager {
	private DishFacade dishFacade;

	public DishFacade getDishFacade() {
		return dishFacade;
	}

	public void setDishFacade(DishFacade dishFacade) {
		this.dishFacade = dishFacade;
	}

	public int add(int dishId) {
		if(dishId <= 0){
			return 0;
		}
		WebContext ctx = WebContextFactory.get();
		HttpServletRequest request = ctx.getHttpServletRequest();
		Cart cart = (Cart) WebUtils.getOrCreateSessionAttribute(request.getSession(), "sessionCart", Cart.class);
		Dish dish = this.getDishFacade().getDish(dishId);
		cart.addItem(dish);
		this.getDishFacade().hot(dishId);
		return dishId;
	}
	
	public void update(){
		WebContext ctx = WebContextFactory.get();
		HttpServletRequest request = ctx.getHttpServletRequest();
		Cart cart = (Cart) WebUtils.getOrCreateSessionAttribute(request.getSession(), "sessionCart", Cart.class);
		Iterator cartItems = cart.getAllCartItems();
		String id = "";
		while (cartItems.hasNext()) {
			CartItem cartItem = (CartItem) cartItems.next();
			id = String.valueOf(cartItem.getDish().getId());
			try {
				int quantity = ParamUtil.getInt(request, "qty" + id);
				cart.setQuantityByItemId(id, quantity);
				if (quantity < 1) {
					cartItems.remove();
				}
			} catch (NumberFormatException e) {
			}
		}
	}
	
	public void updateForQty(int quantity){
		if(quantity <= 0){
			return;
		}
		WebContext ctx = WebContextFactory.get();
		HttpServletRequest request = ctx.getHttpServletRequest();
		Cart cart = (Cart) WebUtils.getOrCreateSessionAttribute(request.getSession(), "sessionCart", Cart.class);
		Iterator cartItems = cart.getAllCartItems();
		String id = "";
		while (cartItems.hasNext()) {
			CartItem cartItem = (CartItem) cartItems.next();
			id = String.valueOf(cartItem.getDish().getId());
			try {
				cart.setQuantityByItemId(id, quantity);
				if (quantity < 1) {
					cartItems.remove();
				}
			} catch (NumberFormatException e) {
			}
		}
	}
	
	public void remove(int dishId){
		if(dishId <= 0){
			return;
		}
		WebContext ctx = WebContextFactory.get();
		HttpServletRequest request = ctx.getHttpServletRequest();
		Cart cart = (Cart) WebUtils.getOrCreateSessionAttribute(request.getSession(), "sessionCart", Cart.class);
		cart.removeItemById(String.valueOf(dishId));
	}
	
	public void clear(){
		WebContext ctx = WebContextFactory.get();
		HttpServletRequest request = ctx.getHttpServletRequest();
		Cart cart = (Cart) WebUtils.getOrCreateSessionAttribute(request.getSession(), "sessionCart", Cart.class);
		cart.clearCart();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?