宾馆客房管理系统课程设计报告含源文件 推荐.docx

上传人:b****8 文档编号:9960553 上传时间:2023-02-07 格式:DOCX 页数:36 大小:642.98KB
下载 相关 举报
宾馆客房管理系统课程设计报告含源文件 推荐.docx_第1页
第1页 / 共36页
宾馆客房管理系统课程设计报告含源文件 推荐.docx_第2页
第2页 / 共36页
宾馆客房管理系统课程设计报告含源文件 推荐.docx_第3页
第3页 / 共36页
宾馆客房管理系统课程设计报告含源文件 推荐.docx_第4页
第4页 / 共36页
宾馆客房管理系统课程设计报告含源文件 推荐.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

宾馆客房管理系统课程设计报告含源文件 推荐.docx

《宾馆客房管理系统课程设计报告含源文件 推荐.docx》由会员分享,可在线阅读,更多相关《宾馆客房管理系统课程设计报告含源文件 推荐.docx(36页珍藏版)》请在冰豆网上搜索。

宾馆客房管理系统课程设计报告含源文件 推荐.docx

宾馆客房管理系统课程设计报告含源文件推荐

数据库系统概论课程设计报告

 

题目:

宾馆客房管理系统

 

一、需求分析

1.需求描述

面对信息时代的机遇和挑战,采用全新的计算机网络和宾馆信息管理系统,已成为提高宾馆管理效率、改善服务水准的重要手段之一,在某种意义上,宾馆管理的信息化已成为现代化宾馆的重要标志。

客房管理是宾馆管理的核心任务,为此,我们结合目前客房管理的现状,经过充分的调研和综合分析,开发了宾馆客房信息管理系统。

经过综合分析,确定了该系统应该包括如下功能:

(1)客房标准管理:

提供有关客房标准的添加、修改、和删除。

(2)客房信息管理:

管理各个客房的具体信息,如类型、位置、状态等。

(3)客户信息管理:

入住宾馆的客人的具体信息的录入、保存等。

(4)查询功能:

包括客户信息查询、客房信息查询、住宿记录查询结算信息查询等。

(5)入住管理功能:

登记入住信息、分配房间等。

(6)预订管理功能:

登记预订客户、客房的信息以及浏览查询等。

(7)结算功能:

客户退房收款以及注销房间等。

2.数据字典

经过以上综合分析,设计出后台数据库的数据字典如下:

(一)数据项

1数据项:

客户号

含义说明:

唯一标识一个客户的身份

别名:

客户证件号

类型:

数字

长度:

10

取值范围:

1000—9999

2数据项:

姓名

含义说明:

客户称谓

别名:

个人代号

类型:

文本

长度:

50

3数据项:

客房标准

含义说明:

唯一标识某一客房标准

类型:

文本

长度:

10

4数据项:

额定人数

含义说明:

规定各个客房的可容纳人数

类型:

数字

长度:

4

取值范围:

1—10

5数据项:

价格

含义说明:

客户住宿一日所付费用

别名:

每日房租

类型:

货币型

长度:

8

取值范围:

10—1000

6数据项:

客房编号

含义说明:

唯一标识一个客房

别名:

门牌号

类型:

数字

长度:

4

取值范围:

101—9999

7数据项:

入住日期

含义说明:

客户入住宾馆的时间

类型:

日期型

长度:

8

取值范围:

2000-1-1—2999-12-31

8数据项:

结算日期

含义说明:

客户退房结帐时的时间

类型:

日期型

长度:

8

取值范围:

2000-1-1—2999-12-31

9数据项:

预订入住日期

含义说明:

客户订房时约定入住的日期

类型:

日期型

长度:

8

取值范围:

2000-1-1—2999-12-31

10数据项:

预订天数

含义说明:

预订将要在宾馆住宿的时间长度

类型:

数字型

长度:

4

取值范围:

1—1000

11数据项:

预缴押金

含义说明:

客户订房时交纳的现金金额

类型:

货币型

长度:

8

取值范围:

10—10000

(二)数据流

1数据流:

客户需求

说明:

客户根据自身的需要而向前台提出的客房需求

数据流来源:

客户

数据流去向:

客房查询系统

组成:

价格、位置、客房配套设施等

平均流量:

待定

高峰期:

待定

2数据流:

查询结果

说明:

输入查询条件后输出的结果

