




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件开发环境与工具 课程设计实验题目:酒店管理系统指导老师:南丽丽专业班级:计算机科学与技术系1105班 姓 名:陈阿艳(2011100516) 王媛(2011100529) 闫丽颖(2011100503) 樊建红(2011100515) 2013年 12月13日目录第一章前言 1.1选题背景 1.2课题研究的目的和意义 1.3本文的研究内容 1.4国内外现状第二章开发环境及工具介绍 2.1. Visual Basic .NET简介 2.2.SQL Server2005第三章系统分析 3.1.可行性分析 3.2.需求分析 3.2.1.酒店管理部分 .客户管理第四章数据库设计4.1.数据库设计截图4.2.权限设置4.3.客户信息表4.4.房态表4.5.结算表第五章系统实现 5.1登陆 5.2客户入住 5.3客户结算退房 5.4以“老板”为例,展示系统功能第六章主要代码第七章总结第1章 前 言1.1 选题背景酒店业是一个前景广阔而又竞争激烈的行业。改革开放以来,我国的酒店业迅速发展,已经成为一个具有相当规模的产业。由于我国的旅游业迅速发展,通过调查,我国在2020年将成为世界上第四大旅游国家;同时我国加入世界贸易组织,酒店业将完全开放,这个时候,我国的酒店业将面临着前所未有的机遇和挑战。但是,现在甚至还有一些酒店还停留在由人工操作和管理阶段,这样已经无法适应当前的发展趋势。因此,要想使酒店的工作质量和效率提高,采用先进的计算机网络 通信技术改变酒店业务模式,实现酒店业务管理的自动化已经成为一种必然。酒店管理系统采用B/S结构。按照按国家星级宾馆标准化业务程序流式设计,会采用主流开发工具来开发,搭建比较稳定可靠安全的服务端来辅佐客户管理,并且还采用数据库mysql,会通过测试用例来达到测试效果,技术支持会采用轻量级框架struts和hibernate持久化来完成,服务器采用tomcat,通过powerdesigner来设计数据模型为最初业务流程的概念设计阶段和详细设计阶段打好基础1。1.2 课题研究的目的和意义对酒店整个来说,对酒店经营状况起决定作用的是酒店的服务管理水平。如何利用先进的管理手段来提高酒店的管理水平成为酒店业务发展的当务之急。面对信息时代的机遇和挑战,利用科技手段提高酒店的管理无疑是一条行之有效的途径。虽然计算机管理并不是酒店管理走向成功的关键元素,但它可以最大限度地发挥准确、快捷、高效等作用,对酒店的业务管理提供强有力的支持。因此,采用全新的计算机网络和酒店业务管理系统,已成为提高酒店的管理效率,使作业人员与管理系统之间灵活互动,实现流畅的工作流衔接,帮助酒店有效地进行业务管理,释放最大价值。酒店业务管理系统在达到在节省人力资源成本的同时,可以提高业务效率,并能够及时、准确、迅速地满足顾客服务的需求2。1.3 本文的研究内容 课程设计选题酒店管理系统主要研究了:酒店业务的管理(划分为,登陆界面部分,查询界面部分,入住界面部分,退房界面部分)。1.4 国内外现状随着我国经济体制改革的不断深化和我国经济的快速发展,我国人民的收入不断提高,消费观念也有提高,对服务质量的要求也有很大的提高。各地把旅游业当作本 地经济发展的重要支柱之一。酒店作为人们食宿、娱乐、休闲的场所而得到了快速的发展。社会上也成立了各种类型,不同规模的酒店服务企业。如何为客户提供更 加准确及时的服务,成为各个酒店竞争关键。所以酒店业务信息化建设就成为了客户衡量酒店提供商服务标准的一个准则,信息系统成为了基础。随着Internet技术的进一步发展和普及,不能很好的适应世界经济发展的形式和我国国民经济建设的需要,市场现有的产品化的酒店业务软件系统在不断发 展中的酒店的需求。基于WEB的酒店管理系统的总体设计目标能够建立完善、高效、可靠的酒店业务信息系统,为酒店提供良好的信息环境3。第2章 开发环境及工具介绍21Visual Basic .NET简介Visual Basic .NET通常缩写为VB.NET,在某些特定情况下也直接简称VB,比如在.NET这个大话题下或者与其他.NET语言一起讨论的时候。Visual Basic .NET属Basic系语言,其语法特点是以极具亲和力的英文单词为基础标识,以及与自然语言极其相近的逻辑表达,有时候你会觉得写VB.NET代码就好像在写英文句子一样,从这个角度来说,VB.NET似乎是最高级的一门编程语言,当然在Basic系语言中VB.NET也确实是迄今为止最强大的一门编程语言。Visual Basic .NET的应用范围包括windows桌面、web以及当下突然觉醒的正在奋力追赶的第三大移动平台Windows phone。2.2 SQL Server2005SQL Server 是一个关系数据库管理系统。它最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UN操作系统上的应用。Microsoft SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。 第3章 系统分析3.1 可行性分析随着旅游业的发展,酒店、餐饮娱乐行业日趋发达,引入全方位的电脑服务和电脑管理日益流行。同时,酒店和餐厅娱乐业引入电脑服务和管理也取得了优良的经济 效益和社会效益。为此,国家建设部已于最近作出明确规定:凡星级酒店在项目审批时,其设计方案必须包括电脑管理系统,否则不予立项。可见,酒店管理电脑化 势在必行。酒店管理系统将先进的电脑技术与现代酒店服务管理完美地结合起来,实现了住宿、餐饮、娱乐全新概念的服务和管理方式。一个成熟的酒店管理系统不仅仅是记录酒店客人的信息,提供查询,报表打印等一系列简单的工作,它能让工作人员从烦琐的手工操作中解脱,并且酒店管理系统本 身就代表着一种管理方法。随着它的深入,将带动企业的运做,为管理和决策提供支持。为了达到这个要求,它必须依靠高起点的硬件环境和软件开发工具来保证系 统的稳定和正常运行。酒店电脑系统要求24小时连续运行,数据量大,可靠性要求高,因此整个电脑系统供电采用专线方式,加配UPS(不间断供电系统),并合理接地,以便保障整套系统的正常运行7。3.2 需求分析系统需对用户登录进行管理。使用各功能模块时,系统应验证用户身份的有效性,否则要求用户登录。另外,允许用户对自己的密码进行修改。系统应提供客房的分类管理功能,可分类制订客房面积、价格、是否配备空调等客房类型,对不同标准的客房进行有效管理。系统可实现对客房信息的添加、删除以及修改。在进行入住/退房管理时,系统可以根据客房当前的状态自动提示可用服务(入住/退房)。如果客房没有客人入住,则该客房的可用服务为“入住”;否则,可用服务为“退房”。系统的客户端在Windows平台下运行,服务器端可在Windows平台或UNIX平台下运行。系统还需要有较好的安全性和可扩展性8。需求分析是从客户的需求中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,规划出系统的功能模块,即定义用例。这个步骤是对理解需求的升华,直接关系到该系统的质量。整个系统可以分为2大部分。酒店网站部分(客户服务网站)和酒店管理部分(管理员部分)。本系统只做了有关酒店管理的一部分。3.2.1 酒店管理部分1.客房管理:预订客房管理、客房查询、退房管理。前台服务员的主要职能是负责订房和退房,以及查询入住的客户信息。所有该角色只可以使用部分功能,包括预定管理、客户信息查询,入住管理,退房管理功能。 第四章 数据库设计4.1 数据库设计截图 4.2权限设置 4.3客户信息表4.4房态表4.5结算表第5章 系统实现5.1登陆分别用三种身份登陆,所得到的权限也就不同老板经理员工5.2客户入住(通过添加客户信息,自动计算应付房费)5.3客户结算退房5.4以“老板”为例,展示系统功能 (1)查询房态 住着人的房间有:通过房间号查某间房的房态(2)职工管理 添加职工设置权限 第6章 主要代码登陆Public Class Login Private Sub Btn_Login_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Login.Click Data_Access.User_info.LoginUser_info.User_id = Me.Txt_Name.Text Data_Access.User_info.LoginUser_info.User_pwd = Me.Txt_pwd.Text Dim s As Integer s = Business_Logic_Layer.Data_Check.User_Check If s = 1 Then MsgBox(欢迎使用假日酒店管理系统, MsgBoxStyle.Information + MsgBoxStyle.OkOnly) Main_Form.Show() Me.Close() Else If s = -1 Then MsgBox(用户名错误!, MsgBoxStyle.Information + MsgBoxStyle.OkOnly) Else MsgBox(密码错误!, MsgBoxStyle.Information + MsgBoxStyle.OkOnly) End If End If End Sub Private Sub Btn_Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Cancel.Click Me.Close() End Sub Private Sub Login_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End SubEnd Class主界面Public Class Main_Form Private Sub Main_Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call Init_Tree() End Sub Public Sub Init_Tree() Me.TreeV.Nodes.Clear() Dim s As String s = select * from gg_Menu where isStop=0 Dim dr As SqlClient.SqlDataReader dr = myCommon.getData.get_dr(s) Dim myNode As TreeNode While dr.Read myNode = New TreeNode myNode.Text = dr.Item(MenuName) If Business_logic_layer.Judge.Judge_Auth(dr.Item(Typeid) = False Then Continue While End If myNode.Name = dr.Item(Typeid) If dr.Item(isGroup) = 0 Then myNode.Tag = dr.Item(Form) Else myNode.Tag = End If If dr.Item(Parid) = 0 Then Me.TreeV.Nodes.Add(myNode) Else If Me.TreeV.Nodes.Find(dr.Item(Parid), True).Length 0 Then Me.TreeV.Nodes.Find(dr.Item(Parid), True)(0).Nodes.Add(myNode) End If End If End While dr.Close() End Sub Private Sub TreeV_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeV.AfterSelect If e.Node.Tag = Then Exit Sub Dim formName As String formName = Hotel_Manager. & e.Node.Tag Dim f As Form f = CType(Activator.CreateInstance(Type.GetType(formName), Form) f.Show() f.MdiParent = Me f.WindowState = FormWindowState.Maximized End Sub Private Sub 退出ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 注销ToolStripMenuItem.Click Data_Access.User_info.LoginUser_info.User_id = Data_Access.User_info.LoginUser_info.User_name = Data_Access.User_info.LoginUser_info.User_pwd = Login.Show() Me.Close() End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Me.Tool_lb_name.Text = 登陆者 & Data_Access.User_info.LoginUser_info.User_name Me.Tool_lb_date.Text = 日期 & Format(Now, yyyy-MM-dd) Me.Tool_lb_time.Text = 时间 & Format(Now, long time) End Sub Private Sub 退出ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 退出ToolStripMenuItem1.Click Me.Close() End SubEnd Class入住Public Class Ruzhu_login Private Sub Ruzhu_login_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Txt_no.Text = myCommon.getNewCode.get_NewCode Call Init_Cbox() End Sub Private Sub Cbox_type_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cbox_type.SelectedIndexChanged Dim s As String s = select * from Fang where Fang_state=空 and Fang_type= & Me.Cbox_type.Text & Dim dr As SqlClient.SqlDataReader dr = myCommon.getData.get_dr(s) Cbox_fang_no.Items.Clear() While dr.Read Cbox_fang_no.Items.Add(dr!Fang_num) Txt_yajin.Text = dr!Fang_yajin Txt_danjia.Text = dr!Fang_price End While dr.Close() End Sub Private Sub Btn_ok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_ok.Click Dim s As String Dim ID_Card As String ID_Card = Me.Txt_ID.Text Dim cAge As Integer cAge = myCommon.getAge.get_age(ID_Card) Dim stoptime As String stoptime = 0000/00/00 00:00:00 s = insert into Customer values ( & Txt_no.Text & , & Txt_name.Text & , & Cbox_sex.Text & , & cAge.ToString & , & Txt_ID.Text _ & , & Cbox_type.Text & , & Cbox_fang_no.Text & , & Now & , & stoptime & , & Txt_yajin.Text _ & , & Txt_days.Text & , & Txt_yingjiao.Text & , & Txt_yijiao.Text & ) Dim s2 As String s2 = update Fang set Fang_state=满 where Fang_num= & Cbox_fang_no.Text & Try myCommon.getData.cmd_ex(s) myCommon.getData.cmd_ex(s2) MsgBox(添加成功!, MsgBoxStyle.Information + MsgBoxStyle.OkOnly) myCommon.getNewCode.getNewSaveCode() Catch ex As Exception MsgBox(添加失败! & ex.Message, MsgBoxStyle.Information + MsgBoxStyle.OkOnly) End Try End Sub Private Sub Btn_jisuan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_jisuan.Click Me.Txt_yingjiao.Text = Txt_danjia.Text * Txt_days.Text + Txt_yajin.Text End Sub Private Sub Btn_add_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_add.Click Me.Txt_no.Text = myCommon.getNewCode.get_NewCode Txt_name.Text = Cbox_sex.Items.Clear() Txt_ID.Text = Cbox_type.Items.Clear() Cbox_fang_no.Items.Clear() Txt_yajin.Text = Txt_days.Text = Txt_yingjiao.Text = Txt_yijiao.Text = Txt_address.Text = Txt_danjia.Text = Call Init_Cbox() End Sub Sub Init_Cbox() 为性别和房间类型进行添加 Cbox_sex.Items.Add(男) Cbox_sex.Items.Add(女) Cbox_type.Items.Add(单人间) Cbox_type.Items.Add(双人间) End SubEnd Class结算Public Class Jiesuan Dim str As String Private Sub Jiesuan_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call Btn_show_Click(sender, e) End Sub Private Sub Btn_jiesuan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_jiesuan.Click Dim s As String Dim yajin As String Dim yijiao As String Dim str As String str = Now str = Mid(str, 1, 10) s = select yajin,yijiao from Customer where Start_time like & str & % Dim dr As SqlClient.SqlDataReader dr = myCommon.getData.get_dr(s) While dr.Read yajin = dr!yajin + yajin yijiao = dr!yijiao + yijiao End While dr.Close() s = select count(*) from Jiesuan where Riqi like & str & % Dim conn As New SqlClient.SqlConnection conn.ConnectionString = myCommon.getstrconn.get_strconn Dim cmd As New SqlClient.SqlCommand cmd.Connection = conn cmd.CommandType = CommandType.Text cmd.CommandText = s conn.Open() If CType(cmd.ExecuteScalar(), Integer) = 0 Then Try s = insert into Jiesuan values ( & str & , & yijiao & , & yajin & , & yijiao - yajin & , 待审核 , 待审核) where Riqi= & str & myCommon.getData.cmd_ex(s) Catch ex As Exception MsgBox(结算时出现错误! & ex.Message) End Try Else If CType(cmd.ExecuteScalar(), Integer) 0 Then Try s = update Jiesuan set All_money= & yijiao & ,All_yajin= & yajin & ,Shouru= & yijiao - yajin & where Riqi= & str & myCommon.getData.cmd_ex(s) Catch ex As Exception MsgBox(结算时出错误!) End Try End If End If s = select * from Jiesuan where Riqi= & str & Dim ds As DataSet ds = myCommon.getData.get_ds(s) DGView_jiesuan.DataSource = ds.Tables(0) End Sub Private Sub Btn_show_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_show.Click Dim s As String s = select * from Jiesuan Dim ds As DataSet ds = myCommon.getData.get_ds(s) DGView_jiesuan.DataSource = ds.Tables(0) End Sub Private Sub Btn_jingli_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_jingli.Click Dim str As String str = Now str = Mid(str, 1, 10) If Data_Access.User_info.LoginUser_info.User_job = 经理 Then Dim s As String s = update Jiesuan set jinglishenhe= & Data_Access.User_info.LoginUser_info.User_name & where Riqi= & str & Try myCommon.getData.cmd_ex(s) Call Btn_show_Click(sender, e) Catch ex As Exception MsgBox(审核失败!) End Try Else MsgBox(你没有权限!) End If End Sub Private Sub Btn_laoban_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_laoban.Click Dim str As String str = Now str = Mid(str, 1, 10) If Data_Access.User_info.LoginUser_info.User_job = 老板 Then Dim s As String s = update Jiesuan set laobanshenhe= & Data_Access.User_info.LoginUser_info.User_name & where Riqi= & str & Try myCommon.getData.cmd_ex(s) Call Btn_show_Click(sender, e) Catch ex As Exception MsgBox(审核失败!) End Try Else MsgBox(你没有权限!) End If End SubEnd Class退房Public Class Tuifang_login Dim dv As DataView Private Sub Btn_chaxun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_chaxun.Click Dim str As String str = select * from Customer_Fang where Fang_no= & Me.Txt_fang_no.Text & Dim ds As DataSet ds = myCommon.getData.get_ds(str) dv = ds.Tables(temp).DefaultView DGView_tuifang.DataSource = dv End Sub Private Sub Btn_Tuifang_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Tuifang.Click Dim s As String s = update Fang set Fang_state=空? where Fang_num= & dv.Item(0).Item(Fang_no).ToString & Dim s2 As String s2 = update Customer set yingjiao= & dv.Item(0).Item(yingjiao) - dv.Item(0).Item(yajin) & ,stop_time= & Now _ & ,yajin=0,yijiao= & dv.Item(0).Item(yijiao) - dv.Item(0).Item(yajin) & where Customer_no= & dv.Item(0).Item(Customer_no) & Try myCommon.getData.cmd_ex(s) myCommon.getData.cmd_ex(s2) MsgBox(退房成功!, MsgBoxStyle.Information + MsgBoxStyle.OkOnly) Catch ex As Exception MsgBox(退房失败! & ex.Message, MsgBoxStyle.Information + MsgBoxStyle.OkOnly) End Try End Sub Private Sub Panel2_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel2.Paint End Sub查询Private Sub Btn_Customer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Customer.Click Show_all_coustomer() End Sub Private Sub Btn_Chaxun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Chaxun.Click Dim str As String If Chaxun_Fang.Text And Chaxun_name.Text Then str = Fang_no= & Chaxun_Fang.Text & and Customer_name= & Chaxun_name.Text & ElseIf Chaxun_Fang.Text And Chaxun_name.Text = Then str = Fang_no= & Chaxun_Fang.Text & ElseIf Chaxun_Fang.Text = And Chaxun_name.Text Then str = Customer_name= & Chaxun_name.Text & End If Call Show_all(str) End Sub Private Sub Panel2_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel2.Paint End SubEnd Class管理Public Class cManager Sub show_Role_Auth() Dim s As String s = select * from Role_Auth_V where Role_Name老板 Dim ds As DataSet ds = myCommon.getData.get_ds(s) DGView_Role_Auth.DataSource = ds.Tables(temp) End Sub Private Sub cM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蒸汽管网培训课件
- 写字坐姿培训课件图片
- 中职新生入学纪律教育
- 中国制造课件-教科版
- 培训学习汇报
- 高龄心房颤动患者抗凝治疗中国专家共识解读 2
- 扒房知识培训
- 中国全国各地地区课件
- 中国体育精神课件
- 中国传统饰品绘画课件
- 2025年卫生系统招聘考试(公共基础知识)新版真题卷(附详细解析)
- 2024年司法局司法辅助岗招聘考试笔试试题(含答案)
- 2025邯郸武安市选聘农村党务(村务)工作者180名笔试备考试题及答案详解一套
- 重庆市普通高中2025届高一下化学期末学业质量监测试题含解析
- 2025年人力资源管理师考试试卷及答案
- 北方华创招聘笔试题库2025
- 2025郑州航空工业管理学院辅导员考试试题及答案
- 浙江省嘉兴市2023-2024学年高一下学期6月期末考试英语试题(含答案)
- 多模态数据融合的智能告警机制-洞察阐释
- 2024年广东省台山市事业单位公开招聘教师岗考试题带答案分析
- 番禺社区专职试题及答案
评论
0/150
提交评论