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

📄 housesalecontroller.java

📁 一个购房管理系统,JSF+Hibernate+Mssql2
💻 JAVA
字号:
/*
 * HouseSaleController.java
 *
 * Created on 2007��5��29��, ����2:59
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package com.housesale.jsfbean;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.List;

import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;
import javax.faces.model.SelectItem;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import com.housesale.hibernate.Customer;
import com.housesale.hibernate.House;
import com.housesale.hibernate.HouseCheck;
import com.housesale.hibernate.HouseSale;
import com.housesale.hibernate.dao.HouseSaleDAO;

/**
 * 
 * @author MSQ
 */
public class HouseSaleController {

	/** Creates a new instance of HouseSaleController */
	public HouseSaleController() {
	}

	private HouseSale housesale;

	private DataModel model;

	private HouseSaleDAO getEntityManager() {
		HouseSaleDAO.initialize();
		return new HouseSaleDAO();
	}

	private int batchSize = 10;

	private int firstItem = 0;

	private String queryProperty;

	private String queryValue;

	private int itemCount = 0;

	public DataModel getModel() {
		return model;
	}

	public void setModel(DataModel model) {
		this.model = model;
	}

	public String getQueryProperty() {
		return queryProperty;
	}

	public void setQueryProperty(String queryProperty) {
		this.queryProperty = queryProperty;
	}

	public String getQueryValue() {
		return queryValue;
	}

	public void setQueryValue(String queryValue) {
		this.queryValue = queryValue;
	}

	public void setItemCount(int itemCount) {
		this.itemCount = itemCount;
	}

	public HouseSale getHousesale() {
		return housesale;
	}

	public void setHousesale(HouseSale housesale) {
		this.housesale = housesale;
	}

	public DataModel getDetailHousesales() {
		return model;
	}

	public void setDetailHousesales(Collection<HouseSale> m) {
		model = new ListDataModel(new ArrayList(m));
	}

	public String createSetup() {
		this.housesale = new HouseSale();
		this.housesale.setSaleId(0);
		this.housesale.setSaleTime(new Date());
		this.housesale.setSaleState("1");
		this.housesale.setPayMoney(Long.valueOf(0));
		this.housesale.setRemain(Long.valueOf(0));
		return "housesale_create";
	}

	public String create() {

		try {

			housesale.setTotal(housesale.getHouse().getHouseStyle().getPrice());
			housesale.setSalePayment(housesale.getHouse().getHouseStyle().getPrice());
			
			this.getEntityManager().save(housesale);	
			
			Session s=getEntityManager().getSession();
			Transaction tx=s.beginTransaction();
			try {
				House house=housesale.getHouse();
				house.setHouseState("\u5DF2\u552E\u51FA");//已售出
				s.update(house);
				tx.commit();
			} catch (RuntimeException e) {
				tx.rollback();
				s.close();
			}
			
			addSuccessMessage("Housesale was successfully created.");
		} catch (Exception ex) {
			try {
				addErrorMessage(ex.getLocalizedMessage());

			} catch (Exception e) {
				addErrorMessage(e.getLocalizedMessage());
			}
		}
		return "housesale_list";
	}

	public String detailSetup() {
		setHousesaleFromRequestParam();
		return "housesale_detail";
	}

	public String editSetup() {
		setHousesaleFromRequestParam();
		return "housesale_edit";
	}

	public String edit() {

		try {

			getEntityManager().update(housesale);

			addSuccessMessage("Housesale was successfully updated.");
		} catch (Exception ex) {
			try {
				addErrorMessage(ex.getLocalizedMessage());

			} catch (Exception e) {
				addErrorMessage(e.getLocalizedMessage());
			}
		}
		return "housesale_list";
	}

	public String destroy() {

		try {

			HouseSale housesale = getHousesaleFromRequestParam();
			this.getEntityManager().delete(housesale);

			addSuccessMessage("Housesale was successfully deleted.");
		} catch (Exception ex) {
			try {
				addErrorMessage(ex.getLocalizedMessage());

			} catch (Exception e) {
				addErrorMessage(e.getLocalizedMessage());
			}
		}
		return "housesale_list";
	}

