小型宾馆客房管理系统.docx

上传人:b****5 文档编号:3434344 上传时间:2022-11-23 格式:DOCX 页数:31 大小:389.96KB
下载 相关 举报
小型宾馆客房管理系统.docx_第1页
第1页 / 共31页
小型宾馆客房管理系统.docx_第2页
第2页 / 共31页
小型宾馆客房管理系统.docx_第3页
第3页 / 共31页
小型宾馆客房管理系统.docx_第4页
第4页 / 共31页
小型宾馆客房管理系统.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

小型宾馆客房管理系统.docx

《小型宾馆客房管理系统.docx》由会员分享,可在线阅读,更多相关《小型宾馆客房管理系统.docx(31页珍藏版)》请在冰豆网上搜索。

小型宾馆客房管理系统.docx

小型宾馆客房管理系统

沈阳航空航天大学

 

课程设计报告

 

课程设计名称:

软件综合课程设计

课程设计题目:

小型宾馆客房管理系统

 

院(系):

计算机学院

专业:

计算机科学与技术

班级:

学号:

姓名:

指导教师:

完成日期:

2013年1月11日

目录

第1章需求分析1

1.1选题背景1

1.2题目分析1

1.3系统应完成的功能1

1.4系统采用的工具2

第2章概要设计3

2.1数据库设计及其分析3

2.2数据表属性概要说明3

2.3功能模块图及其分析4

第3章详细设计5

3.1数据库详细设计5

3.2功能模块的详细设计6

3.2.1客房类型管理模块7

3.2.2客房信息管理模块8

3.2.3客房信息查询模块8

3.2.4客户信息查询模块9

3.2.5客户预订房模块9

3.2.6客户入住模块10

3.2.7客户退房模块10

3.3功能模块流程图11

第4章调试分析12

第5章用户手册13

参考文献15

附录(程序清单)16

第1章需求分析

1.1选题背景

酒店业是一个前景广阔而又竞争激烈的行业。

改革开放以来,我国的酒店业迅速发展,已经成为一个具有相当规模的产业。

由于我国的旅游业迅速发展,通过调查,我国在2020年将成为世界上第四大旅游国家;同时我国加入世界贸易组织,酒店业将完全开放,这个时候,我国的酒店业将面临着前所未有的机遇和挑战。

但是,现在甚至还有一些酒店还停留在由人工操作和管理阶段,这样已经无法适应当前的发展趋势。

因此,要想使酒店的工作质量和效率提高,采用先进的计算机网络通信技术改变酒店业务模式,实现酒店业务管理的自动化已经成为一种必然。

1.2题目分析

对酒店整个来说,对酒店经营状况起决定作用的是酒店的服务管理水平。

如何利用先进的管理手段来提高酒店的管理水平成为酒店业务发展的当务之急。

面对信息时代的机遇和挑战,利用科技手段提高酒店的管理无疑是一条行之有效的途径。

虽然计算机管理并不是酒店管理走向成功的关键元素,但它可以最大限度地发挥准确、快捷、高效等作用,对酒店的业务管理提供强有力的支持。

因此,采用全新的计算机网络和酒店业务管理系统,已成为提高酒店的管理效率,使作业人员与管理系统之间灵活互动,实现流畅的工作流衔接,帮助酒店有效地进行业务管理,释放最大价值。

酒店业务管理系统在达到在节省人力资源成本的同时,可以提高业务效率,并能够及时、准确、迅速地满足顾客服务的需求。

1.3系统应完成的功能

(1)能够具有方便的登记、结账功能,以及预订房的功能;

(2)能够快速、准确地了解宾馆内的客房状态,以便管理员抉择;

(3)提供多种手段查询客人的信息。

1.4系统采用的工具

(1)MicrosoftVisualStudio2005;

(2)MicrosoftSQLServe2005;

(3)开发所用语言:

C#;

(4)操作系统版本:

window7。

第2章概要设计

2.1数据库设计及其分析

根据系统需要可知该系统要包括以下四张表:

客房类型(类型名称,床位,面积,价格,是否有电视,是否有空调,是否有电话,是否有卫生间)

客房信息(客房ID,类型名称,客房楼层,额定床位,额定人数,实际人数,备注)

用户(客户ID,客户姓名,性别,籍贯)

入住信息(客户ID,客房ID,入住日期,结账日期,结账金额,备注)

(注:

加下划线的属性名表示该属性是该表的主键)

从上面的四张表中可知,该系统有三个实体,客房类型,客房信息和用户。

建立系统的主要工具是实体-联系图,即E-R图。

本系统中各实体关系的E-R图只有以下一个数据库E-R图。

图2.1数据库E-R图

E-R图中个实体的联系:

一间客房只可能是一种客房类型,当然一间客房允许多个客户同时入住,只要客房里的床位够用即可,然而,一种客房类型可包含多间客房,而且一个客户只能登记入住一间客房,就算要换房,也是先将该客户从原来的房间系统中注销,再在新的房间系统中登记入住,所以客房类型和客房信息属于一对多的关系,客房信息和用户也属于一对多的关系。

 

2.2功能模块图及其分析

一般的小型宾馆都包含以下几个功能:

客房类型管理功能,客房信息管理功能,客房查询功能,客户查询功能,客户入住功能,客户预订房功能,客户退房弄能,此次设计的管理系统,也包括这些功能。

系统功能模块图如图2.2所示:

图2.2系统功能模块图

 

第3章详细设计

3.1数据库详细设计

(1)客房类型表:

用于增加客房的类型。

该表的详细设计如表3.1所示:

表3.1客房类型表

属性名

字段类型

长度

是否为主键

字段值约束

类型名称

varchar

10

notnull

床位

Int

8

notnull

面积

varchar

20

notnull

价格

float

10

notnull

是否有电视

varchar

2

notnull

是否有空调

varchar

2

notnull

是否有电话

varchar

2

notnull

是否有卫生间

varchar

2

notnull

(2)客房信息表:

增加客房信息。

该表的详细设计如表3.2所示:

表3.2客房信息表

属性名

字段类型

长度

是否为主键

字段值约束

客房ID

int

10

notnull

类型名称

varchar

10

notnull

客房楼层

varchar

12

notnull

额定床位

Int

8

notnull

额定人数

Int

8

notnull

实际人数

Int

8

notnull

备注

varchar

100

notnull

 

(3)用户表:

描述用户信息的表。

该表的详细设计如表3.3所示:

表3.3用户表

属性名

字段类型

长度

是否为主键

字段值约束

客户ID

int

10

notnull

客户姓名

varchar

10

notnull

性别

varchar

2

notnull

籍贯

varchar

10

notnull

(4)入住信息表:

记录用户登记住房时录入的信息,以便管理员查询客户的住房信息。

该表的详细设计如表3.4所示:

表3.4入住信息表

属性名

字段类型

长度

是否为主键

字段值约束

客户ID

int

10

notnull

客房ID

int

10

notnull

入住日期

varchar

15

notnull

退房日期

varchar

15

notnull

结账金额

float

10

notnull

备注

varchar

100

notnull

3.2功能模块的详细设计

系统功能设计是使整个系统能基本实现客户订房、住房、退房等功能,能够添加客房类型以及相关信息,添加客房信息,而且能够查询客房信息和客户的信息。

本系统主要包括七大模块,客房类型管理模块,客房信息管理模块,客房信息查询模块,客户信息查询模块,客户预订房模块,客户入住模块,客户退房模块。

每个模块的功能如下:

(1)客房类型管理模块功能:

实现对客房类型的增加。

(2)客房信息管理模块功能:

实现对客房信息的增加。

(3)客房信息查询模块功能:

实现客房信息的查询,以及查询未满的房间和空房,以便管理员抉择。

(4)客户信息查询模块功能:

实现对入住客户的信息查询。

(5)客户预订房模块功能:

实现客户预订房功能。

(6)客户入住模块功能:

实现客户入住后,对客户登记的信息进行处理。

(7)客户退房模块功能:

实现客户要退房时,客户应付的金额,以及从该系统中删除该客户的信息。

 

3.2.1客房类型管理模块

该模块是为了实现增加客房类型的功能,同时里面涵盖了客房一些设施和配置,界面如图3.2.1所示:

图3.2.1客房类型界面

3.2.2客房信息管理模块

该模块是为了实现增加客房信息的功能,界面如图3.2.2所示:

图3.2.2客房信息界面

3.2.3客房信息查询模块

该模块是实现对客房信息的查询,可以通过关键字查询,如客房号、客房类型、客房楼层等,也可以查看空房和未满房间,界面如图3.2.3所示:

