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

📄 orderaction.java

📁 工厂版本管理系统,STRUTS2框架,用于管理商品的版本,便于有效的控制版本
💻 JAVA
字号:
package com.bluesky.elecall.web.struts.action;

import java.util.List;

import org.apache.struts2.interceptor.validation.SkipValidation;

import com.bluesky.elecall.domain.order.DeliveryAddress;
import com.bluesky.elecall.domain.order.Order;
import com.bluesky.elecall.domain.order.OrderState;
import com.bluesky.elecall.domain.order.PaymentType;
import com.bluesky.elecall.domain.organization.User;
import com.opensymphony.xwork2.Preparable;

public class OrderAction extends ProductCategoryBaseAction implements Preparable{

	// form bean	
	private Order order;
		
	private List paymentTypeList;
	
	public OrderAction() {

		
	}
	
	@Override
	public void prepare() throws Exception {
		if(session.get("order")!=null)
			order = (Order)session.get("order");
		else
			order = new Order();		
			
		paymentTypeList = PaymentType.getAll();
		
		//reload the session user in case its delivery addresses are changed.
		User user = (User)reposity.get(User.class, getSessionUser().getId());
		setSessionUser(user);
		
		super.prepare();
	}
	
	@Override
	public String execute() throws Exception {
	
		return input();
	}
	
	public String input(){
		
		return "input";
	}
	
	/*
	 * store the order to session, display it to user, let user review in read only mode
	 */
	@SkipValidation
	public String review(){
				
		//save to session
		order.setUser(getSessionUser());
		
		DeliveryAddress da = (DeliveryAddress)reposity.get(DeliveryAddress.class, order.getDeliveryAddress().getId());
		order.setDeliveryAddress(da);
		
		PaymentType pt = (PaymentType)reposity.get(PaymentType.class, order.getPaymentType().getId());
		order.setPaymentType(pt);
		
		order.loadFromShoppingCart(getShoppingCart());
		
		session.put("order", order);
		
		return "review";
	}
	
	@SkipValidation
	public String placeOrder(){
		order = (Order)session.get("order");
		
		order.setState(OrderState.INITIAL);
		reposity.save(order);
		
		session.put("order", null);
		getShoppingCart().clear();
		
		return "confirmed";
	}

	public Order getOrder() {
		return order;
	}

	public void setOrder(Order order) {
		this.order = order;
	}

	public List getPaymentTypeList() {
		return paymentTypeList;
	}

	public void setPaymentTypeList(List paymentTypeList) {
		this.paymentTypeList = paymentTypeList;
	}
	

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -