收藏 分销(赏)

客房管理系统课程设计.doc

上传人:精*** 文档编号:3309944 上传时间:2024-07-01 格式:DOC 页数:39 大小:3.09MB
下载 相关 举报
客房管理系统课程设计.doc_第1页
第1页 / 共39页
客房管理系统课程设计.doc_第2页
第2页 / 共39页
客房管理系统课程设计.doc_第3页
第3页 / 共39页
客房管理系统课程设计.doc_第4页
第4页 / 共39页
客房管理系统课程设计.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、实验报告学 院 电气信息工程学院 组 长 乔 雨 组 员 焦少少 李凌鹏 张会荣 魏祥鹏 专 业 计 科 12101 实验项目 客 房 管 理 系 统 辅导老师 徐 晓 君 目录任务分派和目的31系统需求分析41.1待开发功能的一般描述41.2待开发软件的功能模块41.3网站可行性分析51.4 UML系统建模52.系统总体设计82.1系统功能描述82.2功能结构图92.3系统流程图103.数据库设计123.1数据字典123.2 ER图设计133.3数据表设计144.系统具体设计及实现164.1登录窗体设计164.2系统主界面设计184.3入住管理界面设计204.4预定管理界面设计254.5退房

2、结账界面设计305.总结34任务分派和目的本系统的名称为客房管理系统项目的负责人是组长乔雨本项目参与者有焦少少、李凌鹏、魏祥鹏、张会荣任务分派:乔雨-重要统领全局及负责系统的重要代码的调试和编写;焦少少-重要负责系统的基本功能及小组成员之间的协调工作;李凌鹏-重要负责系统的总体功能实现及系统的调试;张会荣-重要负责系统的部分代码和界面设计;魏祥鹏-重要负责系统部分功能以及系统的问题解决;我们重要针对架构清楚、模块独立性强、以及易维护和扩展等特点,进行系统设计,从而提供宾馆客房科学、规范的现代管理模式,使宾馆客房管理跨上一个新的台阶,一个先进的管理手段即高效率计算机管理方式引导宾馆行业的发展。1

3、系统需求分析1.1待开发功能的一般描述酒店作为目前高层次的服务行业之一,最重要的就是要做到优质服务。服务的安排、调度是否周到,客人的规定是否能迅速地得到满足,都直接影响到酒店的形象和声誉。借助计算机技术来进行信息管理,并配合现代化的酒店管理经验和模式,可以极大地提高酒店的服务质量,获得更好的经济效益。酒店信息化管理已成为酒店现代科学管理的重要内容,是酒店经营中必不可缺少的现代科学工具。系统目的:(1)建立一套功能完整、高效、安全、稳定的酒店管理系统. (2)系统可以对员工平常操作进行快速、安全地反映。 (3)实现对顾客信息,预订、入住、换房、退房、房态设立等信息的方便迅速录入、查询及管理,了解

4、酒店平常业务的相关信息。 (4)界面简洁、操作方便、简朴易学,用户不需要有太多的专业知识。1.2待开发软件的功能模块针对客房管理系统的需求,通过对客房管理工作过程的内容分析,系统需要实现的功能有如下重要五大功能:(1)客房管理:客房编辑,客房状态编辑,客房类型编辑。(对客房的状态、类型进行查,删,改)(2)顾客管理:客房预定,登记入住,房间调整,退房登记。(根据顾客的规定对客房号或客房类型进行查询、修改等)(3)账单管理:消费记录,话费记录,入住登记。(根据房间号查询,修改,删除顾客消费记录)(4)系统设立:修改密码以及用户管理。(5)客房预订管理:登记预定客户、客房的信息以及浏览查询等。1.

5、3网站可行性分析可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,事实上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析是非常必要的,也是很重要的,通过最初的设计目的和进行的市场调查得出以下四点的可行性分析:(1)经济可行性:该系统设计是本组人员通过自己所掌握的知识设计的,又由于本组的设计能力有限,其功能还不能完善,所以没有什么经济效益可谈。(2)技术可行性:Delphi的技术是我们以前所学习的知识,较为纯熟。(3)运营可行性:该系统需要在对的连接Access数据库后可以正常运营。通过以上的可行性分析,我们将采用Delphi的技术,运用Access数据库对