数据流来源:

查询系统

数据流去向:

客户

组成:

客房编号、类型、价格、位置、客房配套设施等

平均流量:

待定

高峰期:

待定

3数据流:

客户选择

说明:

客户根据查询结果所作出的选择、决定

数据流来源:

客户

数据流去向:

入住或预订登记系统

组成:

类型、客房编号等

平均流量:

待定

高峰期:

待定

4数据流:

客户信息与入住信息

说明:

前台将客户及其入住信息录入系统

数据流来源:

登记模块

数据流去向:

入住记录、预订记录

组成:

客房编号、客户号等

平均流量:

待定

高峰期:

待定

5数据流:

客户需求

说明:

客户根据自身的需要而向前台提出的客房需求

数据流来源:

客户

数据流去向:

客房查询系统

组成:

价格、位置、客房配套设施等

平均流量:

待定

高峰期:

待定

6数据流:

客户入住信息

说明:

结算时系统提供给客户的具体的入住信息,如价格、入住时间、消费金额等

数据流来源:

结算系统

数据流去向:

客户

组成:

价格、入住时间、消费金额等

平均流量:

待定

高峰期:

待定

7数据流:

存档信息

说明:

客户结算时的结算日期、金额

数据流来源:

结算系统

数据流去向:

客户入住记录

组成:

结算日期、金额

平均流量:

待定

高峰期:

待定

(三)数据存储

1数据存储:

客户信息

说明:

记录客户的基本信息,如客户号、姓名、性别、籍贯等

输入数据流:

输出数据流:

数据量:

存取方式:

随机存取

2数据存储:

客房标准

说明:

记录各种类型客房的设施配置等信息

输入数据流:

输出数据流:

数据量:

存取方式:

顺序存取

3数据存储:

客房信息

说明:

记录客房的基本信息,所属类型、客房编号、价格、客房状态等

输入数据流:

输出数据流:

数据量:

存取方式:

顺序存取

4数据存储:

系统用户

说明:

记录用户使用系统的用户名、密码

输入数据流:

输出数据流:

数据量:

存取方式:

随机存取

5数据存储:

入住记录

说明:

记录客户入住的基本信息,如入住日期、预订客房编号等

输入数据流:

输出数据流:

数据量:

存取方式:

随机存取

6数据存储:

预订记录

说明:

记录客户预订的基本信息,如预订入住日期、预订客房编号、预订天数等

输入数据流:

输出数据流:

数据量:

存取方式:

随机存取

(四)处理过程

1处理过程:

查询

说明:

根据客户的需求和客户提供的信息,输入到查询系统中去,系统自动检索出与输入相匹配的记录输出到用户界面。

输入:

查询条件

输出:

与查询条件相匹配的的记录

处理:

在系统存储的信息中检索符合要求的信息记录并输出

2处理过程:

登记

说明:

客户入住或预订时提供个人信息以及入住或预订信息,记录到响应的存储中

输入:

客户信息、客房选择等

输出:

客户入住记录

处理:

将客户的个人信息记录到客户信息表中,将入住(预订)信息记录到入住(预订)记录中

3处理过程:

结算

说明:

根据客户提供的信息为客户办理退房手序并注销房间

输入:

客户证件号或姓名

输出:

客户入住的具体信息以及结算信息

处理:

在系统存储的信息中检索出该客户的入住信息进行,结算后将该信息存档

4处理过程:

系统管理

说明:

用户的注册、登陆、修改密码以及对用户进行管理

输入:

用户名

输出:

用户的信息

处理:

在系统用户表中存储、修改、删除用户的信息,维护系统的可用性、安全性等

3.系统功能模块设计

根据以上对系统的功能需求的分析,将系统的功能划分为七大模块:

(一)住宿管理:

是客房管理系统的核心部分,它的主要功能是存储订房信息,包括登记姓名,证件号,客房标准,押金,入住时间等,这些直接关系到后面的结算信息管理。

(二)客房管理:

包括客房的编号,类型,面积,最多可住人数,价格,是否有电视等问题。

当添加新的客房时,就添加相应的标准信息,也可以查看客房的标准信息,同时可以进行修改。

(三)挂帐管理:

主要是处理客户的挂帐操作。

(四)查询统计:

主要是为客户和操作员提供客房信息查询、客房标准查询、客户信息查询入住情况查询等等。

