package com.kettas.action; import java.util.ArrayList; import java.util.List; 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.OrderBiz; import com.kettas.entity.Order; import com.kettas.entity.Shoppingcart; import com.kettas.entity.User; import com.kettas.exception.BizException; /* * Title:订单操作相关Action * Author:SecondGroup * Time:2010.1.14 * Version:1.0.0 */ public class OrderAction extends MappingDispatchAction{ private OrderBiz obiz; public OrderBiz getObiz() { return obiz; } public void setObiz(OrderBiz obiz) { this.obiz = obiz; } /* * 生成订单Action */ public ActionForward generateOrder(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ HttpSession session=request.getSession(true); /* * 从session作用域内得到登陆用户对象 */ User user=(User) session.getAttribute("login"); /* * 从session作用域内得到购物项集合 */ Shoppingcart cart=(Shoppingcart) session.getAttribute("cart"); Order order=new Order(); order.setItems(cart.getItems()); order.setStatus(0);//此时是给用户预览订单,等用户确定订单之后才把订单状态改为1 order.setUser(user); order.setCost(cart.getTotalCost()); List<Order> orders=new ArrayList<Order>(); Order userOrder=new Order(); try { //将订单存入DB obiz.addOrder(order); //再根据status查询订单,目的查出全部未付款的订单 orders=obiz.getOrdersByStatus(0); //遍历该集合查找出属于本user的未付款状态的订单 for(Order o:orders){ //从数据库中取出来的id是String类型的,所以不能用==比较 if(o.getUser().getId().equals(user.getId())){ //将此订单返回显示 userOrder=o; } } } catch (Exception e) { throw new BizException(e); } request.setAttribute("order", userOrder); return mapping.findForward("printorder"); } /* * 结账Action */ public ActionForward checkout(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ String orderIdStr=request.getParameter("orderId"); Integer orderId=Integer.parseInt(orderIdStr); String costStr=request.getParameter("cost"); double cost=Double.parseDouble(costStr); Order order=new Order(); try { order=obiz.getOrderById(orderId); int status=1;//此时才将订单状态改为1,即已付款 order.setStatus(status); //修改数据库中的订单状态 obiz.modifyOrder(order); } catch (Exception e) { throw new BizException(e); } request.setAttribute("order", order); request.setAttribute("cost", cost); //结账之后清空session中的cart HttpSession session=request.getSession(true); Shoppingcart cart=(Shoppingcart) session.getAttribute("cart"); request.setAttribute("cart", cart); session.removeAttribute("cart"); return mapping.findForward("checkout"); } /* * 获得全部订单Action */ public ActionForward getAllOrders(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ HttpSession session=request.getSession(true); User user=(User) session.getAttribute("login"); System.out.println("========================"+user.getName()+user.getId()+"=================================="); List<Order> orders=new ArrayList<Order>(); List<Order> iwantorders=new ArrayList<Order>(); int ordersNum=0; double ordersCost=0; System.out.println("========================FuckingData=================================="); try { orders=obiz.getAllOrders(); } catch (Exception e) { throw new BizException(e); } for(Order o:orders){ System.out.println("=========================="+o.getUser().getName()+"==============================="); if(o.getUser().getName().equals(user.getName())){ iwantorders.add(o); ordersNum++; ordersCost+=o.getCost(); } } request.setAttribute("orders", iwantorders); request.setAttribute("ordersNum", ordersNum); request.setAttribute("ordersCost", ordersCost); return mapping.findForward("manageorder"); } }
最近下载更多
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日
最近浏览更多
微信网友_6797846869299200 LV7
1月1日
jiemomo LV12
2023年11月3日
廖业贵 LV18
2023年10月17日
3273408633 LV2
2023年9月14日
29693748 LV1
2023年7月6日
haruto1213 LV1
2023年6月30日
陆程江 LV2
2023年5月28日
renyuan LV9
2023年5月1日
一只勤奋的猪猪 LV9
2023年4月8日
方雨森 LV3
2022年12月24日