管理信息系统设计开发酒店管理系统.docx
《管理信息系统设计开发酒店管理系统.docx》由会员分享,可在线阅读,更多相关《管理信息系统设计开发酒店管理系统.docx(24页珍藏版)》请在冰点文库上搜索。
管理信息系统设计开发酒店管理系统
辽宁工业大学
《管理信息系统设计专题》报告
题目:
开发酒店管理系统
院(系):
软件学院
专业班级:
电子商务081
学号:
学生姓名:
指导教师:
王凤英
教师职称:
助教
起止时间:
2010.05.30-2010.06.11
设计任务及评语
院(系):
软件学院教研室:
软件教研室
学号
学生姓名
专业班级
设计题目
开发酒店管理系统
设计任务
要求根据管理信息系统及数据库设计原理,按照系统设计的步骤和规范,完成各阶段的设计内容。
需求分析具体实际,数据流图、数据字典、关系模型要规范。
在sqlserver2000上实现数据库的模型建立(数据库、表的建立、完整性约束的实现、关系图、必要的存储过程及触发器的编程),并用VB实现简单的应用程序。
设计过程中,要严格遵守设计的时间安排,听从指导教师的指导。
正确地完成上述内容,规范完整地撰写出设计报告。
指导教师评语及成绩
成绩:
指导教师签字:
2010年6月13日
第1章课程设计目的与要求
1.1设计目的
(1)、掌握运用管理系统及数据库原理知识进行系统分析和设计的方法;
(2)掌握关系数据库的设计方法;(3)掌握SQLServer2000技术应用;(4)掌握简单的数据库应用程序编写方法;(5)理解C/S模式结构。
1.2设计环境
硬件要求能运行Windows9.X操作系统的微机系统。
SQLServer2000数据库应用系统开发技术及相应的集成开发环境,SQLServer2000数据库应用系统开发工具和VisualBasic6.0程序设计开发工具。
1.3主要参考资料
1.《管理信息系统》黄梯云高等教育出版社
2.《数据库系统概论》萨师煊高等教育出版社
3.《SQLServer2000数据库应用系统开发技术》朱如龙编,机械工业出版社。
4.《SQLServer2000数据库应用系统开发技术实验指导》朱如龙编,机械工业出版社
1.4设计内容及要求
一、内容
1.要求根据管理信息系统及数据库设计原理,按照数据库系统设计的步骤和规范,完成各阶段的设计内容。
2.需求分析具体实际,数据流图、数据字典、关系模型要正确规范
3.在sqlserver2000上实现设计的数据库模型。
4.对应用程序进行概要设计。
5.用VB实现简单的应用程序编写。
二、要求
设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导。
正确地完成上述内容,规范完整地撰写出课程设计报告。
第2章课程设计内容
2.1数据库设计
包括数据库需求分析,数据库概念结构设计,数据库逻辑结构设计等。
2.1.1需求分析
客房信息管理系统主要实现酒店客房的租借管理功能,将客户信息和客房情况统一归入到数据库系统,可以实现对酒店客房的有效监控。
为租借管理提供了方便的管理窗口,同时有利于寻找客户或者协助治安管理。
客房管理信息系统可分为两大块:
数据库的后台管理和前台旅客住宿情况的管理。
后台管理包括以下部分:
(1)客房信息的输入:
包括每间客房的大小级别,地理位置,预定租金等信息的输入。
(2)客房信息查询:
用于及时掌控客房情况,并且协助作出决策。
(3)前台操作员管理:
用于设置前台操作员的密码和基本信息。
前台管理包括以下部分:
(1)客房的预定:
处理各类客户的预定请求。
预定可以通过各种方式进行,如电话,E-mail和传真等。
前台需要根据当前客房情况,及时反馈给客户预定结果。
(2)入住登记:
当客户实际入住时,需要及时登录客户信息,以便今后的查询。
(3)客房查询:
可以根据各种信息,查询客房是否入住以及入住的情况。
2.1.2概念设计
酒店管理系统基于计算机网络技术,采用多层结构,将多种不同类型的软件工具用统一的用户界面集成为一个大系统,在一个网络上实现全方位电脑化管理。
酒店管理系统按标准化业务程序流式设计,采用先进的数据库系统和开发工具,开发采用C/S结构,通常采用的方法是实体E-R-关系图进行设计,它能将用户的数据要求明确地表达出来。
针对系统的需求,设计出具体E-R图如下:
图2.1
客户信息E-R图:
图2.2
操作员信息E-R图:
图2.3
客房信息E-R图:
图2.4
工作单信息E-R图:
图2.5
2.1.3逻辑设计
根据系统功能设计的要求以及功能模块的划分,对于酒店网络商务系统可以列出以下数据项及数据结构。
员工基本信息:
主要包括姓名、年龄、职务、上岗时间、备注。
网站公告信息:
主要包括网站公告标题、网站公告内容,作者,时间。
房间(餐位)信息详情信息:
主要包括房间编号、状态、容纳人数、备注。
贵宾详情信息:
主要包括姓名、电话、贵宾卡号、备注。
网站栏目详情信息:
主要包括栏目名称、序号。
菜肴信息:
主要包括菜名、菜系、价格、备注。
留言信息:
主要包括编号、姓名、题目、留言者qq、留言内容、时间。
教你一招列表信息:
主要包括作者、内容、题目。
管理员信息:
主要包括登录名、登录密码。
网站基本信息:
主要包括位置ID、位置名称。
预定信息:
主要包括编号、预定人、预定内容、备注。
根据前面所列出的数据库逻辑结构表,在SQLServer2000中用表设计器逐个完成每个表的实现,它们之间的关系,如图所示:
图2.6系统关系图
2.1.4物理设计
CREATEPROCEDUREHotel_AddCustom
{
@idchar(20)、
@cardDesvarchar(100)、
@namevarchar(20)、
@sexchar
(2)、
@nativevarchar(250)、
@addressvarchar(250)、
@cardCopyimage、--证件复印件
@remarkvarchar(1000)
}
As
declare@card_idchar
(1)
select@card_id=codefromCode_IDTypewheredescription=@cardDes--无重复记录则添加
IFNotexists(selectidfromHotel_Customwhereid=@id)
begin
insertHotel_Custom(id,id_type,name,sex,native,address,cardCopy,remark)
values(@id,@card_id,@name,@sex,@native,@address,@cardCopy,@remark)
end
Go
CREATEPROCEDUREHotel_DelSheetItem
{
@worksheetchar(10),--订单编号
2customchar(20)--客户编号
}
As
deletefromHotel_WorkSheetItem
whereworksheet=@worksheetandcustom=@custom
Go
--取得已预定的订单
CREATEPROCEDUREHotel_GetBookSheet
{
@customIDchar(20)
}
As
SELECT
W.id订单号
FROM
Hotel_WorkSheetItemS
INNERJOIN
Hotel_WorkSheetWONW.id=S.worksheet
WHERE
(W.stage=‘0’)AND(S.customID)
GO
2.1.5数据库实现
基于上述的数据库概念结构与数据逻辑结构设计的结果,现在可以实施将其转化为SQLServer2000数据库系统所支持的实际数据模型:
数据表对象(即为它们选择最适合的应用环境,对数据库在物理设备上的存储结构和存取方法予以设计),并形成数据库中各个表格之间的关系。
表2.1Hotel_Person操作员信息表
序号
字段名
字段类型
宽度
可否为空
含义
1
id
Char
6
否
操作员编号
2
name
Varchar
20
否
姓名
3
pwd
Varchar
20
否
密码
4
enable
Char
1
否
是否可用(T-可,F-不可)
表2.2Hotel_Custom客户信息表
序号
字段名
字段类型
宽度
可否为空
含义
1
id
Char
20
否
证件号
2
id_type
Char
1
否
证件类别(外健ID-TYPE)
3
name
Varchar
20
否
姓名
4
sex
Char
2
可
性别(M-男,F-女)
5
native
Varchar
250
可
来源地
6
address
Varchar
250
可
联系地址
7
cardcopy
Image
16
可
证件复印件
8
remark
Varchar
1000
可
备注
表2.3Hotel_WorkSheetItem工作单信息表
序号
字段名
字段类型
宽度
可否为空
含义
1
id
Int
4
否
编号
2
worksheet
Char
10
否
工作单编号(外健Hotel_WorkSheet)
3
custom
Char
20
否
客户(外健Hotel_Custom)
4
room
Char
5
否
房间号(外健Hotel_Room)
5
mode
Char
1
否
入住方式(外健Code_MoveInMove)
6
starttime
DateTime
8
可
入住时间
7
endtime
DateTime
8
可
退房时间
表2.4Code_RoomState客房状态代码表
序号
字段名
字段类型
宽度
可否为空
含义
1
code
Char
1
否
代码
2
descript
Varchar
100
否
描述
表2.5Code_MoveInMode入住方式代码表
序号
字段名
字段类型
宽度
可否为空
含义
1
code
Char
1
否
代码
2
descript
Varchar
100
否
描述
表2.6Hotel_Room客房信息表
序号
字段名
字段类型
宽度
可否为空
含义
1
id
Char
5
否
编号
2
place
Varchar
100
否
位置描述
3
roomlevel
Char
1
否
客房级别(外健Hotel_RoomLevel)
4
state
Char
1
否
客房状态(外键Hotel_RoomState)
5
remark
Varchar
1000
可
备注
2.2程序设计
2.2.1概要设计
酒店信息管理系统属于典型的单层数据库应用系统,系统将酒店管理过程中的输入记录在数据库中,根据用户的需要完成相应的添加、删除、查询等操作。
酒店信息管理系统主要包括以下几个功能:
1)客房类型管理:
在该功能模块能指定客房的类型名称,包括面积、床位、价钱,选择是否带电视、空调、卫生间、电话等;添加一种新的客房类型;能在界面上显示所有的客房类型信息。
2)客房信息管理:
界面上显示所有的客房信息。
3)客户入住管理:
在该功能可以指定房间号(ID),选择客户性别、籍贯,填写客户ID、姓名,选择入住日期,然后添加入库记录。
4)客户退房管理:
在该功能模块系统会根据客户的消费显示应收金额,管理人员选择相应的折扣,系统算出实收金额进行结算操作。
5)客房查询:
该功能模块提供三种查询方法,方便查找符合条件的客房:
一是输入相应的客房信息查找;二是直接单击【空房】按扭查找;三是单击【未满】按扭查找。
查询完后,可以选择单击【入住】按扭,进行登记。
6)客户查询:
在该功能模块可以查询全部的客户,也可以按客户ID进行精细查询,查找符合要求的客户可以进行结算操作。
本次设计是酒店信息管理系统的开发,本设计详细介绍了一个数据库应用系统开发过程。
酒店信息管理能够根据用户的需要完成相应的添加、删除、查询等操作。
并提供部分系统维护功能,使用户方便进行数据备份和恢复、数据删除。
对于数据的一致性的问题也通过程序进行了有效的解决。
酒店信息管理系统是酒店管理信息化建设的基础和重要组成部分。
基于系统功能分析及主要任务的表达,可对上述各项功能按照结构化程序设计的要求进行集中、分层结构化,自上而下逐层设置得到系统功能模块结构图。
图2.7系统功能模块结构图
用户登录界面:
图2.8
客房预订登记:
图2.9
空房查询:
图2.10
预订房间:
图2.11
预订客单:
图2.12
2.2.2程序实现
启动客房管理窗体用于预定,入住和客房调整等信息的输入。
各部分代码如下:
1.“预定”表单
其中“预定”窗体的代码如下所示:
(1)首先设计此模块的全局变量。
DimstrCnnAsString
DimcnnAsNewConnectlon
DimSheetOrderAsString.订单号
(2)窗体初始化和PrivateSub'Form_Load()为设计。
PrivateSub'Form_Load()
strCnn="Provider=SQLOLEDB.l;IntegratedSeeurity=SSPI;persistSecurityInfo=False;UserID=sa;InitialCatalog=酒店客房管理系统;DataSource=MOORE"
cnn.OpenstrCn口
'显示可用客房以供选择
ExitSub
errHandle:
MsgBox“Error:
”+Err.Description
EndSub
从客房等级列表中选择相应级别的客房,然后再列出相应的可用客房
PrivateSubdtlroomLevel-click()
GetValidRoom
EndSub
(5)选择在某个时间段内可用的客房。
PrivateSubTimeBegin-Chang()
GetValidRoom
EndSub
PrivateSubTimeEnd-click()
GetValidRoom
EndSub
2.“入住”表单
“入住”表单用于完成客户入住的登记。
代码如下:
添加用户。
privateSubCmdInAddCustom_click()
AppendInModeCustom
`显示已预定的订单
ShowBooksheet
Endsub
`添加入住时的客户
privateSubAppendInModeCustom()
OnErrorGoToerrHandl
DimcmdAsNewCommand
DimrsAsNewRecordSet
cmd.ActiveConnection=cnn
cmdCommandType=adCmdstoreproc
cmd.CommandText=“Hotel_AddCustom”
cmd.Parameters.Appendcmd.CreateParameter(“@id”,adchar,adParamInput,
ExitSub
errHandle:
MsgBox“Error:
”+Err.Description
EndSub
从客房等级列表中选择相应级别的客房,然后再列出相应的可用客房
PrivateSubdtlroomLevel-click()
GetValidRoom
EndSub
(5)选择在某个时间段内可用的客房。
PrivateSubTimeBegin-Chang()
GetValidRoom
EndSub
PrivateSubTimeEnd-click()
GetValidRoom
ExitSub
‘添加入住订单明细表
PrivateSubAppendInWorkSheetItem()
OnErrorGoToerrHandle
DimcmdAsNewRecordSet
DimrsAsNewRecordSet
cmd.ActiveConnection=cnn
cmd.CommandType=adCmdStoredProc
cmd.CommandText=“Hotel-AddSheetItem”
cmd.parameters.Appendcmd.CreateParameter(“@worksheet”,adChar,adParamInput,10)
cmd.parameters.Appendcmd.CreateParameter(“@custom”,adChar,adParamInput,20)
3.“调整”表单
“调整”表单用于调整入住人员的客房安排。
第3章课程设计总结
这次课设经过我们的努力终于顺利完成了。
课设的过程是个自我探索、自我学习的过程,其中,我们不仅学到了专业的知识,也提升了自己的学习能力。
刚定下这个课题的时候,完全不知道如何入手,就随大帮去了图书馆查资料,在大堆的C#资料中终于找到了课设的最基础,游戏的编程代码。
然后又借了许多书回寝室仔细研究。
我们决定做酒店管理系统开发编程。
我们在图书馆找到了酒店管理的代码,在敲代码的时候,发现很多英文都会输入错误,都有“.”这个。
我特意选择了一个比较简单基础的编程,因为我们是初学者,只要知道知识是如何应用就可以了,没必要做些过分高难度的程序,这样只会削弱我们的自尊,我们要从最基础做起。
有了程序代码,我们就开始研究它的各个模块以及各模块的功能及应用,读懂每条语句的作用。
经过上网查资料和自己总结体会又写出了系统功能分析等。
做个酒店管理运行结果是很重要的,耗费了好久才把我们自己编的管理系统弄出个结果来。
看来简单编程的管理也未必简单啊!
我们的课程设计结束了,但是它留给我的印象是不可磨灭的。
无论我以后会不会涉及到C#程序编译的研究,我想,我至少掌握了一种系统的研究方法,我们学习的目的就在于运用,我们运用这种研究方法的时候会很多,经过课程设计我也学会很多。
参考文献
[1]汪孝宜.信息系统开发实例精粹:
SQLSever2000版.北京电子工业出版社,2006
[2]张冬梅.酒店信息系统的开发[J].科技经济市场,2006
[3]钱雪忠.数据库原理及应用.第2版.北京北京邮电大学出版社,2003
[4]布拉德利.米尔斯波著,C#.NET程序设计.北京清华大学出版社,2005
[5]AlanCoopen.软件开发的创新思维.北京电子工业出版社,2003
[6]萨师煊.数据库系统概论.第四版.北京高等教育出版社,2006
[7]刘玉生.SQLSever2000开发和应用基础到实践.北京电子工业出版社,2006
[8]万春红.信息系统分析与设计.西安西安电子科技大学出版社,2003
[9]吉小青.饭店管理概论[M].济南:
山东大学出版社,1998
[10]李玉波.SQLSever完全自学手册.北京:
机械工业出版社,2006
[11]刘甲耀.C#程序设计培训教程.北京:
机械工业出版社,2004
[12]闪四清.SQLServer2000实用教程.北京:
人民邮电出版社,2000
[13]刘洪成.C#高级教程,北京:
清华大学出版社,2003