1、盐城师范学院毕业设计技术报告盐 城 师 范 学 院毕业设计20112012学年度信息科学与技术 学院 计算机科学与技术(数字媒体)专业班级 08(4) 学号 08263349 课题名称 基于J2EE技术的宾馆管理系统的设计与实现学生姓名高 雄 指导教师王创伟 2012 年 3 月 09 日 摘 要宾馆管理系统的引入使宾馆内部能集中管理,集中控制,快速反应各个部门的经营状况,大大降低工作人员的劳动强度,提高工作效率,给客户带来极大的便利,同时带来良好的经济效益和社会效益。此外,宾馆管理中各种信息的提供使管理者实时动态地掌握宾馆的经营状况,还为管理者提供了有力的决策支持。而目前网络的迅速发展,也使
2、的远程客户预订客房提供了实现的可能;另外,随着宾馆业务的扩大,出现各地的连锁机构,通过网络收集宾馆业务数据进行决策。由此开发一套基于WEB的宾馆管理系统尤为必要。基于这个思想上进行开发设计的,积极的研究和开发基于WEB的宾馆管理系统是非常必要的。本人设计的宾馆管理系统是针对小型宾馆而设计的,以实用为主。论文简要介绍了系统的开发实现过程。对系统的需求分析、模块设计,数据库设计等各个环节进行了较详尽的分析和描述。较详细地介绍了宾馆管理系统所采用的关键技术,如JSP与数据库连接的技术JDBC。关键字:宾馆管理 J2EE MYSQLAbstractBy the MIS of hotels,it can
3、 enable hotels centralize their management and control. It also can reflect the management state of each department rapidly, reduce employees labor intensity greatly, improve working efficiency, bring the great facility to customers, and get the good economic benefits and social benefit at the same
4、time . In addition, the offering of different information can enable managers grasp hotels state dynamically in hotels management, offer strong decision support to administrator. And rapid development of computer network at present, make remote customers book their suited room offer the possibility
5、realized too. So, developed the hotel management information system based on WEB is particularly essential. My subject is based on it. After testing and debugging, the software is practical, effective. The MIS of hotel is designed for small guesthouses.The paper introduced briefly systems developmen
6、t realizes the process.To systems demand analysis, the module design, the database design and so on each link has carried on the exhaustive analysis and the description.Introduced in detail the guesthouse management system management system uses key technologies, like JSP and database connection tec
7、hnical JDBC.Keywords:hotel management J2EE MYSQL 目 录1 引 言52 概 述62.1 课题背景62.2 课题研究意义62.3系统特色62.4可行性分析63 课题开发关键技术分析83.1 Macromedia Dreamweaver MX 2004简介83.2 JSP概述83.2.1 什么是JSP83.2.2 JSP的特点83.3 Tomcat概述93.4数据库服务器114 可行性研究及需求分析114.1需求分析114.1.1功能需求114.1.2 系统模块体系图114.1.3 主要数据流图115 系统设计155.1前台管理模块165.2消费管理
8、模块175.3查询管理模块175.4报表管理模块175.5系统管理模块186数据库设计206.1数据库的概念模型设计206.2 数据库的逻辑模型设计236.2.1 宾馆客房数据表236.2.2 旅客入住数据表236.2.3 客房住宿数据表246.2.4 操作用户数据表246.2.5 消费信息表256.2.6 客房类型表257 系统实现267.1 系统主要功能模块的设计与实现267.1.1 入住登记子系统267.1.2 创建用户子系统277.1.3 客房入住报表子系统287.2 系统实现主要应用的核心技术297.3 系统调试与运行29参考文献31致 谢321 引言在高速发展的现代社会,人们生活速
9、率极大提高,服务行业的完善可以保证人们更好更方便的娱乐和休息,从而将更多的精力投入到工作和学习中,提高效率,加快整个社会的发展速度。宾馆是最前端的服务行业之一,它包括的服务项目多种多样,接受人群广泛,根据实地调查,比较完善的宾馆一般都包括住宿客房、餐饮、娱乐设施等服务项目,某些大型宾馆还包括提供办公场所,举办某些庆典等服务,总之,宾馆己经成为当今社会很普遍,涵盖率很高的服务场所,管理好宾馆的各项服务项目以及用户的各项消费条目既是商家经营的必要举措,也是消费者得到完善、满意的服务的保障。传统的人工管理方法存在着很多弊端,容易造成错误和混乱,同时,大量的信息、数据的更改、更新、记录、导出是一项很繁
10、琐同时费时费力的工作,常常会浪费人力物力。一套正规的、完整的管理系统是克服这些缺点的好办法,计算机的工作不仅会提高效率,减少人力资源的浪费,更突出的是以前繁杂的数据将会被系统的分类管理,记录清晰且持久。网络的发展更是给宾馆带来了新的挑战,通过网络预订客房,通过网络连接各个连锁店,因此,开发一个基于J2EE的宾馆管理系统是必要的。论文研究的意义就在于:可以降低人力资源成本,提高工作效率。降低优化服务流程,提升服务质量。实现资源最佳配置,增加宾馆收益。支持管理层全面了解经营状况,通过对宾馆的需求进行分析,设计了宾馆管理所需数据库和功能模块,并使用JSP和SQL Server开发了宾馆管理系统,实现
11、客房管理、消费管理、查询管理、报表管理、系统管理等功能。2 概述2.1 课题背景管理信息系统它采用科学的、有效的手段,对信息加以分析,通过建立一套科学的系统达到提高工作效率、降低各项成本和费用,最终提高经济效益和社会效益的目的。正是管理信息系统的这些功能,使得它与计算机、网络技术融为一体,成为知识经济的热点2.2 课题研究意义随着后工业化时代的到来,旅游业和商贸流通业的繁荣促使宾馆酒店业也得到了前所未有的发展:从国际大都会到边陲小镇,从家庭旅馆到星级酒店,不同档次、多种特色的宾馆酒店遍布于城乡的各种角落,不断刺激和满足着广大居民的消费需求。利用以计算机为基础的管理信息系统改善和挖掘宾馆酒店业的
12、市场潜力,从而最大限度地获取营业利润是目前宾馆酒店从业者们在软环境方面改善和提高服务的一个重要措施。“工欲善其事,必先利其器”。2.3 系统特色l 一体化的系统设计 宾馆管理系统包含前台管理、消费管理、查询管理、报表管理、系统管理功能模块,其中每个功能都由若干相关的子模块组成。除此之外,系统还包括信息系统必须具备的通用功能,例如权限设置。l 基于可成长的J2EE平台 浓缩了宾馆住宿行业现代化管理的先进思想,使系统具有先进性、可成长性、开放性、稳定性及集成性等优势。2.4 可行性分析可行性研究的目的是用最小的代价确定系统目标和规模是否能实现,所确定的问题是否可以解决,系统方案在经济上、技术上和操
13、作上是否可以接受。a) 经济可行性从投资来看,一般的企业都有能力承担硬件和软件的费用,而且也有实力支付系统操作人员的费用和各种管理成本。从收益来看,通过开发适合自己企业的管理信息软件,与竞争对手抗衡,提高业务水平和效率来获取更多的利益。b)技术可行性管理信息系统开发技术己经非常成熟,开发工具很多。下面这个组合可以满足宾馆管理信息系统开发的要求:Microsoft Windows XP操作系统、PC机、MYSQL, JSP开发工具和tomcat发布工具。c)操作可行性数字化的自动办公系统现在已经相当普遍,宾馆中操作人员只要稍微具备一点计算机的知识就可以轻松的进行管理操作,这种通过鼠标点击及输入一
14、定的信息的操作方式在现代的宾馆中是完全行得通的。3 课题开发关键技术分析3.1 Macromedia Dreamweaver MX 2004简介Macromedia Dreamweaver MX 2004 是一款专业的网站开发编辑器,用于对Web站点、Web页和Web应用程序进行设计、编码和开发,整个生产过程可以自动化,增强开发小组的工作效率。此外,Macromedia Dreamweaver MX 2004在支持JSP方面,新增或加强了一下功能:支持JSP标签库;可以从TLD中汇入完整的JSP卷标库,并且在卷标面板、卷标选择器和程序代码提示里显示出来。3.2 JSP 概述3.2.1什么是JS
15、PJava Server Pages即我们所称的JSP,是由Sun微软系统公司倡导、许多公司参与一起建立的一种动态网页技术标准,其在动态网页的中有其强大而特别的功能。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与Java Servlet一样,是
16、在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。3.2.2 JSP的特点a) 将内容的生成和显示进行分离:使用JSP技术,Web页面开发人员可以使用HTML或者XML(ExtensihMarked Language)标识来设计和格式化最终页面。b) 生成可重用的组件:绝大多数JSP页面依赖于可重用的、跨平台的组件(JavaBeans或者Enterprise JavaBean组件)来招待应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通组件操作,或者使得这些组件为理我的使用者所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有
17、的技能和优化结果的开发努力中得到平衡。c) 采用标识简化页面开发:JSP技术封装了许多功能,这些功能是在XML标识中进行动态内容生成所需要的。d)内置脚本语言为Java:由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都是被编译成为Java Servlet,因此JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。e)拥有Java的特点:JSP拥有Java编程语言“一次编写,可随处运行”的特点。3.3 TOMCAT 概述Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其
18、它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。Tomcat被JavaWorld杂志的编辑选为2001年度最具创新的java产品,可见其在业界的地位。Tomcat4.0x中采用了新的Servlet容器:Catalina,完整的实现了Servlet2.3和Jsp1.2规范。Tomcat提供了各种平台的版本供下载,可以从其官方网站上下载其源代码版或者二进制版。由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(Web Archive)文件。WAR是
19、Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和Jsp文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和Jsp或Servlet所依赖的其它类(如JavaBean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。在T
20、omcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,你可以在远程通过Web部署和撤销应用。当然本地也可以。Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的
21、处理静态Html的能力就不如Apache.我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet.这种集成只需要修改一下Apache和Tomcat的配置文件即可。3.4 数据库MYSQLMySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言-结构化查询语言(SQL)进行数据库管理。 由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都
22、认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。它使用系统核心提供的多线程机制提供完全的多线程运行模式,提供了面向C、C+、Eiffel、Java、Perl、PHP、Python以及Tcl等编程语言的编程接口(APIs),支持多种字段类型并且提供了完整的操作符支持查询中的SELECT和WHERE操作。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。4 项目需求分析4.1 需求分析本系统主要是提供给中小型宾馆使用,所以是以实用为主。具
23、体需求如下:4.1.1 功能需求a)旅客信息管理:包括对入住旅客的客房消费、餐饮消费、娱乐消费等各种信息的管理。b)宾馆客房管理:包括对宾馆已住客房和未住客房的安排、客房使用率、不同消费群体对各种客房的需求分析统计等。c)宾馆经营管理:包括对宾馆客房部、餐饮部、娱乐事业部、零售部等不同经营部门的统计、核算、分析以及业绩考核等。d)各种信息查询:能够方便地查询宾馆及旅客的各种最新信息等。e)系统管理:不同部门的员工对系统有不同的操作权限。4.1.2 系统模块体系图客房入住报表其他消费报表旅客结账报表报表管理查询旅客信息查询客房信息查询旅客押金查询管理宾馆管理信息系统消费管理系统管理前台管理登录管
24、理系统退出管理系统新建操作用户修改用户信息修改用户密码查询用户密码宾馆房间设置宾馆商品设置宾馆帮助信息其他消费登记旅客入住登记旅客结账退房旅客预定登记预计旅客入住图4-1系统模块体系4.1.3 主要数据流图数据流图用来描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况。其各个符号意义说明如下:正方形(或立方形):表示数据的源点或终点,即指外部实体。圆形:表示变换数据的处理。两条平行线:表示数据存储。箭头:表示数据流,即特定数据的流动方向。a)总数据流图客人图4-2总数据流客人宾馆管理系统登记离店结账单b)第二层数据流图前台客人后台数据库图4-3第二层数据流数据
25、库c)前台子系统客人客人预约接待取消预约离店图4-4前台子系统数据流d)客房预订登记客房预约数据表客户数据表有无指定房间已预订完预约单押金客人信息登记收银预约房间房间查询客人图4-5客房预订数据流e)预订入住和取消登记退款客房预约表客房预约表预定登记取消预定查询住宿单客人入住登记客房入住表客人详细信息登记预定收据图4-6预定入住和取消数据流收银f)接待未预订客人客人房间查询客人信息登记入住登记收银住宿单无空房有无空房客房数据表客房入住表图4-7未预定客人入住数据流g)结账离店客人退房收银押金费用收据无空房客房数据表客房结账表结账单客房入住表图4-8结账离店数据流5 系统设计根据前面需求分析,宾
26、馆管理系统应包含前台管理、消费管理、查询管理、报表管理、系统管理功能模块,其中每个功能都由若干相关的子模块组成。除此之外,系统还应包括信息系统必须具备的通用功能,例如权限设置。5.1 前台管理模块前台管理模块主要用于管理旅客入住时所发生的业务,包含的功能模块如图5-1所示。前台管理旅客入住登记旅客换房登记旅客预定登记预定旅客入住旅客补交押金旅客结账退房打印旅客账单图5-1前台管理模块图旅客入住登记:该模块用于宾馆前台服务员在旅客到达宾馆时登记旅客的入住基本信息,包括客人姓名、性别、证件号码、证件地址、入住房号,联系电话以及预收押金等信息。为了便于前台服务员查询宾馆的房间信息安排旅客,此模块通常
27、应该提供宾馆房间的入住信息,最好是能根据不同类型的房间进行筛选。旅客换房登记:该模块用于宾馆前台服务员为旅客换房,通常这种换房操作是在同类型的客房间进行:如果需要在异种类型的客房间进行此类操作,则应先结账再换房,比如从三人间换成双人间。旅客预订登记:该模块用于前台服务员登记未到达宾馆旅客的预订房间信息或旅行社组团预订客房信息。通常,当旅客在预交押金后,宾馆应该向客人出具收据,所以前台服务员可在保存前,打印旅客预订单充当收据。预订旅客入住:该模块用于前台服务员登记以前预订,现在到达宾馆的旅客入住信息。旅客补交押金:该模块用于前台服务员登记旅客补交押金信息。旅客结账退房:该模块用于旅客在离开酒店前
28、与前台服务员结账,包括电话消费,店内消费,餐饮消费,娱乐消费等。打印旅客账单:该模块用于前台服务员补打印旅客入住单或旅客结账单。5.2消费管理模块消费管理旅客餐费登记旅客餐费登记旅客餐费登记图5-2消费管理模块图旅客餐费登记:该模块用于前台服务员登记旅客在宾馆发生的餐费信息。通常,登记旅客的餐费信息有两种模式:一是旅客凭前台服务员的票证到餐饮部用餐;二是旅客在餐饮部签单后,由餐饮部转入前台登记。 旅客话费登记:该模块用于前台服务员登记入住旅客的话费信息。目前,大多数宾馆的客房提供了电话,并且市内通话基本是免费的。当旅客需要进行国内长途甚至国际长途通话时,则需要通过电话总机室转接(在大型的酒店宾
29、馆管理系统中,它是直接通过电话程控交换机与酒店宾馆信息系统接拨的),在这种情况下,宾馆通常会对旅客的长途通话进行计费。其他消费登记:该模块用于前台服务员登记入住旅客在店内的其他消费信息,如烟、酒、小食品、KTV娱乐等。目前,大多数中等档次的宾馆酒店除了客房部和餐饮部这两个主要的事业部外,基本上都设有娱乐性质的消费事业部,有的甚至已经使其成为主要的收入来源。消费事业部经营的项目种类繁多,价格也相当不菲。大多数情况下,宾馆要将此操作权限直接授予消费事业部的工作人员登记的,然后由消费事业部与前台结账。5.3查询管理模块旅客餐费登记查询管理旅客餐费登记图5-3查询管理模块图旅客餐费登记旅客餐费登记旅客
30、餐费登记查询旅客信息:该模块用于前台服务员查询和修改入住旅客的登记信息,比如修改旅客入住登记信息中的证件号码、证件地址、联系电话,甚至客人姓名等。通过模糊查询得到旅客信息。查询客房信息:该模块用于前台服务员查询宾馆客房的当前入住状态信息,类似于通常所说的房态图。查询商品消耗:该模块用于前台服务员或消费事业部采购人员查询酒店中各种商品的消耗情况信息,这有利于决策人员在时间上、种类上分析各种商品的消耗情况,从而有针对性地采购商品并制定相应的折扣价格。查询消耗总量:该模块用于前台服务员或消费事业部采购人员查询酒店中各种商品的消耗汇总信息,这有利于决策人员在时间上、品种上统计各种商品的消耗情况汇总信息
31、。查询旅客押金:该模块用于前台服务员查询酒店中旅客的各种费用及押金信息,并根据具体情况催促旅客补交押金。5.4报表管理模块旅客结账报表报表管理客房入住报表图5-4报表管理模块图其他消费报表餐饮消费报表电话消费报表客房入住报表:该模块用于管理人员查询宾馆在某一时期内旅客的入住登记信息,包括已经结账离开和正在入住的旅客入住登记信息。此信息通常可作为公安部门调阅宾馆旅客入住的流水记录,也可以作为数据挖掘人员分析酒店客房入住率的前期资料。餐饮消费报表:该模块用于管理人员查询在某一时间段内入住旅客在宾馆内的餐饮消费信息。此信息通常可作为宾馆餐饮部的结算凭据,也可作为数据挖掘人员分析宾馆餐饮消费的前期资料
32、。其他消费报表:该模块用于管理人员查询在某一时间段内入住旅客在宾馆内的其他消费信息。此信息可作为娱乐事业部、小卖部等其他事业部的结算凭据,也可作为数据挖掘人员分析宾馆其他消费的前期资料。电话消费报表:该模块用于管理人员查询在某一时间段内入住旅客在宾馆内的话费信息。目前,由于移动通信的迅速发展和整体通信资费的下降,在中心城市宾馆酒店的电话消费已经呈逐年下降的趋势,但在风景名胜区宾馆酒店的长途话费仍然占相当大的比重。旅客结账报表:该模块用于管理人员查询宾馆在某一时间段内已经结账的旅客费用信息。5.5系统管理模块系统管理图5-5系统管理模块图登录管理系统退出管理系统新建操作用户修改用户信息修改用户密
33、码查询用户密码分配用户权限宾馆房间设置宾馆商品设置系统帮助信息登录管理系统:该模块用于操作用户使用自己在新建用户模块中登记的用户名和密码登录系统。新建操作用户:该模块用于新建操作用户,正确填写电子邮箱,通过电子邮箱可查询用户自己的登录密码。修改用户信息:该模块主要用于修改自己的电子邮箱。修改用户密码:该模块要根据以前的密码才能设置新密码,若输入的旧密码不对,则无法设置新密码。查询用户密码:该模块可通过自动发电子邮箱得到自己的密码,前提是用户名和邮箱在数据库中要存在并且对应。分配用户权限:该模块根据不同部门的任务分配给工作人员不同的权限,根据不同的权限使用不同的模块。宾馆房间设置:该模块用于设置
34、客房的标准及价格等信息。宾馆商品设置:该模块用于设置商品及服务收费项目信息。6 数据库设计我们需要从下面一些方面考虑数据库的设计:数据库冗余度小、函数依赖性明确、数据库的表命名体现表的内容、表中各属性的名称及类型体现该属性的含义、建立好的索引、选定适当的键、设定个字段的约束规则、表在减少冗余时应考虑实际使用时的方便性。6.1数据库的概念模型设计概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员与用户之间进行交流的语言。概念模型的表示方法很多,其中最为著名最为常用的是P. P. S. Chen于1476年提出的实体关系方法。
35、下面给出系统主要实体及其关系a)宾馆客房信息实体客房信息房号类型可住人数已住人数单价楼层图6-1宾馆客房实体图b)客房入住信息实体图客房信息入住编号客人姓名证件名称折扣价格预收押金图6-2客房入住信息实体图证件号码证件地址住宿人数客人性别联系电话入住日期入住房号c)客房预订信息实体图客房预定入住编号客人姓名住宿天数自编号预收押金图6-3客房预定信息实体图客人性别联系电话入住日期预约房号d)结账退房实体图客房信息入住编号客人姓名店内消费结账编号结账日期图6-4结账退房实体图住宿费电话费用餐费预收押金结账金额入住日期入住房号e)主要实体之间的关系的ER图客房入住登记旅客预定登记结账1RMN1P图6
36、-5主要实体间关系E-R图结账退房信息订房信息6.2 数据库的逻辑模型设计宾馆管理信息系统包含9张主要表,这些表是各项操作的中枢,以下是对这些表做的结构设计。6.2.1 宾馆客房数据表宾馆客房数据表对宾馆的每个客房建立一条记录,用来记录客房基本状况(客房号、客房类型、单价、可住人数)。这样,既方便用户为顾客办理客房登记,又不会增加数据的冗余。如表6-1所示。表6-1 宾馆客房数据表字段类型大小是否空roomidint11否roomtypeidint11roomnumvarchar45roomposvarchar45roomenabledint116.2.2 旅客入住数据表旅客入住表是记录旅客的
37、基本信息,确定旅客的身份。旅客入住表如表6-2。表6-2 旅客入住数据表字段类型大小是否空lodgeridint11否lodgernamevarchar45lodgersexvarchar45lodgerbloodvarchar45lodgerphonevarchar45lodgeremailvarchar45lodgeraddressvarchar45lodgerusernamvarchar45lodgeruserpwdvarchar45lodgerenabledint116.2.3 客房住宿数据表客房住宿表中存放的是客房的住宿记录,操作员和旅客都可以查询住宿记录。表6-3 客房住宿数据表字
38、段类型大小是否空lodgeidint11否lodgeridint11roomidint11lodgestartdatelodgeenddatelodgetotalpricedoublelodgeledgedoublelodgedaiesint11lodgeacounttypeint11lodgeenableint11lodgetypeint116.2.4 操作用户数据表操作用户表用于存储宾馆信息系统的操作用户信息及操作权限信息,不同的员工对系统的模块有不同的操作权限,这可以很好的安排工作。表6-4 操作系统数据表字段类型大小是否空useridint11否usernamevarchar40pas
39、swordvarchar45compnamevarchar45compdescvarchar45compaddressvarchar45compphonevarchar45compemailvarchar45useremailvarchar45varcharvarchar45userphonevarchar456.2.5 消费信息表消费信息用于记录客户的消费情况。表6-5 餐费入账数据表字段类型大小是否空consumeidint11否lodgeridint11consumetimesint11consumetotalpricedouble6.2.6 客房类型表客房类型用于保存客房类型信息。表6
40、-6 客房类型数据表字段类型大小是否空roomtypeidint11否roomtypenamevarchar45roomtypedescvarchar45roomtypepricedouble7 系统实现7.1 系统主要功能模块的设计与实现由系统设计的设计方案可知,本宾馆管理信息系统设计功能基本完整,由于篇幅和时间的限制,在这里只是从中挑选比较有代表性、关键性的几个重要模块作相应的论述。7.1.1 入住登记子系统入住登记子系统是整个宾馆前台操作中最重要的功能模块之一,可以说前台接待质量的好坏直接影响宾馆客人的入住率和声誉。一套高质量的宾馆管理系统应该能使宾馆前台工作人员能快捷有序地为客人办理不
41、同类型的入住登记手续,这一点当宾馆前台等待入住的客人较多时就显得尤为重要。操作人员经过培训后在不到半分钟内即可通过计算机操作完成入住登记手续。以下是客人入住的一般操作步骤:a)在操作员登录界面,用户必须输入自己的操作员用户名和密码方可进入系统操作。系统登录界面如图7-1所示。图7-1 系统登录界面b)进入系统后,前台服务员的权限是只能进入前台管理模块的入住登记子系统,进行入住登记。通过宾馆房间类型查询空房,选择后,再输入客人相应的信息,保存即可。这里的入住日期和离开日期使用第三方控件实现的,免去了人工的输写,避免时间类型的不匹配和时间的浪费。对于输入的信息的正确性通过JQuery valida
42、te判断,通过脚本代码实现。入住登记界面如图7-2所示。图7-2 入住登记界面7.1.2 创建用户子系统当管理员进入系统后,可以创建用户。本子系统同样使用JQuery validate进行数据校验。创建用户界面如图7-3所示。图7-3 分配用户权限界面7.1.3 客房入住报表子系统通过选择查询条件,查询宾馆入住情况,包括正在入住的和已经结账的。客房入住报表界面如图7-4所示。图7-4 客房入住报表界面7.2 系统实现主要应用的核心技术a) 数据库连接技术在所有的调用数据库的页面中,都要用得与数据库连接的语句,为了方便起见,将数据库连接部分写在bean里,以后所有用到数据库交互的页面只要引用bean的类即可。本数据库连接是基于Apache dbcp数据库连接池实现的。b) 第三方时间控件的应用工具的使用能够极大地提高人的工作效率。第三方控件的使用同样也能够使程序各方面的性能有极大的提升。在设计中,使用时间控件calendar可以使得日期的输入简单并且格式统一。具体使用方法如下:先将控件的文件夹放到目录里,再在页面里声明:scripttype=text/javascriptsrc=/Js/DatePicker/WdatePick