package com.kettas.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.actions.MappingDispatchAction; import com.kettas.biz.ShoppingcartBizImpl; import com.kettas.entity.Product; import com.kettas.entity.Shoppingcart; import com.kettas.exception.BizException; /* * Title:购物车操作相关Action * Author:SecondGroup * Time:2010.1.15 * Version:1.0.0 */ public class ShoppingcartAction extends MappingDispatchAction{ private ShoppingcartBizImpl cartBiz; public ShoppingcartBizImpl getCartBiz() { return cartBiz; } public void setCartBiz(ShoppingcartBizImpl cartBiz) { this.cartBiz = cartBiz; } /* * 添加一个购物项Action */ public ActionForward addItem(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ String idStr=request.getParameter("id").trim(); Integer id=Integer.parseInt(idStr); String name=request.getParameter("name"); String priceStr=request.getParameter("price"); double price=Double.parseDouble(priceStr); String description=request.getParameter("description"); String amountStr=request.getParameter("amount"); int amount=Integer.parseInt(amountStr); String type=request.getParameter("type"); Product product=new Product(name,description,price,type); product.setId(id); HttpSession session=request.getSession(true); Shoppingcart cart=(Shoppingcart) session.getAttribute("cart"); if(cart!=null){ try { cartBiz.setCart(cart); cartBiz.addItem(product, amount); //维护属性 cart.setItemsCount(cartBiz.getItemsCount()); cart.setTotalCost(cartBiz.getTotalCost()); session.setAttribute("cart", cart); } catch (Exception e) { throw new BizException(e); } }else{ Shoppingcart newCart=new Shoppingcart(); try { cartBiz.setCart(newCart); cartBiz.addItem(product, amount); //维护属性 newCart.setItemsCount(cartBiz.getItemsCount()); newCart.setTotalCost(cartBiz.getTotalCost()); session.setAttribute("cart", newCart); } catch (Exception e) { throw new BizException(e); } } return mapping.findForward("shoppingcart"); } /* * 移除一个购物项Action */ public ActionForward removeItem(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ String productIdStr=request.getParameter("product_id"); Integer productId=Integer.parseInt(productIdStr); //从session中获取shoppingcart对象 HttpSession session=request.getSession(true); Shoppingcart cart=(Shoppingcart) session.getAttribute("cart"); //初始化ShoppingcartBizImpl对象 cartBiz.setCart(cart); try { //调用ShoppingcartBizImpl删除购物项方法 cartBiz.deleteItemByProduct(productId); //维护属性 cart.setItemsCount(cartBiz.getItemsCount()); cart.setTotalCost(cartBiz.getTotalCost()); } catch (Exception e) { throw new BizException(e); } if(cart.getItemsCount()==0){ session.removeAttribute("cart"); }else{ session.setAttribute("cart", cart); } return mapping.findForward("shoppingcart"); } /* * 修改购买商品数量 */ public ActionForward modifyAmount(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ String productId[]=request.getParameterValues("productId"); String newAmount[]=request.getParameterValues("newAmount"); HttpSession session=request.getSession(true); Shoppingcart cart=(Shoppingcart) session.getAttribute("cart"); //初始化ShoppingcartBizImpl对象 cartBiz.setCart(cart); for(int i=0;i<productId.length;i++){ try { cartBiz.modifyAmountByProduct(Integer.parseInt(productId[i]), Integer.parseInt(newAmount[i])); //维护属性 cart.setItemsCount(cartBiz.getItemsCount()); cart.setTotalCost(cartBiz.getTotalCost()); } catch (NumberFormatException e) { //当出现数字格式错误的时候应该封装成业务异常抛出 throw new BizException(e); } catch (Exception e) { throw new BizException(e); } } session.setAttribute("cart", cart); return mapping.findForward("shoppingcart"); } /* * 清空购物车 */ public ActionForward clearShoppingcart(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ HttpSession session=request.getSession(true); Shoppingcart cart=(Shoppingcart) session.getAttribute("cart"); cartBiz.setCart(cart); System.out.println("-------------------------FuckingData------------------------------"); if(cart!=null){ try { cartBiz.clearCart(); } catch (Exception e) { throw new BizException(e); } } session.removeAttribute("cart"); return mapping.findForward("shoppingcart"); } }
最近下载更多
haruto1213 LV1
2023年6月30日
yyyyyyyc LV1
2022年9月21日
qweqqw123 LV2
2021年12月20日
鲁西西 LV1
2021年6月29日
908902058 LV1
2021年6月15日
1973356987 LV13
2021年6月8日
风雨中的孤傲 LV2
2021年5月25日
情绪别致的疯子 LV3
2020年12月20日
嘿嘿嘿123333 LV3
2020年6月26日
林志勇 LV10
2020年5月22日
最近浏览更多
zhangsan_lisi
9月18日
暂无贡献等级
quartz LV8
7月1日
xiao1111 LV3
6月18日
郭宇航裹裹 LV5
6月7日
wangbh1234 LV1
6月6日
2411307984 LV1
5月8日
hhxq0902
4月20日
暂无贡献等级
微信网友_6797846869299200 LV7
1月1日
jiemomo LV12
2023年11月3日
廖业贵 LV18
2023年10月17日