酒店管理系统数据库课程设计文档格式.docx
- 文档编号:22864113
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:24
- 大小:64.89KB
酒店管理系统数据库课程设计文档格式.docx
《酒店管理系统数据库课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《酒店管理系统数据库课程设计文档格式.docx(24页珍藏版)》请在冰豆网上搜索。
(含所有实现的模块的功能)
一、前台操作
✧开房登记:
(1)输入房号查询房状态
(2)输入房状态查询房号(3)输入房号把房间状态改成入住(4)输入顾客信息(5)输入订单信息(6)输入开房信息
✧退房结账:
(1)输入房号把房间状态改成空闲
(2)退房结账时输入订单号,输出应结账金额并自动把订单中的“结账离开日期”改为当前日期
✧房状态查看:
输入房号查询房信息
二、预订管理
✧预订房间:
(1)输入房号查询房状态
(2)输入房号把房间状态改成预订(3)输入顾客信息输入订单信息(4)输入订房信息
✧预订入住:
(1)输入订单编号,查询此订单的信息
(2)输入房号把房间状态改成入住(3)输入订单信息
✧解除预订:
(1)删除订房信息
(2)输入订单编号,删除客人信息、订单对应的房号、订单信息并把对应的房间状态改成空闲
三、信息查询
✧在住客人列表查询
✧预订客人列表查询
✧历史客人列表查询
四、报表统计
✧开房记录统计
✧退房结账统计
✧预订房间统计
二、本组设计的主要特色
在设计过程中,经过充分的考虑,我们设计了前台操作、预订管理、信息查询、报表统计功能,他们使得开放服务更加完善方便。
(1)在前台操作中通过简单的输入就可以查询房信息和客人信息。
(2)在预订管理中可以方便的处理房间预订方面的服务,使房间预订更加方便,不至于产生预订冲突。
(3)在信息查询方面,可以方便的查询客人的各种信息,服务全面。
(4)在报表统计方面,把各种记录统计起来,使酒店的管理更加完善,有利于档案储存管理。
总之,该设计大大的节约了人力物力,提高了酒店服务效率,不仅有利于增强整体收入,还可以给顾客以愉悦感,为酒店打出良好的名声。
三、系统分析与设计
根据问题描述和要求,完成:
●系统总体设计--确定程序功能模块;
●系统详细设计--在总体设计基础上设计系统总体框架、数据结构(类)、关键算法的流程;
●最后编制源程序。
1.系统功能模块划分及说明
2.总体框架,数据文件等
3.系统关键算法流程图
4.源程序关键性代码
一、程序功能模块
二、系统详细设计
2.1系统总体框架
(1)需求分析
1、系统主要业务分析
1.1前台操作:
<
1>
开房登记:
客人把自身信息和要入住的房号告诉酒店操作员,酒店操作员可以帮用户登记入住信息;
2>
退房登记:
客人要是想查询房间的状态——是否已入住、是否已预订、是否是空闲——时,由酒店操作员帮忙查询;
3>
房状态查看:
客人要退房的时候付清住宿费,酒店操作员便帮客人把在住记录改成历史记录。
1.2预定管理:
预定房间:
客人把自身信息和想预订的房间号给酒店操作员,酒店操作员便帮客人预订这间房间,之后其他人在此房间被取消预定前无法入住或预定;
预定入住:
客人把自身信息和预定的房间号告诉酒店操作员,酒店操作员调出预定记录核对后在客户出示身份证件后便允许他登记入住此房间;
解除预定:
客人把自身信息和预定了的房号告诉酒店操作员,酒店操作员便帮客户取消预订。
1.3信息查询:
在住客人列表查询:
显示现在在住的客人信息
预订客人列表查询:
显示预定了房间的客人信息
历史客人列表查询:
显示所有曾经在该酒店定房或入住的顾客信息
1.4报表统计:
开房记录统计:
显示现在有多少已经开房入住的客人
退房结账统计:
显示现在有多少客人已经退房结账
预订房间统计:
显示现在有多少客人预定了房间
2、系统功能需求分析
图1
图2
数据流图---前台操作
数据流图---预定管理
数据流图—信息查询
数据流图----报表统计
(2)数据库概念结构设计
由客人信息的数据项可以得到其相应的实体属性图
证件类型的数据项有:
证件类型号、证件类型名。
由证件类型的数据项可以得到其相应的实体属性图
房间信息的数据项有:
房号、房类型号、价格、押金、房状态。
由房间信息的数据项可以得到其相应的实体属性图
房类型的数据项有:
房类型号、房类型名、房间平米。
由房类型的数据项可以得到其相应的实体属性图
由订单的数据项可以得到其相应的实体属性图
由上述各实体及其属性可以得到实体间的关系图即ER图
E—R图
(3)数据库逻辑结构设计
数据库的关系模型根据数据模型来确定,即将关系模型转化为SQL-Server数据库系统所支持的实际数据模型,得到数据库的逻辑结构。
在数据库的关系模型及系统处理过程中的数据的结构的基础上,获得系统数据库表以及表之间的关系。
在本系统中,以下是系统中几个主要的数据依赖和数据库表结构。
关系名
主要函数依赖
客人信息
BCNF
证件号码—→(姓名,性别,证件类型号,联系电话)
证件类型
BCNF
证件类型号—→(证件类型名)
房间信息
房号—→(房类型号,价格,押金,房状态)
房类型
房类型号—→(房类型名,房间平米)
订单
订单编号—→(客人证件号,预计入住日期,预计离开日期,入住日期,结账离开日期,应付金额)
开房
(订单编号,房号)—→()
订单表
编号
字段名
字段类型
备注说明
字段约束
1
order_id
char(10)
订单编号
主键
2
cust_id
char(20)
客人证件号
外键
3
plan_enter_date
datetime
预计入住日期
4
plan_leave_date
预计离开日期
5
enter_date
入住日期
6
leave_date
结账离开日期
7
order_money
int
应付金额
客人信息表
证件号码
ptype_id
证件类型号
cust_name
姓名
sex
char
(1)
性别
phone
联系电话
房间信息表
room_id
房号
rtype_id
房类型号
rprice
价格
rdeposit
押金
rstate
房状态
证件信息表
ptype_name
证件类型名
rtype_name
房类型名
rarea
numeric(5,2)
房间平米
开房表
三、编制源程序
3.1在数据库中创建表的语句
创建房类型表:
createtableroom_type(
rtype_idchar(10)primarykey,
rtype_namechar(10),
rareanumeric(5,2)
);
创建房间信息表:
createtableroom(
room_idchar(10)primarykey,
rtype_idchar(10),
rpriceint,
rdepositint,
rstatechar(10),
foreignkey(rtype_id)referencesroom_type(rtype_id)
创建证件类型表:
createtablepaper_type(
ptype_idchar(10)primarykey,
ptype_namechar(10)
创建客人信息表:
createtablecustomer(
cust_idchar(20)primarykey,
ptype_idchar(10),
cust_namechar(10),
sexchar
(1),
phonechar(10),
foreignkey(ptype_id)referencespaper_type(ptype_id)
创建订单表:
createtableorder_log(
order_idchar(10)primarykey,
cust_idchar(20),
plan_enter_datedatetime,
plan_leave_datedatetime,
enter_datedatetime,
leave_datedatetime,
order_moneyint,
foreignkey(cust_id)referencescustomer(cust_id)
创建订房表:
createtablebook_room(
order_idchar(10),
room_idchar(10),
foreignkey(order_id)referencesorder_log(order_id),
foreignkey(room_id)referencesroom(room_id)
3.2酒店客房管理系统功能设计(存储过程与触发器)
3.2.1前台操作功能设计
(1)开房登记操作
--输入房号查询房状态
createprocedurepro_rstate@room_idchar(10)as
selectroom_id房号,rstate房状态fromroom
whereroom_id=@room_id
--运行
execpro_rstate101
--输入房状态查询房号
createprocedurepro_rstate1@rstatechar(10)as
selectroom_id房号,rtype_name房类型名,rarea房间平米,rprice价格,rdeposit押金
fromroom,room_type
whereroom.rtype_id=room_type.rtype_idandrstate=@rstate;
execpro_rstate1空闲
--输入房号把房间状态改成入住
createprocedurepro_change_rstate_into_live@room_idchar(10)as
updateroom
setrstate='
入住'
selectroom_id房号,rstate房状态fromroomwhereroom_id=@room_id
execpro_change_rstate_into_live101
--输入顾客信息(证件号码,证件类型号,姓名,性别,联系电话)
createprocedurepro_insert_cust@cust_idchar(20),@ptype_idchar(10),@cust_namechar(10),
@sexchar
(1),@phonechar(10)as
insertintocustomervalues(@cust_id,@ptype_id,@cust_name,@sex,@phone);
selectcust_id证件号码,ptype_id证件号类型,cust_name姓名,sex性别,phone联系电话
fromcustomer
execpro_ins1'
'
李昂'
--输入订单信息(订单编号,客人证件号,入住日期,预计离开日期)
createprocedurepro_insert_order@order_idchar(10),@cust_idchar(20),@enter_datedatetime,
@plan_leave_datedatetimeas
insertintoorder_log(order_id,cust_id,enter_date,plan_leave_date)
values(@order_id,@cust_id,@enter_date,@plan_leave_date);
selectorder_id订单编号,cust_id客人证件号,plan_enter_date预计入住日期,enter_date入住日期,
plan_leave_date预计离开日期,leave_date结账离开日期,order_money应付金额fromorder_log
execpro_insert_order'
032013-7-1'
2013-7-10'
--输入开房信息(订单号,房号)
createprocedurepro_insert_book_room@order_idchar(10),@room_idchar(10)as
insertintobook_roomvalues(@order_id,@room_id);
selectorder_id订单编号,room_id房号frombook_room
whereorder_id=@order_id
execpro_insert_book_room'
03'
101'
(2)退房结账
--输入房号把房间状态改成空闲
createprocedurepro_change_rstate_into_free@room_idchar(10)as
空闲'
whereroom_id=@room_id;
execpro_change_rstate_into_free'
--退房结账时输入订单号,输出应结账金额并自动把订单中的“结账离开日期”改为当前日期
createprocedurepro_quit_getmoney@order_idchar(10)as
begin
declare@enter_datedatetime,@order_moneyint,@sumint
declaregetCurcursorfor
selectenter_date,order_money
fromorder_log
whereorder_id=@order_id;
opengetCur
fetchgetCurinto@enter_date,@order_money
begin
updateorder_log
setleave_date=getdate()
select@sum=(day(getdate())-day(@enter_date))*@order_money;
end
closegetCur
deallocategetCur
end
execpro_quit_getmoney'
01'
(3)房状态查看
--输入房号查询房信息
createprocedurepro_room_info@room_idchar(10)as
selectroom_id房号,rtype_id房类型号,rprice价格,rdeposit押金,rstate房状态
fromroom
execpro_room_info'
3.2.2预订管理功能设计
(1)预定房间
createprocedurepro_rstate12@room_idchar(10)as
execpro_rstate'
--输入房号把房间状态改成预订
createprocedurepro_change_rstate_into_subscribe@room_idchar(10)as
预订'
execpro_change_rstate_into_subscribe101
createprocedurepro_insert_cust12@cust_idchar(20),@ptype_idchar(10),@cust_namechar(10),
@sexchar
(1),@phonechar(10)as
王小'
--输入订单信息(订单编号,客人证件号,预计入住日期)进行预订
createprocedurepro_subscribe@order_idchar(10),@cust_idchar(20),@plan_enter_datedatetimeas
insertintoorder_log(order_id,cust_id,plan_enter_date)
values(@order_id,@cust_id,@plan_enter_date);
plan_leave_date预计离开日期,leave_date结账离开日期,order_money应付金额
fromorder_log
whereorder_id=@order_id;
execpro_subscribe'
2013-6-29'
--输入订房信息(订单号,房号)
createprocedurepro_insert_book_room1@order_idchar(10),@room_idchar(10)as
02'
102'
(2)预定入住
--输入订单编号,查询此订单的信息(看是否为已预订)
createprocedurepro_subscribe_to_enter@order_idchar(10)as
ifexists(select*fromorder_logwhereorder_id=@order_id)
print'
已预订'
else
未预定'
execpro_subscribe_to_enter101
createprocedurepro_change_rstate_into_live1@room_idchar(10)as
updateroom
--输入订单信息(订单编号,预计离开日期,入住日期,应付金额)
createprocedurepro_subscribe_to_live@order_idchar(10),@plan_leave_datedatetim
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 酒店 管理 系统 数据库 课程设计