图3.2.3客房查询界面

3.2.4客户信息查询模块

该模块式实现对客户信息的查询,可以通过关键字客户号查询,也可以查询所有的客户信息,界面如图3.2.4所示:

图3.2.4客户查询界面

3.2.5客户预订房模块

该模块是实现客户的预订房功能,客户预订房所登记的信息只将其的客户信息插入用户表中,而部将信息插入入住信息表中,界面如图3.2.5所示:

图3.2.5客户预订登记界面

3.2.6客户入住模块

该模块是实现客户入住登记住房的功能,将登记输入的信息添加的对应的表中,界面如图3.2.6所示:

图3.2.6客户入住登记界面

3.2.7客户退房模块

该模块式实现客户退房功能,在客户退房时,应显示客户应付的金额,交款确定以后,应从入住信息表和用户表中删除该客户的信息,界面如图3.2.7所示:

图3.2.7客户退房界面

 

3.3功能模块流程图

重要功能程序框图如图3.3所示:

图3.3功能程序框图

第4章调试分析

在此次系统开发过程中,遇到了各式各样的错误,但经过与同学交流和上网查询资料之后反复调试最终才得以解决,下面我将此次系统开发遇到的一些典型问题和解决方法总结如下:

问题1:

数据库连接总是失败。

解决方法:

第一次连接数据库是总是提醒接连失败,这让我很恼火,通过向同学询问和请教,发现是连接数据库的语句中少写了一个头文件,但是之后还是有问题,我左看右看,发现原来是数据库的名字写错了,更正之后就好了。

问题2:

在做查询操作时,不知道怎样在窗口界面上显示查询的结果.

解决方法:

看到同学做的系统都能在界面上显示查询的结果,而我的不可以,于是我就向那些同学请教,他们说在界面下面差个listview控件,我加进去了,可是还不知道怎样将查询的结构添加到该控件中,他们继续教我,先将查询的结果用reader关键字读取到一个数组中,然后将该数组里面的元素依次在listview控件中显示出来,这样这个问题就很好地解决了。

问题3:

在客户退房时,输入客户的ID,也要求在界面上显示客户应付的金额和实际需要交付金额。

解决方法:

其实在解决掉问题2后,面对这个问题,我已经有思路,我能够显示客户应付金额,可是不能显示客户实际需要交付金额。

请教同学后得知,由于实际交付金额等于应付金额乘以折扣,所以在输出实际交付金额时要将应付金额和折扣用一个parse的关键字取得,这样就解决了这个问题。

第5章用户手册

第一步:

运行程序,进入系统主界面,选择相应的功能模块,如图5.1所示:

图5.1系统主界面

第二步:

在选择了功能的模块后,会进入相应的功能模块界面,每个功能模块界面上都有一些操作按钮,输入必要信息,选择你需要的操作。

例客户入住模块,进入该界面后,登记客户入住时的必要信息,然后点“确定”按钮,就会显示“添加成功”框,如图5.2所示:

图5.2客户入住模块界面

第三步:

选择是否退出系统,主界面上的“退出”按钮能退出整个系统,而每个模块界面上的“退出”按钮能够退出该界面,退出时会看到如图5.3所示的信息:

图5.3退出按钮的功能

参考文献

[1]张基温,陈佳.信息系统开发.北京:

清华大学出版社,2006

[2]卫红春.信息系统分析与设计.西安:

西安电子科技大学出版社,2003

[3]黄梯云.管理信息系统.北京:

高等教育出版社,2005

[4]方美琪,陈禹.软件开发工具.北京:

经济科学出版社,2008

[5]王珊,数据组织与管理.北京:

经济科学出版社,1996

[6]明日科技,张跃廷,韩阳,张宏宇.C#数据库系统开发案例精选.北京:

人民邮电出版社,2007

[7]薛化成管理.信息系统第三版.北京:

清华大学出版社,1999

[8]萨师煊,王珊.数据库系统概论第四版.北京:

高等教育出版社,2001

[9]王立福.软件工程第二版.北京:

北京大学出版社,2002

[10]程学先.数据库原理与技术.北京:

中国水利水电出版社,2001

附录(程序清单)

Program程序:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Windows.Forms;

namespacelrf

{

staticclassProgram

{

///

///应用程序的主入口点。

///

[STAThread]

staticvoidMain()

{

stringdataDir=AppDomain.CurrentDomain.BaseDirectory;

if(dataDir.EndsWith(@"\bin\Debug\")

||dataDir.EndsWith(@"\bin\Release\"))

{

dataDir=System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;

AppDomain.CurrentDomain.SetData("DataDirectory",dataDir);

}//

Application.EnableVisualStyles();

Application.SetCompatibleTextRenderingDefault(false);

Application.Run(newForm1());

}

}

}

客房类型管理模块程序:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

usingSystem.Data.SqlClient;

namespacelrf

{

publicpartialclassForm2:

Form

{

publicForm2()

{

InitializeComponent();

}

privatevoidbutton1_Click(objectsender,EventArgse)

{

Stringname=textBox1.Text;

Stringchuang=textBox2.Text;

Stringmian=textBox3.Text;

Stringqian=textBox4.Text;

Stringshi;

Stringtiao;

Stringhua;

Stringwei;

if(checkBox1.Checked==true)

{

shi="有";

}

else

{

shi="无";

}

if(checkBox2.Checked==true)

{

tiao="有";

}

else

{

tiao="无";

}

if(checkBox3.Checked==true)

{

hua="有";

}

else

{

hua="无";

}

if(checkBox4.Checked==true)

{

wei="有";

}

else

{

wei="无";

}

using(SqlConnectionconn=newSqlConnection(@"DataSource=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\lrf.mdf;integratedSecurity=True;UserInstance=True;"))

{

conn.Open();

using(SqlCommandcmd=conn.CreateCommand())

{

Stringsql="Insertintotype(客房类型,床位,面积,价格,是否有电视,是否有空调,是否有电话,是否有卫生间)values('"+name+"','"+chuang+"','"+mian+"','"+qian+"','"+shi+"','"+tiao+"','"+hua+"','"+wei+"')";

cmd.CommandText=sql;

cmd.ExecuteNonQuery();

MessageBox.Show("添加成功");

}

}

}

privatevoidbutton2_Click(objectsender,EventArgse)

{

this.Dispose();

}

}

}

客房信息管理模块程序:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

usingSystem.Data.SqlClient;

namespacelrf

{

publicpartialclassForm3:

Form

{

publicForm3()

{

InitializeComponent();

}

privatevoidbutton3_Click(objectsender,EventArgse)

{

this.Dispose();

}

privatevoidbutton2_Click(objectsender,EventArgse)

{

StringID=textBox1.Text;

Stringchuang=textBox2.Text;

Stringlei=textBox3.Text;

Stringlou=textBox4.Text;

Stringren=textBox5.Text;

Stringbei=textBox6.Text;

Stringshi=textBox7.Text;

using(SqlConnectionconn=newSqlConnection(@"DataSource=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\lrf.mdf;integratedSecurity=True;UserInstance=True;"))

{

conn.Open();

using(SqlCommandcmd=conn.CreateCommand())

{

Stringsql="Insertintoinformation(客房ID,客房楼层,客房类型,额定床位,额定人数,实际人数,备注)values('"+ID+"','"+lou+"','"+lei+"','"+chuang+"','"+ren+"','"+shi+"','"+bei+"')";

cmd.CommandText=sql;

cmd.ExecuteNonQuery();

MessageBox.Show("添加成功");

}

}

}

}

}

客房查询模块程序:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

usingSystem.Data.SqlClient;

namespacelrf

{

publicpartialclassForm4:

Form

{

publicForm4()

{

InitializeComponent();

}

privatevoidbutton5_Click(objectsender,EventArgse)

{

Form7f7=newForm7();

f7.ShowDialog();

}

privatevoidbutton4_Click(objectsender,EventArgse)

{

Form6f6=newForm6();

f6.ShowDialog();

}

privatevoidbutton6_Click(objectsender,EventArgse)

{

this.Dispose();

}

privatevoidbutton2_Click(objectsender,EventArgse)

{

Stringsql="select*frominformationwhere实际人数<额定人数";

SqlConnectionconn=newSqlConnection(@"DataSource=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\lrf.mdf;integratedSecurity=True;UserInstance=True;");

conn.Open();

SqlCommandcomm=newSqlCommand(sql,conn);

SqlDataReaderreader=comm.ExecuteReader();

while(reader.Read())

{

ListViewItemlistItem=newListViewItem(newString[]{reader[0].ToString(),reader[1].ToStrin

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1