6、系统进行建设。1.4 UML系统建模由于UML很适合于对逻辑数据库模式和物理数据库模式建模,所以我们对系统进行UML建模。下面是酒店客房管理系统的 UML建模过程。这里我们将使用Rational Rose进行UML建模。用例图分析:图1.1 系统用例图订房管理时序图: 图1.2 预订时序图顾客规定预订规定入住结算 前台查询房间确认房间预定登记入住登记退房登记查询入住时间规定退房补交押金登记规定补交押金业务流程图: 图1.3业务流程图针对现在宾馆业的发展需求,在业务流程图的基础上,可以得到数据流程图:顶层数据流图:顾客管理员客房管理系统 顾客信息 (入住) 操作命令及数据 返回数据 返回信息 图

7、1.4顶层数据流图2.系统总体设计2.1系统功能描述我们组通过商讨,搜索资料,所设计的福到家宾馆客房管理系统合用于宾馆的客房资源和客户信息的管理,实现宾馆客房的信息化管理,该系统重要涉及预定管理、前台接待管理、前台收银操作、客房及客史管理、基础信息设立、系统帮助等功能。 具体功能设计内容如下:(一)预订管理:房态表(查看房间现状,有无空房、是否维修、是否住房等等)、预订操作、预定查询。(二)前台接待管理:入住登记、入住查询。(三)前台收银操作:记账操作、退房操作。(四)客房及客史管理:客房信息查询、房态维护管理、预定客人报表:链接预定客人报表、在住客人报表、当天预定客人报表、当天入住客人报表、

8、当天离店客人报表、链接当天离店客人报表、当天财务进账报表、历史客人预定查询、历史客人入住查询。(五)基础信息设立:客房类型设立、客房信息设立、工作人员管理:链接工作人员管理窗体、操作人员管理、会员编号管理、用户密码修改、系统用户注销、系统备份还原、链接用户密码修改窗体、系统日记管理、系统数据维护、电话计费接口、房态系统接口。(六)系统帮助:关于系统、联机帮助。2.2功能结构图客房管理系统功能结构如图2.1所示退出系统福到来宾馆客房管理系统用户信息管理模块客房类型设立工作人员管理会员编号管理系统用户注销系统日记管理房卡系统接口系统数据维护系统备份还原用户密码修改电话计费接口操作人员管理客房信息设

9、立前台收银操作记账操作退房操作前台接待管理入住登记入住查询客房预订管理房态表预订操作预定查询预定客人报表 客房及客史管理 客房信息查询当天预定客人报表当天离店客人报表历史客人预订查询房态维护管理在住客人报表当天入住客人报表历史客人入住查询当天财务进账报表系统帮助用户信息删除用户信息删除登陆 图2.1系统功能结构图2.3系统流程图有 否无eu是超级用户用户登录 验证账号 开始完毕添加、修改和删除用户数据库维护对记录操作查看系统日记前台登记收银结账是否 预订顾客消费记录可执行添加转账退单等消费记录计算顾客消费金额住宿费用执行结账退房查看客房 和商品销售情况显示预订信息可添加预定删除预定修改预定显示

10、空房信息客人选择房间登记入住修改添加删除客房和商品情况执行房态管理退出系统是否有空闲房间建议入住其它客房入住是否缺货销售退出结束普通用户验证成功是否 通过对系统功能的分析,可得到用户操作的一般流程,如图所示。图2.2 登录流程图用户登录系统时,系统将根据用户权限对其进行相应的功能限制。一般普通用户可拥有前台登记、收银结账以及对商品和客房信息进行查询和设立的权限;而超级用户除拥有普通用户的所有权限外,还可进行系统用户设立、数据库维护和查看系统日记。3.数据库设计3.1数据字典根据绘制出的数据流图,定义出本系统的数据字典。如下列所示:数据项客户编号含义说明唯一标记每个客户别名类型整型长度4取值范围

11、0000-9999取值含义按客户顺序编号与其他数据项的逻辑关系 表3.1 客户编号字典 表3.2客户字典数据结构客户含义说明客房管理系统的主体数据结构,定义了一个客户的相关信息组成客户编号,客户姓名,性别,年龄,身份证号,户籍数据项房号含义说明唯一标记每个房间别名房间编号类型整型长度4取值范围100-411取值含义每层楼的房间顺序与其他数据项的逻辑关系数据结构客房含义说明客房管理系统的主体数据结构,定义一个客房的相关信息组成房号,房间类型,房间价格,房间状态表3.4客房字典数据流结算账单含义说明客户入住的消费结果数据流来源结算解决数据流去向操作员组成账单编号,房号,住店天数,总费用表3.3房号

12、字典 数据存储客户信息表说明记录入住的客户的综合信息流入数据流客户信息流出数据流入住信息组成客户,入住时间,离店时间,押金,账单编号,房号表3.6结算账单字典表3.5客房信息表3.2 ER图设计入住编号退房日期押金入住日期入住结帐金额预定房间类型属于客房信息顾客信息预订日期预订入住日期订单号退订日期预订入住天数话费花销 电话姓名证件号证件类型籍贯性别客房号房间类型房间电话号码客房状态楼层额定人数额定床位类型是否有电视是否有电脑价格面积本系统采用Access数据库。经考察和分析,本案例客房管理系统涉及以下实体:客户实体、客房实体、操作员实体、结算账单实体,它们的E-R图如以下所示: M n m

13、n n 1 图3.1整体E-R图3.3数据表设计根据E-R图,将图转换为关系模型即:将实体、实体的属性和实体之间的联系转换为关系模式,然后将全局E-R图转换成关系模型:客房类型(价格,面积,类型,额定人数,是否有电脑,是否有电视,额定床位)客房(房间类型,客房号,房间电话号码,客房状态,楼层)顾客(姓名,证件号,籍贯,性别,电话,证件类型)入住记录(入住编号,证件号,客房号,入住日期,退房日期,押金,结帐金额,话费花销)预定信息(订单号,证件号,客房号,预定日期,预定入住日期,预定天数,退订日期)关系数据表拟定后要进行数据表的逻辑结构设计,即定义关系数据表中字段名称、数据结构、是否允许为空、关

14、键字、说明等。客房表:(room)字段名称数据类型字段大小备注客房号Nchar5不允许为空(主键)房间类型Nchar10楼层Int房间状态Nchar10包含空闲,占用,预定房间电话号码Nchar6用于联系房间住户表3.7客房表顾客表:(customer)字段名称数据类型字段大小备注姓名Nchar10不允许为空证件号char20不允许为空(主键)籍贯Char10不允许为空性别Char4电话号码Nchar11证件类型char12表3.7顾客表客房类型表:(room_type)字段名称数据类型字段大小备注类型char10不允许为空(主键)面积float-不允许为空价格money-不允许为空额定床位s

15、mallint-额定人数smallint-是否有电视char2是否有电脑char2表3.8客房类型表入住登记表:(room_record)字段名称数据类型字段大小备注证件号char20不允许为空客房号Nchar5不允许为空入住日期datetime-不允许为空退房日期datetime-话费花销char6押金Money结帐金额Money入住编号Char10不允许为空(主键)表3.9入住登记表预订登记表:(book_record)字段名称数据类型字段大小备注订单号char12不允许为空(主键)客房号nchar5不允许为空预定日期datetime-不允许为空预定入住日期datetime-预定天数sma

16、llint-证件号Char20不允许为空表3.10预订记录4.系统具体设计及实现4.1登录窗体设计(1)窗体功能描述本窗体是系统的启动窗体,实现对于用户身份的多重验证功能。具体描述如下:用户合法性验证。一方面判断用户输入的用户名和密码是否对的,若对的,就进入用户状态鉴定,若错误;系统便发出警告信息。系统限定用户只有三次输入机会,三次之后本窗体自动关闭。(2)窗体设计创建一个名为“LoginForm”的窗体,将caption属性改为“福到家宾馆用户登录”。并按图4.1进行界面设计 图4.1登录界面登陆成功后主界面显示。(3)代码设计登录窗体载入时,运用Adoquery控件连接数据库,从Comob

17、ox控件中选择用户名,然后输入密码,点击登陆按钮即可实现对用户身份的多重验证,代码如下:procedure Tloginfm.dengluClick(Sender: TObject);beginif trim(usernamebox.text)= thenbeginshowmessage(请选择用户名!);userpasedit.SetFocus;exit;end;with adoquery dobeginclose;sql.Clear;sql.Add(select * from 操作员表 where 姓名=:username and 密码=:userpas);Parameters.Param

18、ByName(username).Value:=trim(usernamebox.text);Parameters.ParamByName(userpas).Value:=userpasedit.text;open;if recordcount=1 then begin showmessage(此入住单存在,请刷新重新登记); exit; end; end; str:=insert into 入住单表(入住单号,客房类型,抵店时间,离店时间,; str:=str+单据状态,入住人数,客房编号,客房价格,入住价格,折扣,折扣因素,是否加床,加床价格,; str:=str+预收款,预定人,会员编号

19、,预定公司,联系电话,特要说明,操作员,业务员,id,预定单号,早餐,叫醒,保密,vip) values; str:=str+(:yddh,:kflx,:ddsj,:ldsj,:djzt,:rzrs,:kfbh,:kfjg,:rzjg,:zk,:zkyy,:sfjc,; str:=str+:jcjg,:ysk,:ydr,:hybh,:ydgs,:lxdh,:bz,:czy,:ywy,:id,:dr,:tgzc,:dsjx,:rzbm,:vip); with adoquery1 do begin close; sql.Clear; sql.Add(str); Parameters.ParamBy

