小项目第四天

重要的servlet:

public String load(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("order", orderService.load(request.getParameter("oid")));//得到oid传入load方法进行查找
return "f:/jsps/order/desc.jsp";//转发到desc页面中
}
//我的订单
public String myOrders(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
User user=(User) request.getSession().getAttribute("session_user");//通过session对象拿到user对象
List<Order> orderList=orderService.myOrders(user.getUid());//通过uid来得到用户的所有的订单
request.setAttribute("orderList", orderList);//保存到request域中
return "/jsps/order/list.jsp";//转发到list的页面中
}
//把session中的cart对象取出来,生成一个order对象
public String add(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//从session中获取cart对象
Cart cart=(Cart) request.getSession().getAttribute("cart");
Order order=new Order();//创建order对象
order.setOid(CommonUtils.uuid());//设置编号
order.setOrdertime(new Date());//设置下单的时间
order.setState(1);//设置状态为一,表示未付款
order.setOwner((User) request.getSession().getAttribute("session_user"));//获得user对象
order.setTotal(cart.getTotal());//获得订单的合计,从cart中得到

List<OrderItem> orderItemList=new ArrayList<OrderItem>();//创建cart中的cartItem,并添加到集合中

for(CartItem cartItem:cart.getCartItems()){
OrderItem oi=new OrderItem();//创建订单的条目

oi.setIid(CommonUtils.uuid());//设置条目的id
oi.setCount(cartItem.getCount());//设置条目的数量
oi.setBook(cartItem.getBook());//设置条目的图书
oi.setSubtotal(cartItem.getTatal());//得到条目的小计
oi.setOrder(order);//设置所属的订单
orderItemList.add(oi);//把订单条目添加到集合中

}
order.setOrderItemList(orderItemList);//把所有的订单添加到订单中

//清空购物车
cart.clear();

orderService.add(order);//添加到订单中

request.setAttribute("order", order);//保存order到request域中




return "/jsps/order/desc.jsp";//转发
}

jsp:

<table border="1" width="100%" cellspacing="0" background="black">
<c:forEach items="${orderList }" var="order">
<tr bgcolor="gray" bordercolor="gray">
<td colspan="6">
订单编号:${order.oid } 成交时间:${order.ordertime } 金额:<font color="red"><b>${order.total }</b></font> 
<c:choose>
<c:when test="${order.state eq 1 }"><a href="<c:url value='OrderServlet?method=load&oid=${order.oid }'/>">付款</a></c:when>
<c:when test="${order.state eq 2 }">等待发货</c:when>
<c:when test="${order.state eq 3 }"><a href="javascript:alert('已确认收货!');">确认收货</a></c:when>
<c:when test="${order.state eq 4 }">订单结束</c:when>
</c:choose>
</td>
</tr>
<c:forEach items="${order.orderItemList }" var="orderItem">
<tr bordercolor="gray" align="center">
<td width="15%">
<div><img src="<c:url value='/${orderItem.book.image }'/>" height="75"/></div>
</td>
<td>书名:${orderItem.book.bname }</td>
<td>单价:${orderItem.book.price }元</td>
<td>作者:${orderItem.book.author }</td>
<td>数量:${orderItem.count }</td>
<td>小计:${orderItem.subtotal }元</td>
</tr>
</c:forEach>
</c:forEach>
</table>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值