酒店管理系统课程设计报告-精品_第1页
酒店管理系统课程设计报告-精品_第2页
酒店管理系统课程设计报告-精品_第3页
酒店管理系统课程设计报告-精品_第4页
酒店管理系统课程设计报告-精品_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

1、?数据库原理与应用? 课程设计题 目 酒店管理系统 院 系 信息工程学院 专 业 班 级 2021级计科本2班 学 生 姓 名 黄加月 徐海生 张宝 汪裕康 董国龙 学 号 11421512、28、31、22、04 设 计 地 点 教学13#602 指 导 教 师 胡贤德 起止时间:2013年12月25日至2014年1月4日?数据库原理与应用?课程设计任务分配院系:信息工程学院 教研室:软件教研室课程设计题目学生信息管理系统课 程 设 计目的?数据库原理与应用?课程设计是计算机类专业的集中实践性环节之一,是课程教学中的一项重要内容,是完成教学方案到达教学目标的重要环节,是帮助学生全面结实地掌握

2、课堂教学内容、培养学生分析问题、解决问题的能力进展的一次全面的综合练习。通过结合设计题目进展综合性应用,对所学知识到达融会贯穿的程度,对提高学生的综合素质具有重要的意义。1、加深对数据库根底理论和根本知识的理解。2、掌握数据库设计与使用的根本方法。3、提高运用数据库解决实际问题的能力小组成员及任务分配姓名学号承当任务是否组长黄加月1142151210概要设计、详细设计、编码是徐海生1142151228ppt制作否张宝1142151231撰写设计报告否汪裕康1142151222数据库建表否董国龙1142151204整理和收集文献资料否 摘 要酒店管理系统是一个酒店单位不可缺少的一局部,它的内容对

3、于企业的决策者和管理者来说都是至关重要的,因此,酒店管理系统应该能够为用户提供充足的信息和快捷的查询手段,但一直以来人们使用传统的人工方式管理,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学不断开展,其强大的功能已经被人们深刻认识,它已经进入了社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一局部,使用计算机对产品库存信息进展管理,具有人工管理无法比较的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、本钱低等,可减少更多的人力物力,这些都能够极大地

4、提高货品库存的管理效率,也是酒店管理科学化、正规化,与世界接轨的重要条件。 随着酒店规模的不断扩大,客房数量的急剧增加,有关客房的各种信息量也在不断成倍增长。面对庞大的信息量,就需要有客房信息管理系统来提高客房管理工作的效率。 传统手工的客房管理,管理过程繁琐而复杂,执行效率低,并且易于出错。通过这样的系统,我们可以做到信息的标准管理和快速查询,实现了客房信息管理的系统化、标准化和自动化,这样不仅减少了管理工作量,还提高了管理效率,降低了管理本钱。关键词:VB; ER图;目 录1 需求分析 系统需求分析近年来,酒店业迅猛开展,市场的竞争日趋剧烈,全面提高酒店的软件管理水准,已成为酒店业开展的当

5、务之急。尤其是对于星级酒店,既需要完成前台的一些效劳工作,还需要完成后台的管理工作。然而,传统的人工管理模式已经远远不能满足有效、快捷地处理经营中产生的大量信息数据的需要,从而使得企业决策层无法及时、准确地掌握一线资料,继而影响对市场进展正确地分析和预测。像沿海城市三星级以上酒店引进外方管理,使小局部酒店管理水准几乎接近或到达国际水平。但对广阔中小型酒店来说,是难以做到的。因此,欲在竞争中甩开对手,取得优势,必须在经营、管理、产品、效劳等方面具备独到之处。而对酒店的经营状况起决定作用的是客房的管理。简单的效劳标准已不是制胜的锦囊,只有管理做到最细微之处,才能让顾客体会到酒店效劳的高标准、高质量

6、,而准确、快速、周全往往就是最根本的成功要素。传统的管理方法已经不能适应现代社会的需要,因此采用电脑管理业务、财务等诸多环节已成为推动酒店业迅速开展的先决条件,酒店客房管理信息系统是各大中小型酒店所需要使用的一个管理系统。1.2 用户需求分析酒店管理系统的数据库功能主要表达在对各种信息的提供、保存、更新和查询操作上包括客房信息。客房类型信息、客户记录信息、客户信息、员工信息和员工工作信息。各个局部的数据内容又有内在的联系。针对该系统的数据特点,可以总结如下的需求:客房信息包括客房的详细信息客户信息记录客户登记时的详细信息入住信息是客户信息和客房信息之间的关联每个员工信息都对应一个员工类型每个客

7、房都对应一个员工信息1.3 酒店管理系统的功能主要功能:前台操作:包括用户登录、菜单设置和房台设置预订管理:包括预订包间、转台和并台信息查询:包括客人列表、预订客人列表、员工信息报表统计:包括开房记录统计参考数据如下住店管理:客人姓名、证件号码、房号、入住时期、预计离开日期、结账离开日期、应付金额客人信息:姓名、性别、房间信息:房号、房类型、价格、房状态预订房间:客人姓名、房类型、房号、价格、证件类型、证件号码、联系 、入住日期、预计离开日期历史信息:2 总体设计2.1 SQL后台本系统使用SQL SERVER2000作为应用程序的数据库后台,考虑到系统的实际需求,系统至少需要以下几张数据库表

8、:1酒店部门表:用来存放酒店部门编号和部门名称的表2用户消费表:用来存放顾客消费编号,消费方式和消费金额的表3客房表:用来存放客房的部门编号,房台编号,房台名称,部门名称,类别名称,房台费,状态和消费方式的表4客房分类表:用来存放客房的类别编号,类别名称和容纳人数的表5顾客消费表:用来存放顾客的编号,房台费,房台编号,房台名称,账单编号,顾客姓名,消费日期和消费金额的表6营业额表:用来存放编号,日期和营业额的表7菜类别表:用来存放菜类别名称概念模型是对现实世界的抽象和概述,它真实地反映了事物和事物之间的联系。应用E-R图可描述某一组织的概念模型。下面根据需求分析设计酒店管理系统的E-R图。全局

9、E-R图全局E-R图如下:m1n1mnnn领导客户客房入住员工效劳管理图2.1 全局E-R图 酒店部门E-R图:图2.2 酒店部门E-R图 客房E-R图客房E-R图中包括的属性有部门编号,房台编号,房台名称,部门名称,类别名称,房台费,状态,消费方式。如图2.3所示:图2.3 客房E-R图 客房类别E-R图:图2.4 客房类别E-R图 收益E-R图收益E-R图中包括的属性有编号,日期和营业额。如图2.5所示:图2.4 客房类别E-R图3 详细设计3.1 SQL后台详细设计 根本表设计1 酒店部门表部门编号,部门名称如表3-1所示表3-1 酒店部门表2 用户消费表消费编号,消费方式,消费金额,效

10、劳费率如表3-2所示表3-2 用户消费表 3 客房表部门编号,房台编号,房台名称,部门名称,类别名称,房台费,状态,消费方式如表3-3所示表3-3 客房表 4客房分类表类别编号,类别名称,容纳人数如表3-4所示表3-4 客房分类表5 顾客消费表编号,房台费,房台编号,房台名称,账单编号,顾客姓名,消费日期,本次应付如表3-5所示表3-5 顾客消费表6营业额表 编号,日期,营业额如表3-6所示表3-6 营业额表7 菜类别表类别名称如表3-7所示表3-7 菜类别表系统前台VB详细设计 前台功能本系统使用Visual Basic 6.0作为前台,系统要实现对于不同权限的用户可以进展不同的功能选择,可

11、以对相关信息进展查看、插入、修改和删除等功能,因此系统至少需要以下几个界面:1 用户登录界面2 系统主界面3开房界面4 房间查询界面5 预定房间界面6 点菜界面7 查询账单界面 登录界面登录界面主要实现对于不同权限的用户进展判断,并进入下一界面,在用户登录错误时给予提示,如下列图3.1和图3.2 所示:图3.1 登录成功界面 图3.2 登录不成功界面具体代码如下:Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = 13 ThenIf Text2.Text = 黄加月 And Text1.Text

12、 = 111111 Thenfrm_main.Check1.Value = 1frm_main.Check2.Value = 1frm_main.Check3.Value = 1frm_main.Check4.Value = 1frm_main.Check5.Value = 1frm_main.Check6.Value = 1frm_main.Check7.Value = 1frm_main.Check8.Value = 1frm_main.Check9.Value = 1frm_main.StatusBar1.Panels.Item(3).Text = 当前操作员: 黄加月Unload Me

13、Adodc1.RecordSource = select * from Table_xtdl where 用户名 = & Text2.Text & If Adodc1.Recordset.RecordCount 0 Then If Trim(Text1.Text) = Trim(Text4.Text) Then frm_main.Check1.Value = Adodc1.Recordset.Fields(字段1) frm_main.Check2.Value = Adodc1.Recordset.Fields(字段2) frm_main.Check3.Value = Adodc1.Record

14、set.Fields(字段3) frm_main.Check4.Value = Adodc1.Recordset.Fields(字段4) frm_main.Check5.Value = Adodc1.Recordset.Fields(字段5) frm_main.Check6.Value = Adodc1.Recordset.Fields(字段6) frm_main.Check7.Value = Adodc1.Recordset.Fields(字段7) frm_main.Check8.Value = Adodc1.Recordset.Fields(字段8) frm_main.Check9.Val

15、ue = Adodc1.Recordset.Fields(字段9) frm_main.Check10.Value = Adodc1.Recordset.Fields(字段10) frm_main.StatusBar1.Panels.Item(3).Text = 当前操作员: + Adodc1.Recordset.Fields(用户名) Unload Me Else MsgBox 密码不正确,请您确认后重新输入 Text1.Text = End If Else MsgBox 对不起 没有此用户的信息 Text2.Text = Text1.Text = End If End If Else 登陆界

16、面错误 系统主界面系统主界面如下列图所示:图3.3 系统主界面 顾客开房界面顾客开房界面如下列图3.4所示:图3.4 顾客开房界面3 房间查询界面房间查询界面如下列图3.5所示:图3.5 房间查询界面具体代码如下:Private Sub DataGrid1_Click()End SubPrivate Sub Form_Load()Me.Left = (Screen.Width - Me.Width) / 2Me.Top = (Screen.Height - Me.Height) / 2Adodc2.RecordSource = select * from Table_ftsz_bmIf Ado

17、dc2.Recordset.RecordCount 0 ThenDo While Adodc2.Recordset.EOF = FalseCombo2.AddItem (Adodc2.Recordset.Fields(部门名称)LoopElseEnd IfAdodc3.RecordSource = select * from Table_ftsz_lbIf Adodc3.Recordset.RecordCount 0 ThenDo While Adodc3.Recordset.EOF = FalseCombo1.AddItem (Adodc3.Recordset.Fields(类别名称)Loo

18、pElseEnd IfEnd SubPrivate Sub Text2_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = 13 Then If Cmd_xg1(0).Enabled = True Then ElseIf Cmd_xg1(0).Enabled = False Then Adodc1.RecordSource = select * from Table_ftsz_ft where 房台编号= + Text2 + If Adodc1.Recordset.RecordCount 0 Then Text1.Text = A

19、dodc1.Recordset.Fields(部门编号) Text2.Text = Adodc1.Recordset.Fields(房台编号) Combo1.Text = Adodc1.Recordset.Fields(类别名称) Text5(1).Text = Adodc1.Recordset.Fields(房台名称) Combo2.Text = Adodc1.Recordset.Fields(部门名称) Text3.Text = Adodc1.Recordset.Fields(房台费) Else End If Else End IfElseEnd IfEnd SubPrivate Sub

20、Text7_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = 13 Then If Cmd_xg4(3).Enabled = True Then ElseIf Cmd_xg4(3).Enabled = False Then Adodc4.RecordSource = select * from Table_ftsz_xffs where 消费编号= + Text7 + If Adodc4.Recordset.RecordCount 0 Then Text7.Text = Adodc4.Recordset.Fields(消费编号)

21、 Text8.Text = Adodc4.Recordset.Fields(消费方式) Text9.Text = Adodc4.Recordset.Fields(消费金额) Text10.Text = Adodc4.Recordset.Fields(效劳费率) Else End If Else End IfElseEnd IfEnd SubPrivate Sub Text9_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = 13 ThenIf Not IsNumeric(Text9.Text) ThenMsgBox 输入必须为数

22、字ElseEnd IfElseEnd IfEnd Sub 点菜界面当顾客需要点菜的时候可以用点菜系统直接点菜。点菜界面如下列图3.6,3.7所示:图3.6 点菜界面图3.7 点菜界面具体代码如下:Private Sub DataGrid1_Click()End SubPrivate Sub Form_Load()Me.Left = (Screen.Width - Me.Width) / 2Me.Top = (Screen.Height - Me.Height) / 2Adodc3.RecordSource = select * from Table_cdsz_cxszIf Adodc3.Rec

23、ordset.RecordCount 0 ThenDo While Adodc3.Recordset.EOF = FalseCombo2.AddItem (Adodc3.Recordset.Fields(菜系名称)LoopElseEnd IfAdodc2.RecordSource = select * from Table_cdsz_jclbIf Adodc2.Recordset.RecordCount 0 ThenDo While Adodc2.Recordset.EOF = FalseCombo3.AddItem (Adodc2.Recordset.Fields(类别名称)LoopElse

24、End IfAdodc4.RecordSource = select * from Table_cdsz_jcsmIf Adodc4.Recordset.RecordCount 0 ThenDo While Adodc4.Recordset.EOF = FalseCombo4.AddItem (Adodc4.Recordset.Fields(附加说明)LoopElseEnd IfEnd SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = 13 Then If Cmd_xg1(0).Enab

25、led = True Then ElseIf Cmd_xg1(0).Enabled = False Then Adodc1.RecordSource = select * from Table_cdszb where 编号= + Text1 + If Adodc1.Recordset.RecordCount 0 Then Text1.Text = Adodc1.Recordset.Fields(编号) Text2.Text = Adodc1.Recordset.Fields(酒菜名称) Combo1.Text = Adodc1.Recordset.Fields(单位) Text3.Text =

26、 Adodc1.Recordset.Fields(价格) Combo2.Text = Adodc1.Recordset.Fields(菜系) Combo3.Text = Adodc1.Recordset.Fields(酒菜类别) Combo4.Text = Adodc1.Recordset.Fields(附加说明) Else End If Else End IfElseEnd IfEnd SubPrivate Sub Text5_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)If KeyCode = 13 Then

27、 If Cmd_xg2(1).Enabled = True Then Text6(0).SetFocus ElseIf Cmd_xg2(1).Enabled = False Then Adodc2.RecordSource = select * from Table_cdsz_jclb where 类别编号= + Text5(0) + If Adodc1.Recordset.RecordCount 0 Then Text5(0).Text = Adodc2.Recordset.Fields(类别编号) Text6(0).Text = Adodc2.Recordset.Fields(类别名称)

28、Text5(0).SetFocus Else End If Else End IfElseEnd IfEnd SubPrivate Sub Text55_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)If KeyCode = 13 Then If Cmd_xg3(2).Enabled = True Then ElseIf Cmd_xg3(2).Enabled = False Then Adodc3.RecordSource = select * from Table_cdsz_cxsz where 菜系编号= +

29、Text55(1) + If Adodc1.Recordset.RecordCount 0 Then Text6(1).Text = Adodc3.Recordset.Fields(菜系名称) Text55(1).SetFocus Else MsgBox 没有此菜系信息 End If Else End IfElseEnd IfEnd SubPrivate Sub Text8_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = 13 Then If Cmd_xg4(3).Enabled = True Then ElseIf Cmd_

30、xg4(3).Enabled = False ThenAdodc4.RecordSource = select * from Table_cdsz_jcsm where 编号= + Text8.Text + If Adodc4.Recordset.RecordCount 0 Then Text8.Text = Adodc4.Recordset.Fields(编号) Text51(2).Text = Adodc4.Recordset.Fields(附加说明) Text51(2).SetFocus Else End If Else End If 结账界面当顾客需要结账的时候我们可以在系统上直接查询

31、出顾客消费的情况。结账界面如图3.8所示:图3.8 顾客结账界面具体代码如下:Private Sub Label6_Click()End SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = 13 ThenCall mainDim temp1If b = 1 Then If Combo1.Text = Or Text1.Text = Then MsgBox 请您选择结账方式或输入结账方式内容 Else Adodc1.RecordSource = select * from Table_gkx

32、f where + Combo1 + = + Text1 + And 状态= 使用 If Adodc1.Recordset.RecordCount 0 Then b = b + 1 Text2(0).Text = Adodc1.Recordset.Fields(房台编号) Text2(1).Text = Adodc1.Recordset.Fields(房台名称) Text2(2).Text = Adodc1.Recordset.Fields(付款方式) Text2(3).Text = Adodc1.Recordset.Fields(账单编号) Text2(4).Text = Adodc1.Re

33、cordset.Fields(顾客姓名) DTPicker1.Value = Adodc1.Recordset.Fields(结算时间) Do While Adodc1.Recordset.EOF = False key = Adodc1.Recordset.Fields(酒菜名称) Set itmX = ListView1.ListItems.Add(, , key, 1) Loop Adodc1.RecordSource = select sum(消费总金额) 编号 from Table_gkxf where + Combo1 + = + Text1 + And 状态= 使用 Adodc2

34、.RecordSource = select * from Table_ftsz_ft where 房台编号= + Text2(0) + And 状态= 使用 If Adodc2.Recordset.RecordCount 0 Then temp2 = Adodc2.Recordset.Fields(房台费) Text2(5).Text = Val(Text3.Text) + Val(temp2) temp1 = Adodc2.Recordset.Fields(temp1) Set adoRs = adoCon.Execute(update Table_ftsz_ft set 房台名称= + temp1 + ,状态=空闲 where 房台编号= + Text2(0) + ) Else End If Set adoRs = adoCon.Execute(update Table_gkxf set 状态=空闲,结账次数=1 where + Combo1 + = + Text1 + ) Dim c c = 房台编号为 + Text2(0).Text

温馨提示

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

评论

0/150

提交评论