图5-9结账界面
2. 核心代码如下:
*** 退订房间* * public String queryLeaveRoom() { Object[] params = null; params = new Object[] { room.getRoom_name() }; String , where checkinRoom_id = ?\; query = HibernateUtil.queryAsParams(session, = (Checkin) query.uniqueResult(); if (checkin.getMember().getCard_id() .equals(member.getCard_id())) { memberId = checkin.getMember().getMember_id(); try { liveAllCount = (DateUtil.parseDateString( checkin.getLeave_date()).getTime() - DateUtil .parseDateString(checkin.getArrive_date()) .getTime()) (1000 * 60 * 60 * 24) * room.getRoomType().getPrice(); return \; } catch (ParseException e) { e.printStackTrace(); } } } } reserveMessage = \无此房间信息\;
return \; }
*** 结算* *
public String payCash() { dispenser = paidCash - liveAllCount + cash; Bill bill = new Bill(); bill.setMontary(liveAllCount); bill.setDateTime(DateUtil.formatDate(new Date())); session.save(bill); room = (Room) session.load(Room.class, roomId); room.setRoom_status(\空房\); session.update(room); checkin = (Checkin) session.load(Checkin.class, checkInId); session.delete(checkin); HibernateUtil.close(session, tran); reserveMessage = \结账成功\; return \; }
5.7信息查询界面及核心代码
信息查询模块有三个子功能:预定信息的查询,入住信息的查询,账单查询。预定查询可查询到当前酒店所有被预定的房间信息以及预定客户的信息;入住查询可查询到当前酒店所有已入住的房间信息以及入住客户的信息;账单查询可查询到当前酒店已结账的 房间的营收额。该功能的操作者为前台管理人员。
1.界面如下:
图5-10 预定信息查询界面
2. 核心代码如下:
public String query() { String > checkinLists = new ArrayList
if(\入住\.equals(queryStyle)) {
checkinLists = query.list();
for(int i=0;i Object[] res = new Object[5]; res[0] = checkinLists.get(i).getIn_id(); res[1] = checkinLists.get(i).getRoom().getRoom_name(); res[2] = checkinLists.get(i).getRoom().getRoomType().getDescription(); res[3] = checkinLists.get(i).getMember().getMem_name(); res[4] = checkinLists.get(i).getMember().getCard_id(); reserveList.add(res); }} return \; } 5.8 后台管理界面及核心代码 后台管理有两个子功能:房间的管理,前台管理人员的管理。采用Jquery和Ajax技术。房间的管理,即是对酒店的房间做增加或是删除的动作;前台管理人员的管理,即是对酒店的前台员工做增加或是删除的动作。该功能只能是管理员使用,一般前台管理员不能使用。 1. 界面如下: 图5-11 房间管理界面 2. 核心代码如下: **添加房间* public String addRoom() { room.setRoomType(roomType); room.setRoom_status(\空房\); session.save(room); tranmit(); session.close(); return \; } ** 删除某个房间* public String deleteRoom() { Room room1 = new Room(); room1 =(Room) session.load(Room.class, Integer.parseInt(id)); session.delete(room1); HibernateUtil.close(session, tran); } return \; } *** 查询所有员工 * * @SuppressWarnings(\) public String showAllUser() { String , \; } ** * 删除员工* * public String UserDelete() { User us = new User(); us = (User) session.load(User.class, Integer.parseInt(id)); session.delete(us); HibernateUtil.close(session, tran); return \; } *** 添加员工* * public String addUser() { session.save(user); HibernateUtil.close(session, tran); return \; 6 系统测试 6.1 系统测试的必要性 刚开发出来的系统不可能是十全十美的,必然会存在某些漏洞,这就需要程序员从各 个角度对系统做全方位的测试。 6.2 测试系统遇到问题及解决办法 开发过程中碰到最棘手的问题是Ajax如何运用到Struts轻量级框架中,以前知道的只是Ajax把请求发送到MVC2的servlet中,再将结果回传到javaScript。采用Struts之后不知道该如何运用Ajax技术。通过查阅书籍,搜集网上资料,请教老师,了解到怎么通过Ajax将请求发送到后台Action中,最后顺利把问题解决了。 其次就是系统主页面某个房间右击实现预定、入住、结账、续住、退订房间等功能。刚开始的时候是一点思路都没有,因为网页打开后有自带的右键事件,自己想增加右键事件,前提必须要将网页所带的右键事件给屏蔽掉,或者换句话说,就是用自己的右键事件
相关推荐: