杨瀚博酒店客房管理论文_第1页
杨瀚博酒店客房管理论文_第2页
杨瀚博酒店客房管理论文_第3页
杨瀚博酒店客房管理论文_第4页
杨瀚博酒店客房管理论文_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2011届毕业设计说明书基于UML酒店客房管理信息系统系 、 部: 计算机与信息科学系学生姓名:杨瀚博 指导教师:唐琨皓职称 讲师 专 业:计算机网络技术 班 级: 网络0902班完成时间:2012.05 摘 要随着时代的发展、科学的进步,信息时代已经遍布全球,计算机已广泛地深入各行各业,起着越来越巨大的作用。随着酒店数量不断增加,管理这些庞大的数据是非常困难的,因为酒店的客房登记信息是随时变化的,因此必须对酒店客房信息进行时时化的管理,而这对于一个酒店管理人员来说是一件比较复杂的事情,存储,查询,更新,删除是必不可少的业务。为了能让酒店管理员从繁重的工作中解脱出来,使酒店管理员在使用一个软件

2、以后能极其容易地对所有酒店信息时时更新进行管理,并且准确无误,轻松自如。因此开发一个酒店客房管理信息系统软件是当务之急,也是本论文选题的重要意义和研究宗旨。由于UML语言的简易,便用简便,服务器空间成本相对较低,并且有Mircosoft的支持,使得很多中小型的Web系统采用此语言,而面向对象的优势也使得开发应用程序变得非常容易,所以本系统采用UML语言来编写,开发环境采用Eclipse,数据库采用SQL Server2000。本文简单介绍了酒店客房管理信息系统的基本客房信息管理、客房经营管理、订房/退房信息管理、经营状况统计等业务流程。结合管理信息系统开发的理念,开发了酒店客房信息管理系统。关

3、键词:管理系统;信息管理;UML;SQL Server2000ABSTRACTWith the development of the times, the progress of science, the information age has been around the world, the computer has been widely used in all walks of life, plays a more and more important role. With the increasing number of hotels, the management of thes

4、e large data is very difficult, because the hotel room registration information is always changing, so it is necessary to hotel rooms information from time to time management, which is for a hotel management staff is a more complicated things, storage, query, update, delete it essential business. In

5、 order to make the hotel managers from the heavy work out, so that the hotel manager in the use of a software is very easy to be able to update all hotel information management, and the accuracy, ease. Therefore the development of a hotel management information system software is a pressing matter o

6、f the moment, is also the thesis selected topic significance and research purposes.Because of the UML language simple, use convenient, server space at relatively low cost, and has the support of Mircosoft, making many small Web system using this language, and object-oriented advantage also makes the

7、 development of applications very easily, so the system uses UML language to write, using Eclipse development environment, the database using SQL Server2000.This paper briefly introduced the hotel management information system basic information management rooms, guest room management, booking / chec

8、k-out information management, business statistics and other business processes. The union management information system development concept, development of the hotel guest room information management system.朗读显示对应的拉丁字符的拼音 字典可翻译 50 多种语言· · · ! · nazdar!· Es ist sehr inte

9、ressant!· Buongiorno Principessa!· hoje está ensolarado· Je parle un petit peu français.· Wie bitte?· haydi gidelim· ¿Cómo estás?· Vær så snill· · Wie gehts?· La voiture· hello· .· mijn vriend· &

10、#183; miracoloso· Wie heißen Sie?· · Pardon ?· s t· · rouge· · Ich bin vierzig Jahre alt· escargots· · · · · dti· Hjelp!· Je ne sais pas !Key words management system;information management;UML;SQL Server2000目 录1 前言7

11、1.1 课题的目的和意义71.2研发背景71.3系统目标81.4 系统模块图92相关技术102.1 ExtJs102.2 Dwr102.3 Struts112.4 Hibernate113 系统分析133.1 可行性分析133.1.1 经济性133.1.2 技术性133.2需求分析及系统功能133.2.1 用户信息管理需求134 系统总体设计154.1 系统总体架构与设计154.1.1 设计原则154.2 系统E-R图154.3数据库设计165 功能模块详细设计及实现235.1酒店客房管理系统首页的设计235.2客房信息管理页面设计255.3客房信息添加/修改页面设计285.4客房经营管理页面

12、设计325.5订房/退房管理页面设计及其代码分析365.6经营状况统计页面设计396 系统测试436.1 系统开发环境436.2 系统测试436.2.1 测试项目说明436.2.2 测试评价44总结与展望45参考文献46致谢471 前言1.1课题的目的和意义当今社会,是个高科技、高效率、高度竞争的全新社会。随着人们物质水平的逐步提高,人们的精神生活也开始趋向丰富多彩。人们已经不再仅仅局限于待在家中,不再把自己局限在周围的生活圈子里。为了丰富自己的文化生活和自身娱乐,人们已经习惯了利用假期外出旅游。各个地区的旅游业也因此出现了持续增长的好势头。这对于各地的酒店来说是一种机遇也是一种挑战。商场如战

13、场,竞争十分激烈 ,在竞争中如果企业本身不能从企业内部入手,提高自身的竞争力,就有可能被社会所淘汰。只有提高企业自身的生命力才是企业正确的发展方向。酒店以前那种老的运作机制已经不能适应当今社会的需要,单纯靠手工去进行大量的信息处理,不但给企业本身带来很大的不便,同时也给顾客带来很大的麻烦,造成企业耗费大量的人力、物力和时间,仍然导致工作效率的降低。所以,对于酒店部门来说,建立一套合理有效的管理信息系统迫在眉睫,这也是适应社会发展和增强竞争力的主要手段。1.2研发背景当今社会,因特网技术的飞速发展正在迅速地改变着人们的生活方式,因特网正在由科学工作者的工具变为普通百姓获取信息、进行交流的场所,而

14、因特网的商业应用则尤为引人注目。21世纪的酒店,从内部管理到外部销售都将发生质的变化。激烈的市场竞争,要求酒店引入更多、更新、更高的IT技术,非单一的前台管理软件甚至传统的前、后台软件所能满足。现代化的酒店组织庞大,服务项目多,信息量大,要想提高劳动生产,降低成本,提高服务质量和管理水平,进而促进经济效益,必须借助计算机来进行现代化的信息管理。 成功的酒店是将经济效益作为酒店的运营宗旨,管理的核心是在于如何提高经济效益。优秀的酒店客房信息管理系统以酒店的经济效益为目标,为酒店管理人员和员工提供简单易用、功能强大并高度灵活的应用工具,激励他们的积极性,促使他们向酒店提供更好的服务。这些改进使宾客

15、感到更加满意,为酒店带来更多的回头客和收入。同时,通过对人流、物流、资金流的科学管理和有效控制,提高员工的工作效率,降低各种经营成本,从而获取持久的利润,因此酒店行业对于酒店管理系统的引进势在必行。1.3系统目标此次设计将要模拟完成建立一个酒店客房信息管理系统,实现信息化。对于酒店管理者可以实现客房入住登记、退房/续房、客房时时动态等,节省了大量的劳力财力,加强了公司的现代化管理和高效的服务。酒店客房管理中所涉及到的大量数据都由数据库管理系统管理。本文中数据库服务器端采用了商业流行的SQLSERVER2005作为后台数据库,结合SQL语句强大的处理功能实现酒店管理中各个对象的分类、添加、删除、

16、修改等操作,采用免费的eclipse编程平台,使开发成本降到最小。经过对酒店管理业务的具体分析,精心对相关信息的学习和在指导老师的指导下,朋友的帮助下多次改进终于开发制作了这个酒店管理系统,本系统的设计遵循软件开发的全过程,在做需求分析的时候实际到酒店企业中熟悉酒店的业务流程和管理,然后概要设计,详细设计和编码测试。每个过程都按照软件工程的规范进行。本系统的设计中运用UML语言操作后台数据库。该系统的操作界面简洁,适合各类管理人员应用。在安全性方面,通过数据库的权限管理,实现系统的灵活性和系统的安全性。管理者还可以通过修改密码来进行用户管理。笔者完成了酒店管理系统的全部制作,从需求分析到编码测

17、试,从概要设计到详细设计,通过笔者的努力基本实现了酒店客房管理系统的基本功能,并对业务所需要信息进行维护。本系统有以下特点:系统中模块划分明确,模块功能设计有较强的针对性。系统操作界面简单,灵活性好、响应时间短,系统安全性高,运行稳定。设计完全符合软件工程中的各个阶段的要求,模块间具有高内聚,低耦合的良好性能。1.4 系统模块图基于UML酒店客房管理系统系经营状况统计基员工信息管理进客房类型管理销客房经营管理库客户信息查询图1 系统模块图2相关技术2.1 ExtJsExt JS(下简称Ext)是以HTML作为控件的骨干、CSS作为样式的表现、以JavaScript作为粘合语言,可应用于IE/F

18、ireFox/Opera等的浏览器上的AJAX UI组件库。Ext的产生,最早是在YUI的库的基础上扩展开来,因此Ext早期名字是YUI-Ext。在2005年下半年的时候,Jack Slocum有一个AJAX项目需要维护,他选择了YUI库作为底层库,经历半年的时间都围绕着YUI进行开发。但是当YUI变得越来越大,功能需求也越来越多,他逐渐发觉维护YUI并不是一件容易的事情。在工作的同时,又接触了Swing,Java平台上的UI库,他用了极少的时间研究并着手改写YUI,使之呈现较先进的Swing UI理念。经过一边写技术博客,一边以YUI-Ext的形式开放自己写的UI,包括Grid、Tree等呼

19、声很高的UI组件。在Jack一手开发和社区营造下,此时YUI-Ext已经成为一个成熟的AJAX UI框架,而且是独立的框架,可不受YUI的影响并且兼容jQuery/Prototype.js的其他JS库。其时改名为Ext JS(April 15th 2007)。在2007年2月,Ext获得刚成立的公司的财务支持,因此又增加了许多强力的功能。到Ext 2.0的时候已经具备了Swing很多的特性,即components/containers/layouts等的概念纷纷应用在内。Ext 2.0是一个真正成熟的框架,各方面的完善程度较高,即使升级到后来的3.0无论底层结构还是配置代码均无须太大改动。3.

20、0增加了Ext Direct、DataWriters、Accessibility (ARIA)等更多的增强功能。时至今日,Ext已经广为人知,并且有越来越多人参与了 GWT的GXT和可视化设计师Desinger,因此越来越多用户声称,就算不了解JavaScipt编程,只要透过Desinger IDE,通过鼠标的操作就可以拥有一个Ajax界面。另外一方面,许多人基于Ext的基础上演进了不同后台的整合方案,甚至手机上也可以运行Ext! 2.2 DwrDWR(Direct Web Remoting)是一个开源的类库,可以帮助开发人员开发包含AJAX技术的网站.它可以允许在浏览器里的代码使用运行在WE

21、B服务器上的JAVA函数,就像它就在浏览器里一样。它包含两个主要的部分:允许JavaScript从WEB服务器上一个遵循了AJAX原则的Servlet中获取数据。另外一方面一个JavaScript库可以帮助网站开发人员轻松地利用获取的数据来动态改变网页的内容。DWR采取了一个类似AJAX的新方法来动态生成基于JAVA类的JavaScript代码.这样WEB开发人员就可以在JavaScript里使用Java代码就像它们是浏览器的本地代码(客户端代码)一样;但是Java代码运行在WEB服务器端而且可以自由访问WEB 服务器的资源.出于安全的理由,WEB开发者必须适当地配置哪些Java类可以安全的被

22、外部使用。这个从JAVA到JavaScript的远程功能方法给DWR的用户带来非常像传统的RPC机制,就像RMI或者SOAP一样,而且拥有运行在WEB上但是不需要浏览器插件的好处。DWR不认为浏览器/WEB服务器协议是重要的,而更乐于保证编程界面的简单自然.对此最大的挑战就是把AJAX的异步特性和正常JAVA方法调用的同步特性相结合.在异步模式下,结果数据在开始调用之后的一段时间之后才可以被异步访问获取到.DWR允许WEB开发人员传递一个回调函数,来异步处理Java函数调用过程。2.3 StrutsStruts只是一个MVC框架(Framework),用于快速开发Java Web应用。Stru

23、ts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。 Struts是一种MVC(Model View Controller)模式框架。它是Apache基金会Jakarta项目组中的一个Open Source 项目,它能够很好地帮助Java开发者通过J2EE开发Web应用程序。Struts是基于面向对象设计的,它的实现重点在控制器(C)上,同时也为视图

24、提供了一系列定制标签功能。基于Struts构架的Web应用程序基本上符合JSP Model 2 的设计标准,可以说是传统MVC设计模式的一种变化类型。2.4 HibernateHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Hibernate的核心接口

25、一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五的核心接口分别加以介绍。 Session接口:Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hiberna

26、te中的session,而以后会将HttpSesion对象称为用户session。 SessionFactory接口:SessionFactroy接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。 Configuration接口:Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在H

27、ibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。 Transaction接口:Transaction接口负责事务相关的操作。它是可选的,可发人员也可以设计编写自己的底层事务处理代码。 Query和Criteria接口:Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。3 系统分析3.1 可行性分析通过计算机网络对各种宾馆客房进行全面的管理,满足宾馆现代化管理需求。 经济性中小企业运行过程中信息的系统化管理,数据统计,为中小企业的经营决策提供了大量的数据

28、:强大的库存盘点功能,简化了员工的日常工作,提高了员工的工作效率,也提高了中小企业的经济效益。 技术性在高系统配置,高网络带宽服务的情况下,各个级别的管理员很容易通过网站对其操作范围内的系统内容信息进行操作管理,完成满足日常经营、管理的要求。系统简单易学,方便实用。界面在设计过程中要充分考虑管理人员和使用人员的习惯,操作要简单,数据录入要迅速,规范可靠,统计要准确,制表要灵活,适应性强等。3.2需求分析及系统功能通过调研和分析,将系统分成员工、客房、客户、经营信息管理四大子模块。其操作范围内的系统内容信息进行操作管理,完成满足日常经营、管理的要求。用户信息管理需求对酒店客房管理系统的使用员工进

29、行管理,包括对员工的基本信息(如用户姓名、所属部门、用户类型等)进行检索、录入和修改。客房类型管理需求用户可自定义客房类型,并对其进行管理,包括对客房类型的基本信息(如类型名称、面积、床位、价格等)进行检索、录入和修改。客房信息管理需求用户对客房信息进行管理,包括对客房的基本信息(如客房号、客房类型、客房位置等)进行检索、录入和修改。客房经营管理需求实现对客房的订房和退房管理,包括对客房的业务信息(如客房号、入房时间、退房时间、金额等)进行检索、录入和修改。客户信息查询需求用户可对入住过酒店的客户信息进行查询,包括对客户的基本信息(如身份证号、客户姓名、联系电话)进行检索。经营状况统计需求根据

30、酒店客房的业务记录,用户可选择不同的统计方式对营业额进行统计。4 系统总体设计4.1 系统总体架构与设计 设计原则根据酒店管理现状,实现管理者高效操作,特别在客户,客房,以及经营情况这三个模块之间实现互联,以达到对酒店客房信息进行及时更新及记录。4.2 系统E-R图4.3数据库设计在酒店客房管理系统中,数据库的设计工作主要包括建立管理系统的数据库,创建所需要的表,也可以设计相关的视图及存储过程。这些设计工作都在SQL Server 2000环境下操作并实现。创建表数据库JdglSys包含以下7个表:用户信息表(UsersInfo)、客户信息表(CustomersInfo)、客房类型表(Room

31、Category)、客房信息表(RoomsInfo)、客房状态表(RoomStatus)、客房业务表(RoomOperation)、业务记录表(History)。下面分别介绍这些表的结构。(1) 用户信息表用户信息表(UsersInfo)用来保存使用该系统的酒店员工的基本信息,表UsersInfo的结构如表1所示。表1用户信息表(UsersInfo)编 号字 段 名 称数 据 结 构说 明1UserIdInt用户编号2NameVarchar(50)用户姓名3PasswordVarchar(50)密码4GenderInt性别(0男,1女)5EmailVarchar(50)Email地址6Addr

