酒店客房信息管理系统的设计与实现.docx
- 文档编号:10049720
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:42
- 大小:407.87KB
酒店客房信息管理系统的设计与实现.docx
《酒店客房信息管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《酒店客房信息管理系统的设计与实现.docx(42页珍藏版)》请在冰豆网上搜索。
酒店客房信息管理系统的设计与实现
课程设计报告
酒店客房信息管理系统的设计与实现
数据库设计
课程《数据库原理及应用》
班级
姓名
学号
指导教师
时间:
2012年5月21日至2012年5月25日
指导教师对课程设计(论文)的评语(工作态度、任务完成情况、能力水平、设计说明书(论文)的撰写和图纸质量等):
成绩
指导教师签字年月日
第六章课程设计心得体会...............................................................32
参考文献.............................................................................................33
第一章需求分析
1.1开发背景
90年代中期,由于Internet的迅速普及,使Intranet成为Internet技术在企业管理信息系统中的应用和延伸,形成了集计算机,计算机网络、数据库、分布式计算等于一体的信息技术综合体,它打破了时间和地域的界限,使信息交流变得快捷、准确,为建立现代企业管理信息系统提供了充足的条件。
企业信息管理系统在此基础上延伸、扩展,使之上下、内外全面贯通。
引入Internet后,形成了新型的浏览器/服务器(Browser/Server)结构,而传统的客户机/服务器(Client/Server)结构在这方面就远不及B/S结构。
近年来,宾馆业迅猛发展,市场的竞争日趋激烈,全面提高宾馆的软件管理水准,已成为宾馆业发展的当务之急。
尤其是对于星级宾馆,既需要完成前台的一些服务工作,还需要完成后台的管理工作。
然而,传统的人工管理模式已经远远不能满足有效、快捷地处理经营中产生的大量信息数据的需要,从而使得企业决策层无法及时、准确地掌握一线资料,继而影响对市场进行正确地分析和预测。
像沿海城市三星级以上宾馆引进外方管理,使小部分宾馆管理水准几乎接近或达到国际水平。
但对占80%以上的广大中小型宾馆来说,是难以做到的。
因此,欲在竞争中甩开对手,取得优势,必须在经营、管理、产品、服务等方面具备独到之处。
而对宾馆的经营状况起决定作用的是客房的管理。
简单的服务标准已不是制胜的锦囊,只有管理做到最细微之处,才能让顾客体会到宾馆服务的高标准、高质量,而准确、快速、周全往往就是最基本的成功要素。
传统的管理方法已经不能适应现代社会的需要,因此采用电脑管理业务、财务等诸多环节已成为推动宾馆业迅速发展的先决条件,宾馆客房管理信息系统是各大中小型宾馆所需要使用的一个管理系统。
客房管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库,而对于后者则要求应用程序功能完备,操作简单等,该系统的是终目的方便员工查阅。
1.2功能描述
经过调研及分析,客房管理信息系统主要完成以下功能:
(1)客房信息输入
包括每间客房的大小级别、地理位置、预设租金等信息。
(2)客房信息查询
用于及时掌握客房的安排情况。
(3)前台操作员管理
用于设置前台管理员的密码和基本信息。
(4)客房预订
处理各类客户预订要求,预订可以通过各种方式进行(如电话、e-mail、传真等)。
前台需要根据当前客房入住情况,及时反馈给客户预订结果。
(5)入住登记
客户实际入住时,需要及时登记客户信息,以便今后查询。
(6)房客查询
可以根据各种信息查询房客是否入住及入住情况。
(7)收费管理
包括入住的定金、各类其他消费情况和最终的结账管理。
1.3业务流程分析
业务流程分析如图1所示。
图1业务流程图
第二章数据流程分析
2.1数据流程图
数据流程图如图2所示。
维修信息
客房信息
客房信息客房状态
客人信息入住登记
帐务信息
入住信息
图2数据流程图
2.2、数据字典
(1)数据流编号:
D001
数据流名称:
预订
数据流来源:
客人
数据流去向:
预订登记
包含的数据项:
客房号,客房类型,定金,预订方式,客人姓名,客房状态
(2)数据流编号:
D002
数据流名称:
客房状态
数据流来源:
客房
数据流去向:
预订登记
包含的数据项:
客房号,定金,预订方式,客人姓名,客房状态
(3)数据流编号:
D003
数据流名称:
客人信息登记
数据流来源:
预订登记
数据流去向:
客人信息
包含的数据项:
客房号,客人姓名,客人性别
(4)数据流编号:
D004
数据流名称:
客人入住
数据流来源:
客人预订产生入住登记
数据流去向:
入住登记
包含的数据项:
客房号,客人姓名,客房类型,楼层,价格
(5)数据流编号:
D005
数据流名称:
删除客人记录
数据流来源:
入住登记
数据流去向:
客人退房
包含的数据项:
客房号,客房类型,楼层,价格
(6)数据流编号:
D006
数据流名称:
客人消费
数据流来源:
客人退房
数据流去向:
消费
包含的数据项:
客房号,客人姓名,客人餐费,定金,价格,总消费
(7)数据流编号:
D007
数据流名称:
客房信息
数据流来源:
客人退房
数据流去向:
客房
包含的数据项:
客房号,客房类型,楼层,价格
第三章概念模型设计
系统的总E—R图如图3所示。
图3总E—R图
第四章逻辑模式设计和优化
(1)客房信息
表1客房信息
客房号
客房类型
楼层
价格
nvarchar(20)
nvarchar(20)
nvarchar(10)
int
(2)客人信息
表2客人信息
客房号
客人姓名
客人性别
nvarchar(20)
char(10)
char(3)
(3)客人预订
表3客人预订
客房号
定金
预订方式
客人姓名
客房状态
nvarchar(20)
int
nvarchar(20)
char(10)
nvarchar(20)
(4)客人入住
表4客人入住
客房号
客人姓名
客房类型
楼层
价格
nvarchar(20)
nvarchar(20)
nvarchar(20)
nvarchar(20)
int
(5)客人消费
表5客人消费
客房号
客人姓名
客人餐费
定金
价格
nvarchar(20)
char(10)
int
int
int
第五章物理设计和实施
5.1创建数据库
得到系统逻辑模型后,就该进行数据库的物理设计和实施数据库了,物理设计主要是要确定数据库的存储路径、存储结构等,可以采用系统的默认设置。
数据库实施主要包括在具体的DBMS中创建数据库和表的过程,本设计所选用的DBMS为SQLSERVER2005,有关创建数据库和关系表的SQL语句如下所示:
(1)创建数据库
/*==============================================================*/
createdatabase酒店客房数据库;
/*==============================================================*/
createdatabase酒店客房信息管理系统
go
(2)创建数据库的表
/*==============================================================*/
客房信息表
/*==============================================================*/
createtable客房信息
(客房号nvarchar(20),
客房类型nvarchar(20),
楼层nvarchar(10),
价格int,
primarykey(客房号)
);
/*==============================================================*/
客人预订表
/*==============================================================*/
createtable客人预订
(
客房号nvarchar(20),
客房类型nvarchar(20),
定金int,
预订方式nvarchar(10),
客人姓名char(10),
客房状态nvarchar(10),
primarykey(客房号),
foreignkey(客房号)references客房信息(客房号),
);
/*==============================================================*/
客人信息表
/*==============================================================*/
createtable客人信息
(客房号nvarchar(20),
客人姓名char(10),
客人性别char(3),
primarykey(客房号),
foreignkey(客房号)references客人预订(客房号)
);
/*==============================================================*/
客人入住表
/*==============================================================*/
createtable客人入住
(
客房号nvarchar(20),
客人姓名char(10),
客房类型nvarchar(20),
楼层nvarchar(10),
价格int,
primarykey(客房号),
foreignkey(客房号)references客房信息(客房号),
);
/*==============================================================*/
客人消费表
/*==============================================================*/
createtable客人消费
(客房号nvarchar(20),
客人姓名char(10),
客人餐费int,
定金int,
价格int,
总消费int,
primarykey(客房号),
foreignkey(客房号)references客人入住(客房号)
);
5.2程序以及调试和使用说明
(1)登陆界面
图1登陆界面
privatevoid系统管理员_Click(objectsender,EventArgse)
{
Form1e2=newForm1();
e2.Show();
}
privatevoid前台管理员_Click_1(objectsender,EventArgse)
{
Form14e3=newForm14();
e3.Show();
}
privatevoid客人查询_Click(objectsender,EventArgse)
{
Form15u15=newForm15();
u15.Show();
}
privatevoid退出_Click(objectsender,EventArgse)
{
this.Close();
Application.Exit();
}
(2)后台管理员登录界面
图2后台管理员登陆界面
privatevoid登陆系统button_Click(objectsender,EventArgse)
{
if(textUserName.Text==""||textPassword.Text=="")
{
MessageBox.Show("输入登录信息不完整,请重新输入!
","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
else
{
stringConStr="server=左-PC;uid=u3;pwd='123';database=酒店客房数据库";SqlConnectioncon=newSqlConnection(ConStr);
stringSqlStr="select*from操作用户1where用户姓名='"+textUserName.Text+"'and用户密码='"+textPassword.Text+"'";
SqlDataAdapterada=newSqlDataAdapter(SqlStr,con);
DataTabledt=newDataTable();
ada.Fill(dt);
inti=dt.Rows.Count;
if(i>0)
{
主界面a=new主界面();
a.Show();
}
else
{
MessageBox.Show("用户名或密码不正确,请重新输入!
","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
}
}
privatevoid退出系统button_Click(objectsender,EventArgse)
{
this.Close();
Application.Exit();
}
(3)后台管理员主界面
图3后台管理员主界面
(4)前台管理员登陆界面
图4前台管理员登陆界面
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textUserName.Text==""||textPassword.Text=="")
{
MessageBox.Show("输入登录信息不完整,请重新输入!
","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
else
{
stringConStr="server=左-PC;uid=u3;pwd='123';database=酒店客房数据库";
SqlConnectioncon=newSqlConnection(ConStr);
stringSqlStr="select*from操作用户2where用户姓名='"+textUserName.Text+"'and用户密码='"+textPassword.Text+"'";
SqlDataAdapterada=newSqlDataAdapter(SqlStr,con);
DataTabledt=newDataTable();
ada.Fill(dt);
inti=dt.Rows.Count;
if(i>0)
{
主界面1a1=new主界面1();
a1.Show();
}
else
{
MessageBox.Show("用户名或密码不正确,请重新输入!
","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
}
}
(5)客房信息录入
图5客房信息录入
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text==""||textBox2.Text==""||textBox3.Text==""||textBox4.Text=="")
{
MessageBox.Show("输入信息不完整,请重新输入!
","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
else
{
stringConStr="server=左-PC;Userid=u3;pwd='123';database=酒店客房数据库";
SqlConnectioncon=newSqlConnection(ConStr);
StringBuilderstrSQL=newStringBuilder();
strSQL.Append("insertinto客房信息(客房号,客房类型,楼层,价格)");
strSQL.Append("values('"+textBox1.Text.Trim().ToString()+"','"+textBox2.Text.Trim().ToString()+"','"+textBox3.Text.Trim().ToString()+"','"+textBox4.Text.Trim().ToString()+"')");
using(SqlCommandcmd=newSqlCommand(strSQL.ToString(),con))
{
con.Open();
cmd.ExecuteNonQuery();
con.Close();
con.Dispose();
}
MessageBox.Show("客房信息添加成功!
","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
textBox1.Text="";
textBox2.Text="";
textBox3.Text="";
textBox4.Text="";
}
}
(6)客房信息查询
图6客房信息查询
privatevoidForm2_Load(objectsender,EventArgse)
{
try
{
stringConStr="server=左-PC;Userid=u3;pwd='123';database=酒店客房数据库";
SqlConnectioncon=newSqlConnection(ConStr);
stringSqlStr="select客房号,客房类型,楼层,价格from客房信息";
SqlDataAdapterada=newSqlDataAdapter(SqlStr,con);
DataSetds=newDataSet();
ada.Fill(ds);
this.dataGridView1.DataSource=ds.Tables[0].DefaultView;
}
catch
{
return;
}
}
(7)前台管理员密码修改
图7前台管理员密码修改
privatevoid前台操作员管理_Load(objectsender,EventArgse)
{
stringConStr="server=左-PC;Userid=u3;pwd='123';database=酒店客房数据库";
SqlConnectioncon=newSqlConnection(ConStr);
con.Open();
SqlCommandcom=newSqlCommand("select用户姓名from操作用户2",con);
SqlDataReaderdr=com.ExecuteReader();
comboBox1.Items.Clear();
while(dr.Read())
{
comboBox1.Items.Add(dr[0].ToString());
}
dr.Close();
con.Close();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
stringConStr="server=左-PC;Userid=u3;pwd=123;database=酒店客房数据库";
SqlConnectioncon=newSqlConnection(ConStr);
using(SqlCommandcmd=newSqlCommand())
{
con.Open();
cmd.Connection=con;
cmd.CommandType=CommandType.StoredProcedure;
cmd.CommandText="用户_update";
SqlParameter[]par={
newSqlParameter("@name",boBox1.Text),
newSqlParameter("@pwd",this.textBox2.Text),
newSqlParameter("@zw",this.textBox3.Text)
};
foreach(SqlParameterparmsinpar)
{cmd.Parameters.Add(parms);}
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("已经成功修改");
}
}
privatevoidbutton2_Click_1(objectsender,EventArgse)
{
显示修改后的数据库信息m=new显示修改后的数据库信息();
m.Show();
}
privatevoid显示修改后的数据库信息_Load(objectsender,EventArgse)
{
stringConStr="server=左-PC;Userid=u3;pwd=123;database=酒店客房数据库";
SqlConnectioncon=newSqlConnection(ConStr);
stringSqlStr="select*from操作用户2";
SqlDataAdapterada=newSqlDataAdapter(SqlStr,con);
DataSe
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 酒店客房 信息管理 系统 设计 实现