(五)日结:

结合订房信息自动化结帐,并存储结算信息。

结算完毕,就可以退房。

(六)系统设置:

主要是管理员添加用户、用户权限设置、以及用户密码的修改等等。

(七)退出系统:

关闭并退出系统。

系统的功能模块图如下:

 

二、概念结构设计

通过以上对数据字典的设计,总结出以下几个数据库实体,其E-R图如下:

系统综合E-R图:

 

 

1.客户实体图:

 

 

2.客房信息实体图

 

3.客房标准实体图:

 

 

4.预订信息

 

5.入住信息:

 

 

6.结算:

 

7.数据流图:

 

三、逻辑结构设计

客房标准(客房类型,客房面积,额定人数,是否有电视,是否有空调,是否有电话,是否有网络,是否有卫生间,价格)

RoomStandard(Type,Area,PeopleNum,TV,AirCondition,Telephone,

Internet,WC,Price)

客房信息(客房编号客房类型客房状态)

RoomInformation(RID,Type,Price,Status)

客户信息(客户号姓名性别住址联系电话)

ClientInfo(CID,CName,Sex,Place,telephone)

预订信息(客户号客房编号登记类型预订日期入住人数入住日期用餐标准押金)

OrderInfo(RID,OrderDay,OrderAcount,StartDay,Dinner,Deposit)

入住信息(客户号客房编号入住日期入住时间入住人数)

LiveInfo(CIDRIDStartDayStartTimeOrderAcount)

结算信息(客户号客房编号价格餐费退房日期退房时间入住天数折扣金额)

CheckInfo(CID,RID,Price,Dinner,EndDay,EndTime,Day,Repay,Money)

系统用户(用户名密码,用户权限)

UserInfo(Name,Pwd,Level)

四、物理结构设计

1.实施环境:

本系统是基于SQLServer2000数据库开发的一套管理系统,所以它的运行前提是要求该系统所运行的环境必须装有SQLServer2000。

本系统可以在装有Windows98/2000/XP/NT的操作系统下运行。

2.开发工具:

VC6.0+SQLServer2000

五、数据库实施和维护

(一)创建数据库:

打开SQLServerEnterpriseManger,“新建数据库”,创建一个空数据库,命名为myhotel。

(二)在myhotel中创建六张表,包括

(1)客房标准表;

(2)客房信息表;(3)客户信息表;(4)预订信息表;(5)入住信息表;(6)结算信息表;(7)系统用户信息表。

(1)客房标准(客房类型,客房面积,额定人数,是否有电视,是否有空调,是否有电话,是否有网络,是否有卫生间,价格)

RoomStandard(Type,Area,PeopleNum,TV,AirCondition,Telephone,

Internet,WC,Price)

CREATETABLERoomStandard

(TypeCHAR(10)PRIMARYKEY,

AreaINT,

PeopleNumINT,

TVCHAR(10),

TelephoneCHAR(10),

AirConditionCHAR(10),

InternetCHAR(10),

WCCHAR(10),

PriceMONEY)

 

(2)客房信息(客房编号客房类型,客房状态)

RoomInformation(RID,Type,Price,Status)

CREATETABLERoomInformation

(RIDINTPRIMARYKEY,

TypeCHAR(10),

StatusCHAR(10),

FOREIGNKEY(Type)REFERENCESRoomStandard(Type))

(3)客户信息(客户号姓名性别住址联系电话)

ClientInfo(CID,CName,Sex,Place)

CREATETABLEClientInfo

(CIDINTPRIMARYKEY,

CNameCHAR(10),

SexCHAR(10),

PlaceCHAR(10),

TelephoneCHAR(20))

(4)预订信息(客户号客房编号登记类型预订日期入住人数入住日期用餐标准押金)

OrderInfo(CID,RID,OrderDay,OrderAcount,StartDay,StartTime,Dinner,Deposit)

CREATETABLEOrderInfo

(CIDINTNOTNULL,

RIDINTNOTNULL,

OrderDayINT,

OrderAcountINT,

StartDayINT,

StartTimeDATETIME,

DinnerCHAR(10),

DepositINT,

PRIMARYKEY(CID,RID),

FOREIGNKEY(RID)REFERENCESRoomInformation(RID))

(5)入住信息(客户号客房编号入住日期入住时间入住人数)

