⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shoppingcartaction.java

📁 网上商城
💻 JAVA
字号:
package com.witbridge.netstore.action;

import java.util.Enumeration;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;

import com.witbridge.netstore.framework.SessionContaner;
import com.witbridge.netstore.framework.ShoppingCart;
import com.witbridge.netstore.framework.ShoppingCartItem;
import com.witbridge.netstore.model.Items;
import com.witbridge.netstore.service.NetStoreService;

public class ShoppingCartAction extends NetStoreDispatchAction {

	public ActionForward view(ActionMapping mapping, ActionForm form,
			HttpServletRequest  request, HttpServletResponse response) 
	throws Exception {
		SessionContaner sessionContaner=getSessionContaner(request);
		ActionMessages errors=new ActionMessages();
		if(sessionContaner.getCart()!=null){
			if(sessionContaner.getCart().getSize()==0){
				errors.add("null",new ActionMessage("sessionContaner.null"));
				saveErrors(request,errors);
				}
			}
		else{
			errors.add("null",new ActionMessage("sessionContaner.null"));
			saveErrors(request,errors);
	}
	return mapping.findForward("viewsucces");
}
	
	public ActionForward addItem(ActionMapping mapping, ActionForm form,
			HttpServletRequest  request, HttpServletResponse response) 
	throws Exception {
		SessionContaner sessionContaner=getSessionContaner(request);
		Long itemId= new Long(request.getParameter("id"));
		String qtyParameter=request.getParameter("qty");
		int quantity=1;
		if(qtyParameter!=null){
			quantity=Integer.parseInt(qtyParameter);
		}
		
		NetStoreService service=getNetStoreService();
		Items item=service.getItemById(itemId);
		
		sessionContaner.getCart().addItem(new ShoppingCartItem(item,quantity));
		
		return mapping.findForward("additemsucces");
	}
	
	public ActionForward update(ActionMapping mapping, ActionForm form,
			HttpServletRequest  request, HttpServletResponse response) 
	throws Exception{
		Enumeration paramNames=request.getParameterNames();
		
		while(paramNames.hasMoreElements()){
			String paramName=(String)paramNames.nextElement();
			if(paramName.startsWith("qty_")){
				Long id=new Long(paramName.substring(4,paramName.length()));
				String qtyStr=request.getParameter(paramName);
				if(id!=null&&qtyStr!=null){
					ShoppingCart cart=getSessionContaner(request).getCart();
					cart.updateQuantity(id,Integer.parseInt(qtyStr));
				}
			}
		}
		return mapping.findForward("updatesucces");
	}
	
	public ActionForward delete(ActionMapping mapping, ActionForm form,
			HttpServletRequest  request, HttpServletResponse response) 
	throws Exception{
		
		Long itemId=new Long(request.getParameter("id"));
		ShoppingCart cart=getSessionContaner(request).getCart();
		cart.removeItem(itemId);
		SessionContaner sessionContaner=getSessionContaner(request);
		ActionMessages errors=new ActionMessages();
		if(sessionContaner.getCart().getSize()==0){
			errors.add("null",new ActionMessage("sessionContaner.null"));
			saveErrors(request,errors);
		}
	
		return mapping.findForward("deletesucces");
	}
}

⌨️ 快捷键说明

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