




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 第 1 章 酒店管理系统的需求分析 1.1 系统建设目标 随着社会的发展和时代的不断进步,各行各业都发生着很大的变化,无论 是从组织结构和经营模式上,都在随着市场的变化而改变。酒店这个行业也是 一样,随着流动人员的不断增加,酒店的工作压力在不断的增大.就需要使用现 代化的手段,来减轻酒店工作人员的压力,提高酒店的办事效率。 通过本系统的应用,在酒店的日常工作中,酒店的工作人员可以通过该系 统及时了解客房信息、客人信息、收费信息以及效益信息等,提供了快捷的智 能化服务方式,利用酒店管理系统及时了解各个环节中信息的变更,有助于提 高酒店的管理效率,实现酒店各种信息的规范化、系统化、和自动化管理,减 少工作量 1.2 系统功能需求 功能名称功能说明 客房信息管理包括房间编号、级别、类型等信息的输入、修改和删除 客人信息管理 包括客人姓名、身份证号、房间号、入住日期的信息的 输入、修改和删除 退房信息管理包括客人的退房日期,付款金额的输入、修改和删除 客房信息查询 包括查询房间编号、级别、类型、价格、是否有人住等 信息 收费信息查询包括查询收费日期、付款金额等 效益信息查询包括查询某一段时间内的营业收入 房间情况报表打印包括房间编号、级别、类型、价格、是否有人住等信息 系统维护为了方便用户进行添加新用户和用户密码修改的操作 表 1-1 系统功能需求表 1.3 系统要求 1、系统可以对客房状态信息以及客人登记信息进行查询。包括客房的编号、 级别、类型和客人的登记信息。 2、系统可以对收费和效益信息进行查询。 3、具有房间情况报表打印和系统维护功能。 4、本系统运行为单机环境,操作系统为 Windows 2000,保证数据安全、 2 系统运行稳定可靠、操作简便、界面友好。 1.4 系统安全需求 采用用户登陆验证方式,只有系统认可(口令正确)的用户才能登陆进入 系统。从而防止非法用户进入系统,保证系统数据完整性。 1.5 系统环境需求 硬件环境:Intel 奔腾或以上 CPU 64MB 或以上内存 VGA 或更高分辨率显示卡 软件环境:Windows 2000 操作系统 Access 2002 数据库管理系统 运行环境:系统属于单机系统。 3 第 2 章 总体方案设计 2.1 总体结构设计 运行系统首先进入系统登陆模块,对用户的身份进行验证,通过身份验证 就可以正式进入到系统管理主界面,所有其它功能模块都连接到主界面,主界 面连接着系统权限管理模块、基本信息管理模块、基本信息查询模块、信息报 表输出功能模块等。 酒店管理信息系统 基本信息管理 理 基本信息查询 客房信息情况 客人入住情况 客人退房情况 客房信息查询 收费信息查 效益信息查询 信息报表输出房间情况报表 添加新用户 用户修改密码 退出系统 系统管理 图 2-1 系统模块结构图 2.2 模块功能设计 2.2.1 登陆模块 该系统使用身份认证登陆方式,就是通过用户名和密码来判断用户是否可 以登陆,只有拥有口令和密码的用户才能够进入系统,防止信息泄露,保护客 人及酒店的利益,维护系统的数据安全。 4 图 2-2 登陆模块结构图 2.2.2 基本信息管理模块 包含三个方面的内容:第一,客房信息管理,主要完成房间编号、房间级 别、房间类型、房间价格、是否有人住等信息的输入、修改和删除。当进入客 房信息管理窗口时,窗口下面有四个选项分别是添加、修改、删除和推出,点 击选项会执行相应得操作;第二,客人信息管理,主要完成客人姓名、身份证 号、房间号、入住日期的输入、修改和删除等操作。第三,退房信息管理,主 要完成客人的退房日期、付款金额的输入、修改和删除等等工作。 2.2.3 信息查询模块 包含三个方面的内容:第一,客房信息查询,主要完成房间编号、级别、 类型、价格、是否有人住等信息的查询。进入窗体时,窗体会出现查询类别的 选项,用户通过选择房间号、房间级别、房间类型、房间价格、房间状态这些 类型进行查询。当选中上述一种类型时,系统会以这个类型为标准进行查询, 并显示查询的结果;第二,收费信息查询,主要完成对收费日期、付款金额的信 息的查询;第三,效益信息查询,主要是对某一段时间内的营业情况的查询。进 入窗体后,要求输入房间号和日期等数据,点击查询选项进行查询。 图 2-3 信息查询窗体 2.2.4 数据报表模块 主要完成数据的汇总并打印输出的功能。进入窗体后通过对参数进行设置, 然后系统会根据设置的参数,进行数据的汇总和打印。 5 2.2.5 系统功能模块 主要完成修改用户密码的功能。如果要修改用户密码,系统会要求输入现 在正在使用的密码,然后输入新密码并且要求确认,如果先用密码正确,新密 码符合要求,点击确认就可以成功修改密码。 图 2-4 密码修改窗体 2.3 关键技术 2.3.1 Visual Basic 和 Delphi 的开发环境 通过一段时间对 Visual Basic 和 Delphi 的学习,我对两种开发环境都有 了一定的认识。这两种开发环境都有着自己的特点和特色。 首先说 Visual Basic 6.0:提供了大量的控件,这些控件可用于设计界面 和实现各种功能,减少了编程人员的工作量,也简化了设计过程,从而有效的 提高了程序的运行效率和可靠性,系统运行起来有较高的稳定性。 Delphi 支持从 Access 到 Oracle 的各项数据库类型,数据库应用程序的开 发是 Delphi 的强项。它是一个基于面向对象和组件技术的可视化的开发环境, 它使用对象 Pascal 作为基本的编程语言,可以用来开发各种基于图形界面的应 用程序。 本系统设计时采用的前台程序是 Visual Basic 6.0。 2.3.2 Microsoft SQL Server 和 Microsoft Access 数据库 6 微软公司的 SQL Server 产品功能已十分强大,而且随着技术的进步也在不 断的完善,它的用户群也在不断的上升,Microsoft SQL Server 完全可以胜任 复杂的企业级的数据库服务。但是他的强大功能背后也有着其自身存在的弱点, 主要是它只能运行于 Windows 平台之上,如果选用 UNIX 等其他操作系统时, Microsoft SQL Server 便不能正常工作了。所以出于安全性考虑或硬件条件的 限制等原因,本系统没有使用 SQL Server。 Microsoft Access 无需编写程序代码,仅通过直观的可视化的操作即可完 成大部分数据管理工作,是 Windows 平台上倍受青睐的关系型数据库管理系统。 Microsoft Access 是 Microsoft 公司开发的 Windows 平台上最流行的、功能强大 的桌面数据库管理系统。它提供了表生成器、查询设计器、报表设计器等许多 便捷的可视化操作工具和数据库向导、表向导、查询向导、报表向导等向导工 具,以便数据库用户能快捷地构造一个简单的管理信息系统。本系统属于一个 简单的中小型的酒店信息管理系统,因此,本系统选用了 Access 数据库管理系 统。 2.3.3 ADO 和 DAO 数据库引擎 1、ADO(ActiveX Data Object)是 DAO 的后继产物。ADO“扩展“了 DAO 所 使用的对象模型,这意味着它包含较少的对象、更多的属性、方法(和参数) , 以及事件。 作为最新的数据库访问模式,ADO 的使用也是简单易用,所以微软 已经明确表示今后把重点放在 ADO 上,对 DAOO 不再作升级,所以 ADO 已经成为 了当前数据库开发的主流。ADO 涉及的数据存储有 DSN(数据源名称)、ODBC(开 放式数据连接)以及 OLE DB 三种方式。要使用 ADO,必须清楚 ADO 的对象层次 结构,其大体上分为以下 7 个对象层次: 1)、 Command 对象:包含关于某个命令,例如查询字符串、参数定义等的 信息。 2)、 Connection 对象:包含关于某个数据提供程序的信息。并且包含了 关于结构描述的信息。它还包含 transaction 控件。 3)、 Error 对象:包含数据提供程序出错时的扩展信息。 4)、 Field 对象:包含记录集中数据的某单个列的信息 5)、 Parameter 对象:包含参数化的 Command 对象的某单个参数的信息。 7 该 Command 对象有一个包含其所有 Parameter 对象的 Parameters 集合。 6)、 Property 对象:包含某个 ADO 对象的提供程序定义的特征。 7)、Recordset 对象:用来存储数据操作返回的记录集。此对象和 Connection 对象是所有对象 最重要的两个对象。 2、DAO Jet 数据库引擎 DAO Jet 的设计思想是用一种接口来访问多种类型的数据,包括 ASCII 文 本文件和 Microsoft Access 数据库等等。DAO Jet 引擎跟一组翻译例程对话, 把请求转化为目标数据库可以理解的格式。翻译例程既服务与 Microsoft Access 数据库,又服务与非 Microsoft Access ISAM 文件,如 Dbase、Fox Pro、Paradox 等等。翻译例程还处理使用 Microsoft Jet 接口的 ODBC 数据源。 在理论上,只要拥有引擎可使用的一系列翻译程序,就可以通过 DAO Jet 引擎 访问任何数据文件格式。所以 DAO 支持多种数据格式的访问。DAO Jet 数据服 务最独特的就是它拥有自己的查询引擎。这就意味着不必要有大型的、复杂的 数据库服务程序就可以使用标准 SQL 语句来检索、排列和筛选数据。所需要的 只是 DAO Jet 组件和一个兼容的数据文件。 前面已经提到,DAO Jet 服务的另一个优势就是就是它包含了自己的查询引 擎。这就意味着使用 DAO Jet 程序不需要远程的或者基于服务器的数据库系统 (例如 SQL Server 或 Oracle 等)的支持就能完成数据请求。如果程序需要在 单机环境下运行,DAO Jet 数据服务无疑是最好的选择。 同时 DAO 使用它自己的内部 Jet 引擎访问数据库,也是它的一个弱点。由 于查询服务运行于本地机上,这就意味着在处理任何远程数据请求之前,必须 把所有的数据都传送到本地工作站上。 DAO 的另一个缺点是它不能连接 Internet, DAO Jet 服务是为单机和局域 网开发的。这就意味着 DAO Jet 不太可能用于 Internet 或企业网应用程序,如 果数据库项目需要跟通过 Web 服务连接的用户进行交流时,可以使用 ADO 模型 进行数据库编程。 综上所述,纵合考虑上面所提技术的特点,本系统采用 ADO 数据库引擎作 为数据库访问技术,前台程序采用 Visual Basic6.0,数据库采用 Access。 8 第 3 章 数据库设计 3.1 数据库分析 针对一般酒店信息管理系统的要求和对系统流程图的分析,设计成如下的 逻辑结构: Cancel 表表:登记号,退房日期,付款数额。 Guest 表表: 登记号,用户姓名,身份证号,房间号,登记日期。 Room 表表: 房间号,房间等级,房间类型,房间价格,房间状态(是否入 住) Rsers 表: 用户帐号,用户密码/ 3.2 数据库逻辑结构设计 Cancel 表表 3-1 字 段 名 称数 据 类 型说 明 BookNo文本登记号 CancelDate日期/时间退房日期 PayMoney数字付款数额 Guest 表表 3-2 字 段 名 称数 据 类 型说 明 BookNo文本房间号 GuestName文本客人姓名 CardID文本身份证号 RoomNo 文本房间号 BookDate日期/时间登记日期 9 RoomRoom 表表 3-33-3 字 段 名 称数 据 类 型说 明 RoomNo文本房间号 RoomGrade是/否是否标准间 RoomType是/否是否套间 RoomRate数字房间价格 RoomStatus是/否是否有人住 Users 表表 3-4 字 段 名 称数 据 类 型说 明 Name文本用户帐号 Password文本用户密码 10 第 4 章 软件设计 4.1 软件模块和界面设计 1、登陆管理模块 用户在进入酒店信息管理系统前,必须输入自己的用户名和用户密码,经 验证确认为合法用户后,方可进入系统。如果用户名或用户密码输入错误,系 统将报错,且需要重新输入。 N Y 图 4-1 登陆管理模块 2、基本信息管理模块 基本信息模块主要完成功能有:客房信息管理包括房间编号、级别、类型、 价格、是否有人住等信息的输入、修改和删除;客人信息管理包括客人姓名、 身份证号、房间编号、等信息的输入、修改和删除;退房信息管理包括房间编号、 入住日期、退房日期、付款金额等外信息的输入、修改和删除。 N Y 用户 输入用户名、密码、密码验证。 正确 进入系统 用户 输入房间号或客人姓名 正确 11 图 4-2 基本信息管理模块 显示 对客人或客房信息进行操作 12 总 结 通过对酒店管理系统的开发和论文的撰写,使我对以前所学的计算机编程 知识和数据库知识有了更加深刻的认识,把理论知识真正用到了实际操作当中。 通过需求分析、系统分析、方案设计、数据库设计、软件设计、系统实施等一 系列步骤,使自己亲身体会到软件开发的流程,同时更加深刻的熟练 Microsoft Visual Basic 6.0 开发工具的使用方法,尤其是对 Microsoft Visual Basic 6.0 的强大的控件功能有了更深刻的认识。通过关键技术的对比,让我更加明白了 Visual Basic 和 Delphi 前台程序,Microsoft SQL Server 和 Microsoft Access 数据库,ADO 和 DAO 数据库引擎它们的不同之处,为以后其它系统的开 发奠定了良好的基础。 由于时间和经验欠缺,设计中存有诸多不足之处。本系统仅适用于单机系 统,不能用于网络环境。从而使本系统在实际应用中,存在一定局限性。同时 在开发初期未能实现系统用户分级管理,也暴露出本人在开发过程中经验欠缺 的弱点。 13 致 谢 在本次毕业设计中,由于自身的经验以及能力的限制,在设计中遇到了很 多问题,这些问题在李笑涛老师的帮助下,都得到了解决。遇到不明白的问题 时请教李老师,李老师总是能在第一时间给我解决,在电话中不厌其烦得给我 讲解。 我提交报告后,李老师也总是能在第一时间为我提出宝贵的修改意见,指导我 顺利完成设计。在此我感谢李笑涛老师以及我的同学对我的帮助! 14 参考文献 1 宋茂强.信息系统开发案例分析与课程设计.中央广播电视大学出版社 2005 年 8 月第 1 版 2 刘世峰.Visual Basic 程序设计.中央广播电视大学出版社,2004 年 7 月第 1 版 3 刘世峰.数据库基础与应用.中央广播电视大学出版社,2003 年 12 月第 1 版 4 周国民.Visual Basic +Access 数据库项目开发实践.中国铁道出版社 2005 年 1 月 第 1 版 5 李劲.数据库程序设计.科学出版社,2001 年 2 月第 1 版 15 附 录 1 主要源代码 1 登陆代码 Private Sub cmdCancel_Click() 结束程序 End End Sub Private Sub cmdOk_Click() Static intLoginTimes As Integer If Trim(txtUserName.Text) = “ Then 如果用户名为空 MsgBox “用户名不能为空!“, vbOKOnly + vbCritical, “错误“ txtUserName.SetFocus Exit Sub End If 打开数据库中的 Users 表 adoUsers.Refresh 查找用户名 adoUsers.Recordset.Find “Name=“ & txtUserName.Text & “, , adSearchForward, 1 也可以用下面的过滤方式 adoUser.Recordset.Filter = “Name=“ & txtUserName.Text & “ If Not adoUsers.Recordset.EOF Then 找到记录 strUserName = adoUsers.Recordset!Name strPassword = adoUsers.Recordset!Password Else 没找到记录 strUserName = “ strPassword = “ End If If strUserName = txtUserName.Text And strPassword = 16 txtPassword.Text Then adoUsers.Recordset.Close 关闭数据库中的 Users 表 Unload Me 关闭窗体 frmMDI.Show 显示主窗体 Else 用户名或密码不对 MsgBox “用户名或密码不对!“, vbOKOnly + vbInformation, “提示“ intLoginTimes = intLoginTimes + 1 If intLoginTimes = 3 Then 超过三次 adoUsers.Recordset.Close 关闭数据库中的 Users 表 End 退出整个程序 End If txtPassword.SetFocus 重新输入密码 SendKeys “HOME+END“ End If End Sub Private Sub Form_Load() 打开用户表 OpenTable adoUsers, “Users“ End Sub 2 客人信息管理 Private Sub dgtGuestRefresh() With dtgGuestInfo 绑定 Set .DataSource = frmMDI.adoGuest .AllowRowSizing = False 表头宽度设为两行 .HeadLines = 2 选择方式为整行选中 17 .MarqueeStyle = dbgHighlightRow 不允许修改(设为只读) .AllowAddNew = False .AllowDelete = False .AllowUpdate = False 第一列标题和宽度 .Columns(0).Caption = “登记号“ .Columns(0).Width = 70 .Columns(0).AllowSizing = False 第二列标题和宽度 .Columns(1).Caption = “客人姓名“ .Columns(1).Width = 55 .Columns(1).AllowSizing = False 第三列标题和宽度 .Columns(2).Caption = “身份证号码“ .Columns(2).Width = 110 .Columns(2).AllowSizing = False 第四列标题和宽度 .Columns(3).Caption = “房间号“ .Columns(3).Width = 60 .Columns(3).AllowSizing = False 第五列标题和宽度 .Columns(4).Caption = “登记日期“ .Columns(4).Width = 110 .Columns(4).AllowSizing = False End With End Sub Private Sub Form_Activate() Form_Load 18 End Sub Private Sub Form_Load() 显示在主窗体的中央 Me.Left = (frmMDI.Width - Me.Width) / 2 Me.Top = (frmMDI.Height - Me.Height) / 4 dgtGuestRefresh End Sub Private Sub cmdAddNew_Click() With frmGuestInfoEdit 窗体标题 .Caption = “添加新客人“ .txtBookNo.Locked = False .txtBookNo.Text = “ .txtGuestName.Text = “ .txtCardID.Text = “ .txtRoomNo.Text = “ .dtpBookDate.Value = Date 显示为模式窗体 .Show vbModal End With End Sub Private Sub cmdDelete_Click() If frmMDI.adoGuest.Recordset.EOF True Then With frmMDI.adoRoom.Recordset If MsgBox(“确认要删除当前记录吗?“, vbYesNo + vbQuestion + vbDefaultButton2, “确认框“) = vbYes Then .Find “RoomNo=“ & frmMDI.adoGuest.Recordset!RoomNo & “, , adSearchForward, 1 19 If Not .EOF Then 有就提示,然后退出 !RoomStatus = False End If With frmMDI.adoGuest.Recordset .Delete End With dtgGuestInfo.SetFocus End If End With End If End Sub Private Sub cmdEdit_Click() If frmMDI.adoGuest.Recordset.EOF True Then With frmGuestInfoEdit 窗体标题 .Caption = “修改客人信息“ .txtBookNo.Text = frmMDI.adoGuest.Recordset!BookNo .txtBookNo.Locked = True .txtGuestName.Text = frmMDI.adoGuest.Recordset!GuestName .txtCardID.Text = frmMDI.adoGuest.Recordset!CardID .txtRoomNo = frmMDI.adoGuest.Recordset!RoomNo .dtpBookDate.Value = frmMDI.adoGuest.Recordset!BookDate 显示为模式窗体 .Show vbModal End With End If End Sub Private Sub cmdExit_Click() 20 退出窗体 Unload Me End Sub 3 退房信息管理 Option Explicit Dim blnStartSelect As Boolean Private Sub cmdCancel_Click() 退出窗体 Unload Me End Sub Private Sub cmdOk_Click() With frmMDI.adoCancel.Recordset If Not txtBookNo.Locked Then 可修改状态表示是添加记录 If Trim(txtBookNo.Text) = “ Then MsgBox “登记号不能为空!“, vbOKOnly + vbInformation, “提示“ txtBookNo.SetFocus Exit Sub End If frmMDI.adoGuest.Recordset.Find “BookNo=“ & Trim(txtBookNo.Text) & “, , adSearchForward, 1 If frmMDI.adoGuest.Recordset.EOF Then 有就提示,然后退 出 MsgBox “非法登记号!“, vbOKOnly + vbInformation, “提 示“ txtBookNo.SetFocus SendKeys “HOME+END“ txtPayMoney.Text = “ Exit Sub 21 End If frmMDI.adoCanc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 离婚协议中子女抚养费用及共同债务处理协议签订指南
- 祁菊与张伟婚姻终止及共同债务处理协议
- 电信设备租赁合同终止及网络服务保障协议
- 个人自用房产私下买卖及产权过户法律援助合同
- 离婚协议书模板:夫妻共同财产分割及子女赡养协议
- 离职软件工程师技术成果保密及竞业禁止合同
- 树上的鸟儿课件
- 食品车间员工培训
- 理疗技术员考试题及答案
- 建设银行2025南昌市秋招笔试综合模拟题库及答案
- 2025中国农业科学院棉花研究所第二批招聘7人备考考试题库附答案解析
- 重庆西南大学附中2025-2026学年九年级上学期开学考试语文试题
- 2025-2026学年人教版PEP英语二年级上册教学计划(三篇)
- 2025年秋季学期教科版二年级上册科学教学计划(三篇)
- 买家赎楼签协议签合同
- (2025年标准)整容医师聘用协议书
- 煤矿机电考试试题及答案
- 借名购车协议贷款协议书
- 2025年6月四川省高中学业水平合格性考试地理试题(解析版)
- 2025至2030年中国虹膜识别市场深度调查分析及投资前景研究预测报告
- 《3-6岁幼儿学习与发展指南》试题及答案
评论
0/150
提交评论