📄 orderaction.java
字号:
package jdbcbook.shopping.action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.DynaActionForm;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import java.io.IOException;
import jdbcbook.shopping.util.DispatchActionEx;
import jdbcbook.shopping.util.SessionUtil;
import jdbcbook.shopping.database.OperateDB;
import jdbcbook.shopping.bean.Cart;
import jdbcbook.shopping.bean.CartItem;
import jdbcbook.shopping.form.Userinfo;
import jdbcbook.shopping.form.Orders;
import jdbcbook.shopping.form.OrderItem;
import jdbcbook.shopping.form.Product;
import jdbcbook.shopping.database.ManageDB;
import java.sql.Timestamp;
import java.util.Iterator;
import java.util.Collection;
public class OrderAction extends DispatchActionEx
{
// 查询订单信息
public ActionForward detail(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
{
Orders order = (Orders)OperateDB.getObjectByID( Orders.class, ((Orders)form).getId() );
if( order!=null )
{
Userinfo ui = SessionUtil.getUserinfo( request );
if( ui.isAdmin() || ui.getId()==order.getUserinfoid() )
{
request.setAttribute( "order", order );
request.setAttribute( "orderitems", ManageDB.getOrderItems( order.getId() ) );
}
}
return mapping.findForward( "orderdetail" );
}
// 查询订单信息
public ActionForward list(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
{
Userinfo user = SessionUtil.getUserinfo( request );
if( user!=null )
{
Collection orders = null;
if( user.isAdmin() )
orders = ManageDB.getOrders( ((Orders)form).getStatus() );
else
orders = ManageDB.getOrders( ((Orders)form).getStatus(), user.getId() );
request.setAttribute( "orders", orders );
}
return mapping.findForward( "list" );
}
// 生成订单
public ActionForward store(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
{
Orders order = (Orders)form;
Userinfo user = SessionUtil.getUserinfo( request );
Cart cart = SessionUtil.getCart( request );
if( user!=null && cart!=null )
{
order.setOrderdate( new Timestamp( System.currentTimeMillis() ) );
order.setUserinfoid( user.getId() );
order.setTotalfee( cart.getTotalfee() );
OperateDB.storeData( order );
Iterator it = cart.getCartitems().iterator();
while( it.hasNext() )
{
CartItem cartitem = (CartItem)it.next();
Product product = cartitem.getProduct();
OrderItem oi = new OrderItem();
oi.setOrdersid( order.getId() );
oi.setProductid( product.getId() );
oi.setQuantity( cartitem.getQuantity() );
oi.setPrice( product.getPrice() );
oi.setTotalfee( cartitem.getTotalfee() );
OperateDB.storeData( oi );
}
request.setAttribute( "order", order );
request.setAttribute( "cart", SessionUtil.getCart( request ) );
addMessage( request, "result", "order_store_success" );
}
return mapping.findForward( "orderlist" );
}
// 进入结帐页面
public ActionForward unspecified(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
{
request.setAttribute( "cart", SessionUtil.getCart( request ) );
return mapping.findForward( "order" );
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -