📄 housecheckcontroller.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 + -