数据库酒店管理系统.docx
- 文档编号:10854282
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:25
- 大小:420.46KB
数据库酒店管理系统.docx
《数据库酒店管理系统.docx》由会员分享,可在线阅读,更多相关《数据库酒店管理系统.docx(25页珍藏版)》请在冰点文库上搜索。
数据库酒店管理系统
酒店管理系统
一、背景
近年来,随着经济的发展,酒店服务业得到了日新月异的发展。
而酒店在运作期间,其管理和服务的水平直接影响到酒店的形象和声誉。
这就需要提高服务的质量,尽可能做到让客户满意。
因此,一流的酒店运作需要各个部门之间的相互支持与配合,更需要酒店加强各个部门之间的信息沟通与传递。
酒店管理系统是现代服务行业不可缺少的一个组成环节。
酒店管理信息系统是一个由人、计算机和数据库组成的进行酒店经营管理的系统,通过对信息的收集、传递、整理、加工、维护和使用,提高管理水平和效率,从而实现酒店管理的自动化、规范化和人性化。
采用计算机来管理酒店和住客的信息,提高了查询的速度,节约了人力和物力资源,达到了预期的要求。
本系统实现了一个简单的酒店管理。
在本系统里,主要是对客人入住的信息,客户信息查询及人事管理进行操作。
为管理者提供迅速,高效的服务,减免手工处理的繁琐与误差,及时,准确地反映酒店的工作情况,经营情况。
使用本系统,可以大幅度提高酒店服务管理的工作效率。
二、事务模块
在进行一个项目的设计之前,首先要进行必要的需求分析。
酒店需要管理各种人员和入住信息,希望实现酒店的信息化管理,通过建立一个酒店管理系统来管理酒店的日常业务。
其完成功能如下:
1、管理人员可以直接增加和删除用户信息,修改密码,退出系统。
2、能够实现对客人的登记信息查询,包括逐个浏览,以及对客人资料的增加、删除和编辑操作。
3、能够的酒店人员值班情况进行管理。
系统功能模块图入下图所示:
根据功能模块图设计划出的实体有散客入住实体、团队入住实体、投诉管理实体、值班管理实体。
散客入住实体E-R如下图所示:
团队入住实体E-R如下图所示:
投诉管理实体E-R图如下图所示:
值班管理实体E-R图如下图所示:
综上所诉,酒店管理系统总共分为四个模块:
1、系统管理模块:
用来实现用户的增加、删除和修改等操作。
2、客人入住模块:
用来实现登记入住的增加、删除和修改等操作。
3、客人信息查询模块:
用来实现对客人信息的浏览和查询。
4、人事管理模块:
用来实现对对客户投诉的管理,包括投诉信息的查询、增加、修改和删除记录等;还用来实现值班管理,包括工作人员值班情况的增加、删除和修改等操作。
三、数据结构
使用win7操作系统、开发维护系统即visualbasic软件系统、一套数据库系统Access即可。
他们之间的结构关系图如下图所示:
启动access,建立一个的数据库jiudian.mbd,建立五个表,包括系统管理表,散客资料,团队资料表,投诉管理表,值班管理表。
建立的数据库如下图所示:
使用程序设计器建立系统需要的表格如下:
系统管理表:
散客资料表
团队资料表
投诉管理表
值班管理表:
系统管理表:
用户名
密码
权限
11
11
system
123
33
guest
1234
1234
guest
111
111
guest
3333
33
guest
22
22
system
1212
1213
system
散客资料表:
房号
房价
姓名
性别
证件号码
抵达日
离店日
42号
¥420.00
张三
男
1234567
2005/6/1
2005/6/4
36号
¥490.00
王五
男
234567
2004/3/8
2004/3/11
团队资料表:
团队名称
负责人姓名
证件号码
房间号码
抵达日
入宿天数
备注
小伍
小伍
44444
12346
2004/4/1
6
无
45
55
45
45
2000/1/1
4
无
投诉管理表:
编号
投诉日期
投诉对象
投诉内容
受诉部门
受诉日期
处理意见
33
2008/5/5
33
fghfdghdfh
33
2008/5/9
33
123
2004/3/3
33
33
22
2004/3/4
222
124
2006/1/1
客服人员
态度不好
人事部门
2006/1/2
不详
121
2005/12/4
客服
态度差
人事部门
2005/12/6
开除
值班管理表:
值班开始日期
值班开始时间
值班截止日期
值班截止时间
值班人
记事
2003/5/5
18:
00:
00
2003/5/6
22:
00:
00
王洋
无
2004/9/9
7:
00:
00
2004/9/10
18:
00:
00
张力
无
2005/4/3
9:
00:
00
2005/4/6
16:
00:
00
李红
无
四、软件架构及代码
1、系统公共模块设计
在系统中使用公共模块,可节省系统资源,实现代码重用。
在本系统中新建一个Module模块,此模块主要用于共享数据库边接。
公共模块代码如下:
OptionExplicit
PublicconnAsNewADODB.Connection'标记连接对象
PublicuserIDAsString'标记当前用户ID
PublicuserpowAsString'标记用户权限
PublicfindAsBoolean'标记查询
PublicsqlfindAsString'查询语句
Publicrs_data1AsNewADODB.Recordset
PublicfindokAsBoolean
PublicfrmdataAsBoolean
2、主窗体的设计
在登录窗体对话框中输入正确的操作员和操作员密码后才能进到主窗体。
窗体如下图所示:
具体程序代码如下
Dimrs_loginAsNewADODB.Recordset
IfTrim(Text1.Text)=""Then'判断输入的用户名是否为空
MsgBox"没有这个用户",vbOKOnly+vbExclamation,""
Text1.SetFocus
Else
sql="select*from系统管理where用户名='"&Text1.Text&"'"
rs_login.Opensql,conn,adOpenKeyset,adLockPessimistic
Ifrs_login.EOF=TrueThen
MsgBox"没有这个用户",vbOKOnly+vbExclamation,""
Text1.SetFocus
Else'检验密码是否正确
IfTrim(rs_login.Fields
(1))=Trim(Text2.Text)Then
userID=Text1.Text
userpow=rs_login.Fields
(2)
rs_login.Close
UnloadMe
MDIForm1.Show
Else
MsgBox"密码不正确",vbOKOnly+vbExclamation,""
Text2.SetFocus
cnt=cnt+1
Ifcnt=3Then
UnloadMe
3主窗体的设计与实现
程序启动后,在系统登录界面验证完操作员和操作员密码后,将进入程序主窗体。
在程序主窗体中通过选择菜单命令或单击工具栏中的按钮,可调用相应程序窗体或进行相应操作;可根据操作员不同,确定操作员的相应权限,在主窗体状态栏中显示了系统时间和当前系统操作员。
主窗体界面如下图所示:
源程序代码如下:
PrivateSubabout_Click()
frmAbout.Show
PrivateSubadd_user_Click()
frmadduser.Show
PrivateSubdouble_check_Click()
frmfind_double.Show
PrivateSubcheck_Click()
frmfind.Show
PrivateSubdouble_client_Click()
frmdouble_client.Show
PrivateSubexit_Click()
UnloadMe
PrivateSubkhts_Click()
frmkhts.Show
PrivateSubMDIForm_Load()
frmdata=False
find=False
PrivateSubmodify_pw_Click()
frmchangepwd.Show
PrivateSubonly_check_Click()
frmfind.Show
PrivateSubonly_client_Click()
frmonly_client.Show
PrivateSubzbgl_Click()
frmzhiban.Show
4、系统管理模块设计与实现
程序启动后,直接单击工具栏中的“系统管理”按钮,将打开系统管理模块。
在系统管理模块中能够用来实现用户的增加、删除和修改密码,以及可以退出系统。
系统管理模块界面如下图所示:
源代码如下:
PrivateSubCommand1_Click()
Dimrs_addAsNewADODB.Recordset
IfTrim(Text1.Text)=""Then
MsgBox"用户名不能为空",vbOKOnly+vbExclamation,""
Text1.SetFocus
Else
sql="select*from系统管理"
rs_add.Opensql,conn,adOpenKeyset,adLockPessimistic
While(rs_add.EOF=False)
IfTrim(rs_add.Fields(0))=Trim(Text1.Text)Then
MsgBox"已有这个用户",vbOKOnly+vbExclamation,""
Text1.SetFocus
Text1.Text=""
Text2.Text=""
Text3.Text=""
Combo1.Text=""
Else
rs_add.MoveNext
Wend
IfTrim(Text2.Text)=""Then
MsgBox"密码不能为空,请重新输入!
",vbOKOnly+vbExclamation,"警告"
Text2.Text=""
Text2.SetFocus
IfTrim(Text2.Text)<>Trim(Text3.Text)Then
MsgBox"两次密码不一致",vbOKOnly+vbExclamation,""
Text2.SetFocus
Text2.Text=""
Text3.Text=""
ElseIfTrim(Combo1.Text)<>"system"AndTrim(Combo1.Text)<>"guest"Then
MsgBox"请选择正确的用户权限",vbOKOnly+vbExclamation,""
Combo1.SetFocus
Combo1.Text=""
Else
rs_add.AddNew
rs_add.Fields(0)=Text1.Text
rs_add.Fields
(1)=Text2.Text
rs_add.Fields
(2)=Combo1.Text
rs_add.Update
rs_add.Close
MsgBox"添加用户成功",vbOKOnly+vbExclamation,""
修改密码如下图所示:
源代码如下:
PrivateSubCommand1_Click()
Dimrs_changAsNewADODB.Recordset
DimsqlAsString
IfTrim(Text1.Text)<>Trim(Text2.Text)Then
MsgBox"密码不一致!
",vbOKOnly+vbExclamation,""
Text1.SetFocus
Text1.Text=""
Text2.Text=""
Else
sql="select*from系统管理where用户名='"&userID&"'"
rs_chang.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_chang.Fields
(1)=Text1.Text
rs_chang.Update
rs_chang.Close
MsgBox"密码修改成功",vbOKOnly+vbExclamation,""
UnloadMe
5、客人入住模块设计与实现
在主窗体中,选择工具栏上的客人入住项,将进入客人入住模块。
在客人入住模块中用来实现散客入住和团队入住的各种信息。
散客入住界面如图所示:
散客入住源程序如下:
PrivateSubForm_Load()
DimsqlAsString
OnErrorGoToloaderror
sql="select*from散客资料"
rs_client.CursorLocation=adUseClient
rs_client.Opensql,conn,adOpenKeyset,adLockPessimistic'打开数据库
'设定datagrid控件属性
DataGrid1.AllowAddNew=False'不可增加
DataGrid1.AllowDelete=False'不可删除
DataGrid1.AllowUpdate=False
SetDataGrid1.DataSource=rs_client
Command4.Enabled=False
loaderror:
MsgBoxErr.Description
团队入住界面如下图所示:
团队入住源程序:
PrivateSubForm_Load()
OnErrorGoToloaderror
sql="select*from团队资料"
rs_dclient.CursorLocation=adUseClient
rs_dclient.Opensql,conn,adOpenKeyset,adLockPessimistic'打开数据库
'设定datagrid控件属性
DataGrid1.AllowAddNew=False'不可增加
DataGrid1.AllowDelete=False'不可删除
DataGrid1.AllowUpdate=False
SetDataGrid1.DataSource=rs_dclient
Command4.Enabled=False
loaderror:
MsgBoxErr.Description
6、客人信息查询模块模块设计
在主窗体中,选择工具栏上的客人信息查询模块项,将进入客人信息查询模块模块。
在“按房号”下拉列表框中选择要查找的房号,对在选择的房号内的客人入住信息进行查找;在“按抵达日”下拉列表框中选择要查找日期范围,将对选择日期内的客人入住信息进行查找。
客人信息查询界面如下图所示:
程序源代码如下:
PrivateSubForm_Load()
DimiAsInteger
DimsqlAsString
sql="select*from散客资料orderby房号desc"
rs_find.CursorLocation=adUseClient
rs_find.Opensql,conn,adOpenKeyset,adLockPessimistic
Ifrs_find.EOF=FalseThen'添加编号
Withrs_find
DoWhileNot.EOF
Combo1(0).AddItem.Fields(0)
Combo1
(1).AddItem.Fields(0)
.MoveNext
Loop
Fori=2001To2005'添加年
Comboy(0).AddItemi
Comboy
(1).AddItemi
Nexti
Fori=1To12'添加月
Combom(0).AddItemi
Combom
(1).AddItemi
Nexti
Fori=1To31'添加日
Combod(0).AddItemi
Combod
(1).AddItemi
Nexti
7、人事管理模块设计与实现
程序启动后,直接单击工具栏中的“人事管理”,将打开人事管理模块。
在人事管理模块中能够用来实现对对客户投诉的管理,包括投诉信息的查询、增加、修改和删除记录等;还用来实现值班管理,包括工作人员值班情况的增加、删除和修改等。
人事管理模块界面如下图所示:
投诉管理代码如下:
PrivateSubCommand2_Click()
Adodc1.Recordset.MoveNext
IfAdodc1.Recordset.EOFThen
MsgBox"这是最后一条记录",vbOKCancel+vbQuestion
Adodc1.Recordset.MoveLast
PrivateSubCommand5_Click()
OnErrorGoToadderr
Text1.SetFocus
frmkhts.Show
adderr:
MsgBoxErr.Description
PrivateSubCommand6_Click()
OnErrorGoTodeleteerr
WithAdodc1.Recordset
IfNot.EOFAndNot.BOFThen
IfMsgBox("删除当前记录吗?
",vbYesNo+vbQuestion)=vbYesThen
.Delete
.MoveNext
If.EOFThen.MoveLast
PrivateSubCommand3_Click()
IfAdodc1.Recordset.EOFThen
MsgBox"纪录空",vbOKCancel+vbQuestion
Else
Adodc1.Recordset.MoveFirst
PrivateSubCommand1_Click()
Adodc1.Recordset.MovePrevious
IfAdodc1.Recordset.BOFThen
MsgBox"这是第一条记录",vbOKCancel+vbQuestion
Adodc1.Recordset.MoveFirst
PrivateSubCommand4_Click()
IfAdodc1.Recordset.RecordCount=0Then
MsgBox"空纪录",vbOKCancel+vbQuestion
Adodc1.Recordset.MoveLast
PrivateSubCommand7_Click()
IfAdodc1.Recordset.RecordCount=0Then
MsgBox"空纪录",vbOKCancel+vbQuestion
Else
Adodc1.Recordset.MoveLast
PrivateSubCommand8_Click()
UnloadMe
PrivateSubDataGrid1_Click()
值班管理界面如下:
值班管理源程序代码如下:
OnErrorGoTodelerror
answer=MsgBox("确定要删除吗?
",vbYesNo,"")
Ifanswer=vbYesThen
DataGrid1.AllowDelete=True
rs_zhiban.Delete
rs_zhiban.Update
DataGrid1.Refresh
MsgBox"成功删除!
",vbOKOnly+vbExclamation,""
DataGrid1.AllowDelete=False
Else
ExitSub
delerror:
IfErr.Number<>0Then
MsgBoxErr.Description
PrivateSubDataGrid1_Click()
PrivateSubForm_Load()
DimsqlAsString
OnErrorGoToloaderror
sql="select*from值班管理"
rs_zhiban.CursorLocation=adUseClient
rs_zhiban.Opensql,conn,adOpenKeyset,adLockPessimistic'打开数据库
'设定datagrid控件属性
DataGrid1.AllowAddNew=False'不可增加
DataGrid1.AllowDelete=False'不可删除
DataGrid1.AllowUpdate=False
SetDataGrid1.DataSource=rs_zhiban
loaderror:
MsgBoxErr.Description
五、总结
全文研究了酒店管理系统的设计与实现,该系统是运用MicrosoftOfficeAccess2003数据库系统和VisualBasic编程语言开发实现的。
根据酒店行业的现实状况和发展,该系统具有实现多点操作的信息共享,相互之间的信息传递准确、快捷和顺畅,服务管理信息化,可随时掌握客人入住、人事管理等情况,系统操作简单易行,查询灵活方便,数据存储安全。
通过该系统的实施,可逐步提高酒店的管理水平,提升员工的素质。
系统维护方便可靠,有较高的安全性,满足实用性的要求。
在这次做毕业设计的过程中我学到了很多。
从一开始的设计选题到论文的最终截稿,我亲身感受到了要做好一个设计其中的知识光靠我们平时的学习是不够的,因此,我查阅了许多与该选题相关的文献,并且通过互联网也查询了该选题的发展情况。
通过本次设计,使我深深地感到:
对知识的学习既要深入,又要博览;既要整体把握,又要细致入微。
这就要求我们对每一部分的设计,做到多看多想多分析,以求无疏漏;还要求多查专业书籍,获取信息。
“不积小流无以成江河,不积跬步无以致千里。
”,要想完成一项开发,没有扎实的基础知识与严谨的态度是不行的,所以,必须要具有一丝不苟
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 酒店 管理 系统