LiveInfo(CIDRIDStartDayStartTimeOrderAcount)

CREATETABLELiveInfo

(CIDINTNOTNULL,

RIDINTNOTNULL,

StartDayINT,

StartTimeDATETIME,

OrderAcountINT,

PRIMARYKEY(CID,RID),

FOREIGNKEY(RID)REFERENCESRoomInformation(RID))

(6)结算信息(客户号客房编号价格餐费退房日期退房时间入住天数折扣金额)

CheckInfo(CID,RID,Price,Dinner,EndDay,EndTime,Day,Repay,Money)

CREATETABLECheckInfo

(CIDINTNOTNULL,

RIDINTNOTNULL,

EndDayINT,

EndTimeDATETIME,

DayINT,

RepayINT,

MoneyINT,

PRIMARYKEY(CID,RID),

FOREIGNKEY(CID)REFERENCESClientInfo(CID),

FOREIGNKEY(RID)REFERENCESRoomInformation(RID))

(6)系统用户(用户名密码,用户权限)

UserInfo(Name,Pwd,Level)

CREATETABLEUserInfo

(NameCHAR(10)PRIMARYKEY,

PwdCHAR(10),

LevelCHAR(10))

(三)建立查询

1客房详细信息_cx

SELECT客房信息.客房编号,客房信息.类型,客房标准.价格,客房标准.额定床位,客房标准.额定人数,客房标准.是否有电视,客房标准.是否有电话,客房标准.是否有空调,客房标准.是否有卫生间

FROM客房标准LEFTJOIN客房信息ON客房标准.类型=客房信息.类型;

2在住记录_cx1

SELECT入住记录.客户号,客户信息.姓名,入住记录.客房编号,客户信息.性别,入住记录.入住日期

FROM客户信息LEFTJOIN入住记录ON客户信息.客户号=入住记录.客户号

WHERE(((入住记录.备注)="未退房"))

ORDERBY入住记录.客户号;

3在住记录_cx2

SELECT在住记录_cx1.客户号,在住记录_cx1.姓名,在住记录_cx1.性别,在住记录_cx1.客房编号,客房信息.类型,在住记录_cx1.入住日期

FROM在住记录_cx1INNERJOIN客房信息ON在住记录_cx1.客房编号=客房信息.客房编号

ORDERBY在住记录_cx1.入住日期;

4在住记录_cx3

SELECT在住记录_cx2.客户号,在住记录_cx2.姓名,在住记录_cx2.性别,在住记录_cx2.客房编号,在住记录_cx2.类型,客房标准.价格,客房标准.额定床位,客房标准.额定人数,在住记录_cx2.入住日期

FROM客房标准INNERJOIN在住记录_cx2ON客房标准.类型=在住记录_cx2.类型

ORDERBY在住记录_cx2.入住日期;

5历史记录_cx1

SELECT客户信息.客户号,客户信息.姓名,入住记录.客房编号,入住记录.入住日期,入住记录.结算日期,[结算日期]-[入住日期]AS入住天数,入住记录.备注

FROM客户信息LEFTJOIN入住记录ON客户信息.客户号=入住记录.客户号

WHERE(((入住记录.备注)="已退房"))

ORDERBY入住记录.结算日期;

6历史记录_cx2

SELECT历史记录_cx1.客户号,历史记录_cx1.姓名,历史记录_cx1.客房编号,客房信息.类型,历史记录_cx1.入住日期,历史记录_cx1.结算日期,历史记录_cx1.入住天数

FROM历史记录_cx1INNERJOIN客房信息ON历史记录_cx1.客房编号=客房信息.客房编号

ORDERBY历史记录_cx1.结算日期;

7历史记录_cx3

SELECT历史记录_cx2.客户号,历史记录_cx2.姓名,历史记录_cx2.客房编号,历史记录_cx2.类型,客房标准.价格,历史记录_cx2.入住日期,历史记录_cx2.结算日期,历史记录_cx2.入住天数,[价格]*[入住天数]AS结算金额

FROM客房标准INNERJOIN历史记录_cx2ON客房标准.类型=历史记录_cx2.类型

ORDERBY历史记录_cx2.结算日期;

8预订信息_cx1

SELECT客户信息.客户号,客户信息.客户号,客户信息.姓名,客户信息.性别,预订记录.客房编号,预订记录.预订日期,预订记录.预订入住日期,预订记录.预订天数

