Oracle 数据库的设计与实现选题名称:酒店管理系统姓名:学号:专业:班级:指导老师:设计地点:目录一、系统需求分析系统开发的目的和意义----------3系统要求-----------------------------3二、系统总体设计系统功能需求----------------------4系统数据需求----------------------4系统功能结构图-------------------5系统部分流程图-------------------5三、数据库设计数据库概念模型-------------------7数据库物理模型-------------------8酒店管理系统部分数据字典 ---9四、系统实现过程设计过程-----------------------------11系统各界面设计代码-------------28五、实验总结实验中遇到的问题---------------35心得体会--------------------------35一、系统需求分析系统开发的目的和意义首先应该在此次实践中有所收获,能够学习到相关软件的功能,和进行实践设计需要的知识的。
能够在实践中学习。
面对酒店行业的高速发展和酒店行业信息化发展的过程中出现的各种情况,酒店客房管理系统在实施后应达到以下目的:实现多点操作的信息共享,相互之间的信息传递准确、快捷、顺畅;服务管理信息化,可随时掌握客人住宿情况;系统界面友好美观,操作简单易行,查询灵活方便,数据存储安全。
实现客房的登记入住和查询功能,查询酒店信息,客人信息,客房信息等功能。
实现Delphi和oracle的连接,进行数据的插入。
系统要求要求实现酒店员工信息管理、客户信息管理、客房信息管理、订单管理等功能,包括客户信息的添加、修改、删除及查询;客房信息的添加、修改、删除及查询;订单查询及退房管理等。
二、系统总体设计系统功能需求通过对互联网上的各大酒店管理系统的认识和分析,我对酒店管理系统有了基本的了解,我觉得该系统至少应该具有以下的一些基本功能:(1) 系统管理模块:包括登录系统,用户管理,权限管理,角色管理,以及查询统计,客户管理折扣管理和开台管理等。
(2) 基本设置管理模块:包括厨师的管理,买单管理等。
(3) 客户管理模块:包括客户点菜,上菜,结账,统计等。
(4) 客户订房管理模块:包括订房,续房,查房,退房,结算等。
系统数据需求根据数据需求分析可知该系统至少应该具有以下的一些数据需求:DESKTYPE餐桌类别表(餐桌类别编号,餐桌座位数,餐桌方位,备注)。
DESK餐桌表(餐桌编号,餐桌类别编号,餐桌状态,备注)。
FOODYPE菜系(菜系编号,菜系名称,备注)。
FOOD菜品(菜品编号,菜单编号,所属菜系,菜品名称,菜品价格,助记码,备注)。
FOODTICKET餐饮订单(订单编号,餐桌编号,下单服务员编号,点菜时间,订单状态,备注)。
ROOMCUSTINFO住房客户信息表(住户编号,客房类别编号,住户姓名,住户省份证号)。
FOODLIST菜单(菜单编号,餐桌编号,菜品编号,厨师编号,状态,备注)。
ROOMTYPE客房类别表(客房类别编号,客房类型名称,客房类别价格,备注)。
ROOMINFO客房信息表(房间编号,客房类别编号,客房状态,备注)。
ROOMTICKET客房订单管理表(订单编号,房间号,下单服务员ID,身份证号,入住时间,离开时间,押金金额,结算金额,下单时间,备注)。
CUSTINFO客户信息表(身份证号,客户姓名,客户性别,客户电话,是否会员,信息录入时间,备注)。
USER 用户信息表(用户编号,角色编号,部门编号,用户名,用户密码,是否审核通过,年龄,性别,生日,联系电话,备注)。
ROLE 用户角色表(角色编号,角色名,备注)。
DEPARMENT 部门表(部门编号,名称,上级部门编号,备注)。
PERMISSION 权限表(权限编号,权限组编号,权限名称,备注)。
ROLEPER 角色-权限关联表(角色权限编号,角色编号,权限编号)。
PERMISSIONGROUP 权限组表(权限组编号,权限组名称)。
系统功能模块图酒店管理系统功能结构如图2-3所示图2-3 系统功能结构图系统部分流程图客房订单流程图如图2-4所示图2-4 客房订单管理流程图餐饮部分开台流程图如图2-5所示图2-5 餐饮部分开台流程图三、数据库设计数据库概念模型数据库概念模型图如图3-1所示:图3-1数据库概念模型图数据库物理模型数据库物理模型图如图3-2所示:图3-2 数据库物理模型图酒店管理系统部分数据字典本系统数据库采用Oracle数据库,系统数据库名称为HotelDB,共包含17张表。
菜系表:用来存储菜系的信息,其中FOODTYPEID字段为主键。
信息。
其中字段FOODTYPEID用来描述该菜品属于哪个菜系是外键参参考表FOODTYPE,根据此字段的值,可以知道菜品属于相应的哪个菜系。
表3-3-3客房类别表:ROOMTYPE表3-3-4 客房信息表:ROOMINFO续表 5-4客户信息表:用来存储酒店客户的相关信息。
表3-3-5 客户信息表: CUSTINFO四、系统实现过程设计过程窗体设计⑴新建一个标准工程,会出现form1,可以遵循默认格式,也可以更改名称,这里默认。
⑵添加所需控件mainmenu,双击控件在其中加入所要进行的功能如下:添加控件Image插入图片,选中image控件,在其属性表中选中picture,选择需要的图片:⑶再建立一个Form2,默认格式即可。
在其中加入客房登记所需控件:⑷再建立一个Form3,默认格式即可,并且在project-options中设置其为主窗体。
在其中加入客房登记所需控件,8个label,8个Edit,两个bitbtn如图:可以在bitbtn按钮中添加图片,使其更加生动,,选中按钮,在其属性选择Glyph,选择需要的图片即可,注意图片格式要符合要求,还可以为界面换颜色。
⑸再建立一个Form4,默认格式即可。
在其中加入客人信息查询所需控件,1个label,一个Edit,2个按钮,1个DBGrid:这里需要链接数据库,与krxx表中的信息进行链接。
连接方式为:首先添加一个数据模板(datemodule),然后选择ADOQuery控件和datasource 控件添加到数据模板,选中ADOQuery控件,在其属性中找到connectionstring,进行数据库的链接,选择⑹再建立一个Form5,默认格式即可。
在其中加入客房登记所需控件,和上面一样:这个窗体也要进行数据库链接,过程和上面一样,只是链接的表名不同,这里链接的是kfxx表。
双击确定添加代码如下:with dobeginClose;;('select * from fjxx where 房间号码=:a');('a').value:=Trim;Open;end;关闭键的代码如下:;;这样就完成了房间信息查询的操作。
(7)再建立一个Form6,默认格式即可。
在其中加入查看酒店信息所需控件:1个label,1个按钮,1个DBGrid:这里主要就是数据库的链接,改用另外一种方式为:首先再建立一个Form7,默认格式即可。
在其中加入查看客房信息所需控件,和(7)一样,不过这里可以采用(5)的方法进行数据库的链接。
再建立一个再建立一个Form8 ,默认格式即可。
在其中加入退房所需控件:1个label,1个Edit,两个bitbtn,1个DBGrid,和一个DBNavigator如图:将其与数据库中表krxx链接后,输入证件号码单击DBNavigator控件上的√可以突出显示选择的信息,然后点击退房可以实现退房功能。
进行窗体之间的转换(1)在form3中进行密码设置,双击登录按钮进行代码输入如下:varresults: Variant;BEGINresults:=('姓名',,'密码');if results= thenbegin;;endelsebegin('姓名或密码错误','提示信息',64);;exit;end;end;退出代码为:close;(2)在form1中进行剩余各form间的连接,在form1中分别单击要实现的功能菜单按钮,并分别输入代码,得到的最后代码如下:procedure (Sender: TObject);begin;;end;procedure (Sender: TObject);begin;;end;procedure (Sender: TObject);begin;;end;procedure (Sender: TObject);begin;;end;procedure (Sender: TObject);begin;;end;procedure (Sender: TObject);begin;;end;procedure (Sender: TObject);beginclose;end;procedure (Sender: TObject);beginend;并且要在uint1的连接代码上添加:usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, Menus, DB, ADODB,unit2,unit4,unit5,unit6,unit7,unit8,;在form2中进行和form1间的转换,代码如下:双击关闭按钮添加代码:;;(4)在form4,form5,form6,form7中进行form1间的转换,代码类似(3)。
3、form1中退出菜单的实现双击退出菜单进行代码输入:close;即可。
至此完成了菜单管理的实现,可以运行后进行各功能的实现。
②代码设计Private Sub Toolbar1_ButtonClick(ByVal Button AsSelect CaseCase "DJ"zsdj_ClickCase "TF"tf_ClickCase "FT"ftck_ClickCase "CX"zscx_ClickCase "exit"If MsgBox("确定退出该系统", 4, "系统提示") = vbYes ThenEndEnd IfEnd SelectEnd SubPrivate Sub sztx_Click()Dim Str= "BMP图片(*.BMP)|*.BMP|JPG图片(*.JPG)|*.JPG|GIF图片(*.GIF)|*.GIF|所有文件(*.*)|*.*"If <> "" Then= LoadPictureStr =Open & "\") For Output As #1Print #1, StrClose #1= ""Else= ""End IfEnd SubPrivate Sub sjbf_Click()= FalseEnd SubPrivate Sub sjhf_Click()End SubPrivate Sub zsdj_Click()= FalseEnd SubPrivate Sub tf_Click()= FalseEnd SubPrivate Sub kfcx_Click()= FalseEnd SubPrivate Sub ftck_Click()= FalseEnd SubPrivate Sub zscx_Click()Load main_zscx= FalseEnd SubPrivate Sub tfcx_Click()Load main_tfcx= FalseEnd Sub系统登录模块设计①窗体设计⑴添加新窗体,命名为main_Login,Caption属性为“酒店客房管理系统”;⑵添加Adodc控件以及两个TextBox控件,Text1放在用户名后,Text2放在密码后;⑶添加两个Image控件,分别设置Picture属性,添加“确定”和“退出”按钮。