	public HouseSale getHousesaleFromRequestParam() {

		HouseSale o = null;
		try {
			o = (HouseSale) model.getRowData();
			o = this.getEntityManager().get(o.getSaleId());

		} finally {
			return o;
		}
	}

	public void setHousesaleFromRequestParam() {
		HouseSale housesale = getHousesaleFromRequestParam();
		setHousesale(housesale);
	}

	public String findHouseSales() {

		Query q = null;
		if (this.queryProperty.equals("house.houseId")
				|| this.queryProperty.equals("customer.customerId")
				|| this.queryProperty.equals("saleId")) {
			try {
				Integer.valueOf(getQueryValue());
			} catch (NumberFormatException e) {
				addErrorMessage(e.getLocalizedMessage());
				return "housesale_list";
			}
			q = this.getEntityManager().findByProperty(getQueryProperty(),
					Integer.valueOf(getQueryValue()));
		} else if (this.queryProperty.equals("all")) {
			q = this.getEntityManager().getQuery("from HouseSale as o");
		} else {
			q = this.getEntityManager().findByProperty(getQueryProperty(),
					getQueryValue());
		}
		List list = q.list();
		this.setItemCount(list.size());
		q.setMaxResults(batchSize);
		q.setFirstResult(firstItem);		
		model = new ListDataModel(q.list());
		this.getEntityManager().closeCurrentSession();
		return "housesale_list";
	}

	public static void addErrorMessage(String msg) {
		FacesMessage facesMsg = new FacesMessage(FacesMessage.SEVERITY_ERROR,
				msg, msg);
		FacesContext fc = FacesContext.getCurrentInstance();
		fc.addMessage(null, facesMsg);
	}

	public static void addSuccessMessage(String msg) {
		FacesMessage facesMsg = new FacesMessage(FacesMessage.SEVERITY_INFO,
				msg, msg);
		FacesContext fc = FacesContext.getCurrentInstance();
		fc.addMessage("successInfo", facesMsg);
	}

	public HouseSale findHousesale(Integer id) {

		HouseSale o = null;
		try {
			o = (HouseSale) this.getEntityManager().get(id);

		} finally {
			return o;
		}
	}

	public javax.faces.model.SelectItem[] getHouseIDs() {

		SelectItem select[] =  new SelectItem[0];
		try {
			List<House> l = (List<House>) this.getEntityManager().getQuery(
					"from House as o where o.houseState='\u5DF2\u9884\u8BA2' or o.houseState='\u7A7A\u95F2'").list();//已预订或空闲
			select = new SelectItem[l.size()];
			int i = 0;
			for (House x : l) {
				select[i++] = new SelectItem(x,x.getHouseName());
			}

		} finally {
			return select;
		}
	}

	public javax.faces.model.SelectItem[] getCustomerIDs() {

		SelectItem select[] = new SelectItem[0];
		try {
			List<Customer> l = (List<Customer>) this.getEntityManager()
					.getQuery("from Customer as o").list();
			select = new SelectItem[l.size()];
			int i = 0;
			for (Customer x : l) {
				select[i++] = new SelectItem(x,x.getCustomerName());
			}

		} finally {
			return select;
		}
	}

	public int getItemCount() {

		return this.itemCount;

	}

	public int getFirstItem() {
		return firstItem;
	}

	public int getLastItem() {
		int size = getItemCount();
		return firstItem + batchSize > size ? size : firstItem + batchSize;
	}

	public int getBatchSize() {
		return batchSize;
	}

	public String next() {
		if (firstItem + batchSize < getItemCount()) {
			firstItem += batchSize;
		}
		return findHouseSales();
	}

	public String prev() {
		firstItem -= batchSize;
		if (firstItem < 0) {
			firstItem = 0;
		}
		return findHouseSales();
	}

}

⌨️ 快捷键说明

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