FROM客户信息LEFTJOIN预订记录ON客户信息.客户号=预订记录.客户号

WHERE(((客户信息.客户号)=[预订记录].[客户号]))

ORDERBY预订记录.预订日期;

9预订信息_cx2

SELECT预订信息_cx1.客户号,预订信息_cx1.姓名,预订信息_cx1.性别,预订信息_cx1.客房编号,客房信息.类型,预订信息_cx1.预订日期,预订信息_cx1.预订入住日期,预订信息_cx1.预订天数

FROM客房信息INNERJOIN预订信息_cx1ON客房信息.客房编号=预订信息_cx1.客房编号

ORDERBY预订信息_cx1.预订日期;

10预订信息_cx3

SELECT预订信息_cx2.客户号,预订信息_cx2.姓名,预订信息_cx2.性别,预订信息_cx2.客房编号,预订信息_cx2.类型,客房标准.价格,客房标准.额定床位,客房标准.额定人数,预订信息_cx2.预订日期,预订信息_cx2.预订入住日期,预订信息_cx2.预订天数,[价格]*[预订天数]AS预缴押金

FROM客房标准INNERJOIN预订信息_cx2ON客房标准.类型=预订信息_cx2.类型

ORDERBY预订信息_cx2.预订日期;

11客房在住人数统计_cx

SELECT在住记录_cx3.客房编号,在住记录_cx3.类型,Count(在住记录_cx3.客房编号)AS在住人数,在住记录_cx3.额定人数

FROM在住记录_cx3

GROUPBY在住记录_cx3.客房编号,在住记录_cx3.类型,在住记录_cx3.额定人数;

12客满房间_cx

SELECT客房在住人数统计_cx.客房编号,客房在住人数统计_cx.类型,客房在住人数统计_cx.在住人数,客房在住人数统计_cx.额定人数

FROM客房在住人数统计_cx

WHERE(((客房在住人数统计_cx.类型)<>"双人间")AND((客房在住人数统计_cx.在住人数)>0))OR(((客房在住人数统计_cx.类型)="双人间")AND((客房在住人数统计_cx.在住人数)=2))OR(((客房在住人数统计_cx.类型)="三人间")AND((客房在住人数统计_cx.在住人数)=3));

13未满房间_cx

SELECT客房编号,类型

FROM客房信息

WHERE客房编号notin(select客房编号from客满房间_cx);

14空房_cx

SELECT客房信息.客房编号,客房信息.类型,客房标准.额定人数

FROM客房标准INNERJOIN客房信息ON客房标准.类型=客房信息.类型

WHERE(((客房信息.客房编号)NotIn(select客房编号from入住记录where备注="未退房")));

15未满非空房间_cx1

SELECT客房信息.客房编号,客房信息.类型

FROM未满房间_cx

WHERE(((客房信息.客房编号)NotIn(select客房编号from空房_cx)));

16未满非空房间_cx2

SELECT未满非空房间_cx1.客房编号,未满非空房间_cx1.类型,客房在住人数统计_cx.在住人数,客房在住人数统计_cx.额定人数

FROM客房在住人数统计_cxINNERJOIN未满非空房间_cx1ON客房在住人数统计_cx.客房编号=未满非空房间_cx1.客房编号;

六、数据库的操作界面

(1)登陆窗体的创建和设计

根据用户的不同,分配不同的权限。

 

(2)主窗体的创建和设计

(3)挂账查询

主要实现代码如下:

#if!

defined(AFX_FINDGUAZHANGDLG_H__ED6B3DCD_4A66_4FC3_9CD6_94882B283343__INCLUDED_)

#defineAFX_FINDGUAZHANGDLG_H__ED6B3DCD_4A66_4FC3_9CD6_94882B283343__INCLUDED_

#if_MSC_VER>1000

#pragmaonce

#endif//_MSC_VER>1000

//Findguazhangdlg.h:

headerfile

//

/////////////////////////////////////////////////////////////////////////////

//CFindguazhangdlgdialog

classCFindguazhangdlg:

publicCDialog

{

//Construction

public:

CFindguazhangdlg(CWnd*pParent=NULL);//standardconstructor

//定义ADO连接、命令、记录集变量指针

_Co

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

当前位置:首页 > 农林牧渔 > 林学

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

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