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

📄 orderaction.java

📁 该代码是Java数据库高级编程宝典中的重要的代码
💻 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 + -