?? sb_accommodationmanagerbean.java
字號:
package com.xc.hotelmanager.hotel.control.session;import javax.ejb.*;import javax.naming.*;import javax.rmi.*;import java.util.*;import java.util.Date;import java.text.SimpleDateFormat;import com.xc.hotelmanager.hotel.control.EjbGetter;import com.xc.hotelmanager.hotel.control.entity.*;import com.xc.hotelmanager.hotel.exception.*;import com.xc.hotelmanager.hotel.model.*;import com.xc.hotelmanager.hotel.control.entity.TbAccommodationBean;import java.sql.*;public class SB_AccommodationManagerBean implements SessionBean { SessionContext sessionContext; public void ejbCreate() throws CreateException { /**@todo Complete this method*/ } public void ejbRemove() { /**@todo Complete this method*/ } public void ejbActivate() { /**@todo Complete this method*/ } public void ejbPassivate() { /**@todo Complete this method*/ } public void setSessionContext(SessionContext sessionContext) { this.sessionContext = sessionContext; } public Collection getAccInfo(String cname, String roomid) throws HotelManagerException { try{ String sql="select * from Accommodation where roomid='"+roomid+"' and status='0'"; System.out.println(sql); return this.loadBySql(sql); } catch(Exception ex){ throw new HotelManagerException(ex.getMessage()); } } public String getleavedate() throws HotelManagerException { try{ java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd"); java.util.Date date = new java.util.Date(); String str_date = formatter.format(date); return str_date; } catch(Exception ex){ throw new HotelManagerException(ex.getMessage()); } } public int getlivedays(String id) throws HotelManagerException { try{ TbAccommodation ejbAcc=EjbGetter.getTbAccommodationHome().findByPrimaryKey(id); String str_date2=ejbAcc.getIntime(); java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyyMMdd"); java.util.Date TimeNow = new java.util.Date(); String str_date1 = formatter.format(TimeNow); int x=(Integer.parseInt(str_date1)-Integer.parseInt(str_date2)); int days=(x/10000)*365+((((x%10000)/1000)*10)+((x%1000)/100))*30+(x%100); if((days<100)&&(days!=0)){days=days-70;} else{days=days+1;} return days; } catch(Exception ex){ throw new HotelManagerException(ex.getMessage()); } } public float getTotelCost(String id) throws HotelManagerException { float cost; try{ TbAccommodation ejbAcc=EjbGetter.getTbAccommodationHome().findByPrimaryKey(id); int price=ejbAcc.getPrice(); int precharge=ejbAcc.getPrecharge(); String str_date2=ejbAcc.getIntime(); java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyyMMdd"); java.util.Date TimeNow = new java.util.Date(); String str_date1 = formatter.format(TimeNow); int days = (Integer.parseInt(str_date1) - Integer.parseInt(str_date2)); if((days<100)&&(days!=0)){days=days-70;} else{days=days+1;} cost=price*days-precharge; } catch(Exception ex){ throw new HotelManagerException(ex.getMessage()); } return cost; } public String saveToAcc(String id, String leavetime, float charge) throws HotelManagerException { String r1="保存成功,已存入數據庫!"; String r2="出錯啦!"; try{ TbAccommodation ejbAcc=EjbGetter.getTbAccommodationHome().findByPrimaryKey(id); ejbAcc.setLeavetime(leavetime); ejbAcc.setCharge(charge); return r1; } catch(Exception ex){ //throw new HotelManagerException(ex.getMessage()); return r2; } } private Collection loadBySql(String sql) throws Exception { Connection conn=EjbGetter.getDataSource().getConnection(); Statement st=conn.createStatement(); ResultSet rs=st.executeQuery(sql); Collection result=new Vector(); while(rs.next()){ Accommodation acc=new Accommodation(); acc.setId(rs.getString("id")); acc.setCid(rs.getString("cid")); acc.setName(rs.getString("name")); acc.setIntime(rs.getString("intime")); acc.setLeavetime(rs.getString("leavetime")); acc.setRoomid(rs.getString("roomid")); acc.setPrice(rs.getInt("price")); acc.setPrecharge(rs.getInt("precharge")); acc.setCharge(rs.getFloat("charge")); System.out.println("this is load method"); System.out.println(acc.getId()); System.out.println(acc.getName()); result.add(acc); } rs.close(); conn.close(); return result; } public Accommodation loadAccommodation(String id) throws HotelManagerException { try{ TbAccommodation ejbAccommodation=EjbGetter.getTbAccommodationHome().findByPrimaryKey(id); return ejbAccommodation.getAccommodation(); } catch(Exception ex){ throw new HotelManagerException("SB_AccommoManagerBean.load Eorr:"+ex.getMessage()); } } public void removeAccommodation(String id) throws HotelManagerException { try{ TbAccommodation ejbAccommodation=EjbGetter.getTbAccommodationHome().findByPrimaryKey(id); ejbAccommodation.setLeavetime(String.valueOf(new Timestamp(System.currentTimeMillis()))); } catch(Exception ex){ throw new HotelManagerException(ex.getMessage()); } } public Accommodation saveAccommodation(Accommodation arecord) throws HotelManagerException { try{ TbAccommodation ejbAccommodation=EjbGetter.getTbAccommodationHome().findByPrimaryKey(arecord.getId()); ejbAccommodation.setAccommodation(arecord); return arecord; } catch(Exception ex){ throw new HotelManagerException("SB_AccommoManagerBean.save Eorr:"+ex.getMessage()); } } public Accommodation addAccommodation(Accommodation arecord) throws HotelManagerException { try{ System.out.print("后臺測試傳入的老顧客的身份證號為:"+arecord.getCid()); Date date=new Date(); SimpleDateFormat df=new SimpleDateFormat("yyMMddhh"); SimpleDateFormat ds=new SimpleDateFormat("yyyyMMdd"); String str=df.format(date); str=str+arecord.getCid(); System.out.println(str); TbAccommodation ejbAccommodation=EjbGetter.getTbAccommodationHome().create(str,arecord.getCid(),arecord.getRoomid()); System.out.println("ejbcreate ok"); ejbAccommodation.setAccommodation(arecord); System.out.print("后臺測試老顧客的身份證號是否正確:"+arecord.getCid()); //ejbAccommodation.setInDate(new Timestamp(System.currentTimeMillis())); ejbAccommodation.setIntime(ds.format(date)); return arecord; } catch(Exception ex){ throw new HotelManagerException("SB_AccommoManagerBean.add Eorr:"+ex.getMessage()); } } public Collection getAllAccommodation() throws HotelManagerException{ try{ String sql="select * from Accommodation"; System.out.print("SB_AccommodationMangerBEAN.getAllAccommodation OK!"); return this.loadBySql(sql); } catch(Exception ex){ ex.printStackTrace(); System.out.print("SB_AccommodationMangerBEAN.getAllAccommodation Error!"); throw new HotelManagerException(ex.getMessage()); } } public Collection getSearchAccommodation(String sql)throws HotelManagerException{ try{ System.out.print("SB_AccommodationMangerBEAN.getAllAccommodation OK!"); return this.loadBySql(sql); } catch(Exception ex){ ex.printStackTrace(); System.out.print("SB_AccommodationMangerBEAN.getSearchAccommodation Error!"); throw new HotelManagerException(ex.getMessage()); } } public Collection getAllAccommodation(String id) throws HotelManagerException{ try{ String sql="select * from Accommodation where id='"+id+"'"; return this.loadBySql(sql); } catch(Exception ex){ throw new HotelManagerException(ex.getMessage()); } } public float getCost(String id) throws HotelManagerException{ float cost; try{ TbAccommodation ejbAcc=EjbGetter.getTbAccommodationHome().findByPrimaryKey(id); int price=ejbAcc.getPrice(); String str_date2=ejbAcc.getIntime(); java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyyMMdd"); java.util.Date TimeNow = new java.util.Date(); String str_date1 = formatter.format(TimeNow); int x = (Integer.parseInt(str_date1) - Integer.parseInt(str_date2)); int days=(x/10000)*365+((((x%10000)/1000)*10)+((x%1000)/100))*30+(x%100); if((days<100)&&(days!=0)){days=days-70;} else{days=days+1;} cost=price*days; } catch(Exception ex){ throw new HotelManagerException(ex.getMessage()); } return cost; }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -