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

📄 housecheckcontroller.java

📁 一个购房管理系统,JSF+Hibernate+Mssql2
💻 JAVA
字号:
/*
 * HouseCheckController.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.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.dao.HouseCheckDAO;

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

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

	private HouseCheck housecheck;

	private DataModel model;

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

	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 HouseCheck getHousecheck() {
		return housecheck;
	}

	public void setHousecheck(HouseCheck housecheck) {
		this.housecheck = housecheck;
	}

	public DataModel getDetailHousechecks() {
		return model;
	}

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

	public String createSetup() {
		this.housecheck = new HouseCheck();
		this.housecheck.setCheckId(0);
		return "housecheck_create";
	}

	public String create() {

		try {

			saveHouseCheck();
			addSuccessMessage("Housecheck was successfully created.");
		} catch (Exception ex) {
			try {
				addErrorMessage(ex.getLocalizedMessage());

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

	private void saveHouseCheck() {
		this.getEntityManager().save(housecheck);
		Session s=this.getEntityManager().getSession();
		Transaction tx=s.beginTransaction();
		try {
			House house=housecheck.getHouse();
			house.setHouseState("\u5DF2\u9884\u8BA2");//已预订
			s.update(house);
			tx.commit();
		} catch (RuntimeException e) {
			tx.rollback();
			s.close();
		}
	}
	public String customerCreate() {

		try {

			saveHouseCheck();
			addSuccessMessage("房子预订成功.");
		} catch (Exception ex) {
			try {
				addErrorMessage(ex.getLocalizedMessage());

			} catch (Exception e) {
				addErrorMessage(e.getLocalizedMessage());
			}
		}
		return "v_HouseInfo";
	}
	public String detailSetup() {
		setHousecheckFromRequestParam();
		return "housecheck_detail";
	}

	public String editSetup() {
		setHousecheckFromRequestParam();
		return "housecheck_edit";
	}

	public String edit() {

		try {
			getEntityManager().update(housecheck);

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

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

	public String destroy() {

		try {

			HouseCheck housecheck = getHousecheckFromRequestParam();

			getEntityManager().delete(housecheck);

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

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

	public HouseCheck getHousecheckFromRequestParam() {
		HouseCheck o = null;
		try {
			o = (HouseCheck) model.getRowData();
			o = getEntityManager().get(o.getCheckId());

		} finally {
			return o;
		}
	}

	public void setHousecheckFromRequestParam() {
		HouseCheck housecheck = getHousecheckFromRequestParam();
		setHousecheck(housecheck);
	}

	public String findHouseChecks() {

		Query q = null;
		if (this.queryProperty.equals("checkId")
				|| this.queryProperty.equals("customer.customerId")
				|| this.queryProperty.equals("house.houseId")) {
			try {
				Integer.valueOf(getQueryValue());
			} catch (NumberFormatException e) {
				addErrorMessage(e.getLocalizedMessage());
				return "housecheck_list";
			}
			q = this.getEntityManager().findByProperty(getQueryProperty(),
					Integer.valueOf(getQueryValue()));
		} else if (this.queryProperty.equals("all")) {
			q = this.getEntityManager().getQuery("from HouseCheck 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 "housecheck_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 HouseCheck findHousecheck(Integer id) {

		HouseCheck o = null;
		try {
			o = (HouseCheck) 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").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 findHouseChecks();
	}

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

}

⌨️ 快捷键说明

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