20、Name(bz).Value:=trim(bz.Text); Parameters.ParamByName(czy).Value:=trim(czyedit.Text); Parameters.ParamByName(ywy).Value:=trim(ywybox.Text); Parameters.ParamByName(id).Value:=; Parameters.ParamByName(dr).Value:=trim(dr.Text); if tgzc.Checked then Parameters.ParamByName(tgzc).Value:=true else Paramete

21、rs.ParamByName(tgzc).Value:=false; if dsjx.Checked then Parameters.ParamByName(dsjx).Value:=true else Parameters.ParamByName(dsjx).Value:=false; if rzbm.Checked then Parameters.ParamByName(rzbm).Value:=true else Parameters.ParamByName(rzbm).Value:=false; if vip.Checked then Parameters.ParamByName(vi

22、p).Value:=true else Parameters.ParamByName(vip).Value:=false; try execsql; /showmessage(预定成功); except showmessage(入住失败!); end; end; with adoquery1 do begin close; sql.Clear; sql.Add(update 客房信息表 set 状态=入住 where 客房编号=:kfbh); Parameters.ParamByName(kfbh).Value:=trim(roomnumbox.Text); execsql; end; if

23、(trim(dr.Text) then begin with adoquery1 do begin close; sql.Clear; sql.Add(update 预定单表 set 单据状态=入住 where 预定单号=:yddh); Parameters.ParamByName(yddh).Value:=trim(dr.Text); execsql; end; with adoquery1 do begin close; sql.Clear; sql.Add(insert into 预定单历史表 select * from 预定单表 where 预定单号=:yddh); Parameter

24、s.ParamByName(yddh).Value:=trim(roomnumbox.Text); execsql; end; with adoquery1 do begin close; sql.Clear; sql.Add(delete from 预定单表 where 单据状态=入住); execsql; end; end; showmessage(入住成功); sxbt.Click;end;4.4预定管理界面设计(1)窗体功能描述顾客可以通过点击主菜单中的预订管理模块来进行预定管理,在预定管理中包含了顾客对房间状态的查询、预定查询以及预定操作。顾客可以在预定操作中进行对房间的预定及对顾客

25、自己预定信息的修改、删除等等。(2)窗体设计新建一个窗体并命名为“Bookfm”,并把caption属性改为“预订管理”。打开窗体的界面设计,在工具箱分别选择相应的控件把窗体设计成如图4.4所示。图4.4预定管理界面界面重要涉及以下控件:标签(Label),文本编辑(LabeledEdit),文本框(combobox),按钮(Button),时间(Datetimepicker),Pagecontrol控件和DataGrid控件组成。(3)代码设计预定代码设立:procedure TBookFm.ydbtClick(Sender: TObject);var str:string;begin if

26、 roomtypebox.Text= then begin showmessage(请选择客房类型!); exit; end; if roomnumbox.Text= then begin showmessage(请选择客房编号!); exit; end; if inprice.Text= then begin showmessage(请输入入住价格!); exit; end; if (jcpriceedit.Enabled=true) and (jcpriceedit.Text=) then begin showmessage(请输入加床价格!); exit; end; if (peonum

27、edit.Text=) or (peonumedit.Text=0) then begin showmessage(请输入入住人数!); exit; end; with ydczado do begin close; sql.Clear; sql.Add(select * from 预定单表 where 预定单号=:yddh); Parameters.ParamByName(yddh).Value:=trim(booknumEdit.Text); open; if recordcount=1 then begin showmessage(次预定单存在,请刷新重新预定); exit; end;

28、end; str:=insert into 预定单表(预定单号,客房类型,预定期间,抵店时间,离店时间,; str:=str+单据状态,入住人数,客房编号,客房价格,入住价格,折扣,折扣因素,是否加床,加床价格,; str:=str+预收款,预定人,会员编号,预定公司,联系电话,备注,操作员,业务员,id) values;str:=str+(:yddh,:kflx,:ydsj,:ddsj,:ldsj,:djzt,:rzrs,:kfbh,:kfjg,:rzjg,:zk,:zkyy,:sfjc,; str:=str+:jcjg,:ysk,:ydr,:hybh,:ydgs,:lxdh,:bz,:czy,:ywy,:id); with ydczado do

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服