32、essVarchar(50)通讯地址7TelephoneVarchar(50)联系电话8DepartmentVarchar(50)所在部门9TypeInt用户类型(1酒店管理员,2前台服务员(2) 客户信息表客户信息表(CustomersInfo)用来保存在酒店订房的客户的基本信息,表CustomersInfo的结构如表2所示。表2 客户信息表(CustomersInfo)编 号字 段 名 称数 据 结 构说 明1CIdentityIdnVarchar(50)身份证号2CNamenVarchar(50)客户姓名3CPhonenVarchar(50)联系电话(3) 客房类型表客房类型表(Room

33、Category)用来保存酒店所有客房类型的基本信息,表RoomCategory的结构如表3所示。表3 客房类型表(RoomCategory)编 号字 段 名 称数 据 结 构说 明1RCategoryIdInt客房类型编号2NamenVarchar(50)类型名称3AreaFloat客房面积4BedNumInt配置床位5PriceMoney客房价格6AirConditionInt配置空调(0是,1否)7TVInt配置电视(0是,1否)(4) 客房信息表客房信息表(RoomsInfo)用来保存酒店所有客房的相关信息,表RoomsInfo结构的如表4所示。表4 客房信息表(RoomsInfo)编

34、 号字 段 名 称数 据 结 构说 明1RoomIdInt客房号2RCategoryIdInt客房类型编号3RPostitionnVarchar(50)客房位置4DescriptionnVarchar(50)描述(5) 客房状态表客房状态表(RoomStatus)用来保存客房使用情况的基本信息,表RoomStatus结构的如表5所示。表5 客房状态表(RoomStatus)编 号字 段 名 称数 据 结 构说 明1RoomIdInt客房编号2StatusInt状态(1空房,2入住)(6) 客房业务表客房业务表(RoomOperation)用来保存目前酒店正有客户入住的客房的相关信息,表Room

35、Operation的结构如表6所示。 表6客房业务表(RoomOperation)编 号字 段 名 称数 据 结 构说 明1RoomIdInt客房编号2BeginTimeDateTime入住时间3CIdentityIdnVarchar(50)客户身份证号4RemarksnVarchar(50)备注(7) 业务记录表业务记录表(History)用来保存酒店里所有入住过客户的客房的业务信息,表History的结构如表7所示。 表7 业务记录表(History)编 号字 段 名 称数 据 结 构说 明1BeginTimeDateTime入住时间2EndTimeDateTime退房时间3RoomIdI

36、nt客房编号4TotalPriceMoney金额5CIdentityIdnVarchar(50)客户身份证号6CNamenVarchar(50)客户姓名7CPhonenVarchar(50)客户电话8RemarksnVarchar(50)备注创建存储过程在酒店客房管理系统运行过程中,系统会在数据库中频繁查找或更新各种信息,例如,向客房信息表(RoomsInfo)中插入或删除新的客房信息,根据客房类型和状态查找客房信息,记录订房或退房信息等操作。为了提高系统的运行效率,创建了13个存储过程。部分存储过程的Transact-SQL代码如下。(1) 存储过程sp_ValidateUser用于系统在用

37、户登录时验证该用户身份的有效性。如果该用户身份有效,返回该用户的用户类型。CREATE PROCEDURE sp_ValidateUser( name nvarchar(20), pwd nvarchar(15) , IsValid Int output,type Int output) ASif (select count(Type) from UsersInfo where Name=name and Password=pwd ) =1begin - type用于记录该用户的用户类型select type=Type from UsersInfo where Name=name and Pa

38、ssword=pwd - 该用户身份有效,IsValid置为1 select IsValid = 1 endelse - 该用户身份无效,IsValid置为0 select IsValid = 0(2) 存储过程sp_InsertRoom用于管理员添加新的客房信息时,系统向表中录入该客房信息。CREATE PROCEDURE sp_InsertRoom(RoomId int,RCategoryId int,RPosition nvarchar(50),Description nvarchar(50) AS - 向表RoomsInfo中插入新的客房信息 insert into RoomsInfo

39、 values( RoomId,RCategoryId,RPosition,Description) - 向表RoomStatus中插入新信息,并将该客房状态置为1(空房) insert into RoomStatus values( RoomId,1)(3) 存储过程sp_ShowRoomByCatgAndStatus用于根据客房类别或状态来获取客房信息。CREATE PROCEDURE sp_ShowRoomByCatgAndStatus( RCategoryId int,Status int) AS - 查找所有客房的信息 if RCategoryId=0 and Status=0Sel

40、ect r.RoomId, c.Name,s.Status From RoomsInfo r, RoomCategory c, RoomStatus s Where s.RoomId=r.RoomId and c.RCategoryId=r.RCategoryId- 根据客房类型查找客房信息 else if RCategoryId!=0 and Status=0Select r.RoomId, c.Name,s.StatusFrom RoomsInfo r, RoomCategory c, RoomStatus s Where s.RoomId=r.RoomId and c.RCategory

41、Id=r.RCategoryId andr.RCategoryId=RCategoryId - 根据客房状态查找客房信息 else if RCategoryId=0 and Status!=0 Select r.RoomId, c.Name,s.Status From RoomsInfo r, RoomCategory c, RoomStatus s Where s.RoomId=r.RoomId and c.RCategoryId=r.RCategoryId and s.Status=Status - 根据客房类型和状态查找客房信息 elseSelect r.RoomId, c.Name,s

42、.StatusFrom RoomsInfo r, RoomCategory c, RoomStatus s Where s.RoomId=r.RoomId and c.RCategoryId=r.RCategoryIdand r.RCategoryId=RCategoryId and s.Status=Status(4) 存储过程sp_GetRoomDetails用于根据客房号来获取客房的详细信息。CREATE PROCEDURE sp_GetRoomDetails(RoomId int)AS Select r.RoomId, s.Status, c.Name, c.Area, c.BedNu

43、m, c.Price, r.RPosition From RoomsInfo r,RoomCategory c,RoomStatus s Where c.RCategoryId=r.RCategoryId and s.RoomId=r.RoomId and r.RoomId=RoomId(5) 存储过程sp_DeleteRoom用于管理员删除客房信息时,系统删除该客房在表中记录。CREATE PROCEDURE sp_DeleteRoom ( RoomId int) AS-删除该客房在表RoomsInfo中的记录Delete from RoomsInfo where RoomId = Room

44、Id-删除该客房在表RoomStatus中的记录Delete from RoomStatus where RoomId = RoomId(6) 存储过程sp_AddOrder用于在客户订房时,系统向表中插入或更新相关记录。CREATE PROCEDURE sp_AddOrder ( RoomId int,CName nvarchar(50), CIdentityId nvarchar(50),CPhone nvarchar(50), BeginTime datetime, Remarks nvarchar(50)AS-将表RoomStatus中该客房的状态置为2(入住) Update Room

45、Status set Status=2 where RoomId=RoomId if (select count(*) from CustomersInfo where CIdentityId=CIdentityId)=0 begin-向表CustomersInfo中插入新的客户记录 Insert into CustomersInfo values( CIdentityId, CName,CPhone)end else begin-更新表CustomersInfo中该客户的记录 Update CustomersInfo set CName=CName,CPhone=CPhone where C

46、IdentityId=CIdentityId end-向表RoomOperation中插入该客房的入住记录Insert into RoomOperation values( RoomId,BeginTime, CIdentityId, Remarks)(7) 存储过程sp_GetOrder用于根据客房号来获取客房的入住信息。CREATE PROCEDURE sp_GetOrder( RoomId int) AS Select c.CName,c.CIdentityId,c.CPhone,r.BeginTime,r.Remarks From RoomOperation r, CustomersI

47、nfo c Where c.CIdentityId=r.CIdentityIdAnd r.RoomId=RoomId(8) 存储过程sp_AddCheckOut用于在客户退房时,系统向表中更新或删除相关记录。CREATE PROCEDURE sp_AddCheckOut( RoomId int ,BeginTime datetime,EndTime datetime, CIdentityId nvarchar(50), CName nvarchar(50), CPhone nvarchar(50), Remarks nvarchar(50), TotalPrice money out) AS-

48、将表RoomStatus中该客房的状态置为1(空房) Update RoomStatus Set Status=1 Where RoomId=RoomId Declare Price money Select Price=c.Price From RoomsInfo r, RoomCategory c Where c.RCategoryId=r.RCategoryId and r.RoomId=RoomId-计算该客户的消费金额 Set TotalPrice=Price*DATEDIFF(Day,BeginTime,EndTime) if (TotalPrice=0 ) begin Set T

49、otalPrice=Price End-向表History中插入相关记录 Insert Into History values( BeginTime,EndTime,RoomId,TotalPrice,CIdentityId, CName,CPhone,Remarks)-删除该客房在表RoomOperation中的记录 Delete from RoomOperation Where RoomId=RoomId(9) 存储过程sp_InsertUser用于管理员添加新的用户信息时,系统向表中录入该客房信息。CREATE PROCEDURE sp_InsertUser(Id int, Name v

50、archar(50), Pwd varchar(50),Gender int, Email varchar(50), Address varchar(50),Telephone varchar(50), Department varchar(50),Type int)AS -向表UsersInfo中插入新用户记录Insert into UsersInfo values ( Id, Name, Pwd , Gender, Email, Address,Telephone ,Department,Type)我们将在应用程序中调用这些存储过程,完成添加新的客房信息、根据客房类型和状态查找客房信息、订

51、房或退房等工作。5 功能模块详细设计及实现酒店客房管理系统的页面由四部分组成: 酒店客房管理系统首页的设计 系统各功能实现页面的设计 添加信息页面的设计 编辑信息页面的设计5.1酒店客房管理系统首页的设计当用户进入酒店管理系统首页后,首先需要进行身份验证,系统在验证通过后,将使用UserType变量记录其用户类型,并根据用户类型确定用户的使用权限。酒店管理系统的首页,如图4所示。顾客进入系统首页后,首先需要在主显示区输入用户名及密码,然后单击“登录”按钮,系统验证通过后,会显示提示信息。此时,用户可以直接单击功能列表中的链接来使用各项功能了。否则系统会显示提示信息,要求用户登录。图4 酒店客房

52、管理系统首页在首页的代码(Default.aspx)中,我们调用了Web用户控件(ListModule.ascx)来实现功能列表,以及Web用户控件(LogonModule.ascx)来实现员工登录功能。现给出LogonModule.ascx的主要代码及代码分析,如下所示:/ModuleBase是继承的用户定义类public class LogonModule : ModuleBaseprivate void Page_Load(object sender, System.EventArgs e) /如果用户身份已验证成功if(HttpContext.Current.User.Identity.IsAuthenticated) /保存用户姓名及用户类型String UserName=HttpContext.Current.User.Identity.Name;String Type=null;/ UserType是在ModuleBase类中定义的变量,用于保存用户类型if(UserType.ToString()="1") Type="<b><font color='red'>酒店管理员</font></b>&q

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论