欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    oracle酒店管理系统word精品文档27页.doc

    • 资源ID:33832034       资源大小:317.50KB        全文页数:27页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    oracle酒店管理系统word精品文档27页.doc

    如有侵权,请联系网站删除,仅供学习与交流oracle酒店管理系统【精品文档】第 27 页 Oracle 数据库的设计与实现选题名称: 酒店管理系统 姓 名: 学 号: 专 业: 班 级: 指导老师: 设计地点: 目 录一、 系统需求分析1.1系统开发的目的和意义 -31.2系统要求 -3二、系统总体设计2.1系统功能需求 -42.2系统数据需求 -42.3系统功能结构图 -52.4系统部分流程图 -5三、数据库设计3.1数据库概念模型 -73.2数据库物理模型 -83.3酒店管理系统部分数据字典 -9四、系统实现过程4.1设计过程 -114.2系统各界面设计代码 -28五、实验总结5.1实验中遇到的问题 -355.2心得体会 -35一、系统需求分析1.1系统开发的目的和意义 首先应该在此次实践中有所收获,能够学习到相关软件的功能,和进行实践设计需要的知识的。能够在实践中学习。 面对酒店行业的高速发展和酒店行业信息化发展的过程中出现的各种情况,酒店客房管理系统在实施后应达到以下目的: 实现多点操作的信息共享,相互之间的信息传递准确、快捷、顺畅; 服务管理信息化,可随时掌握客人住宿情况; 系统界面友好美观,操作简单易行,查询灵活方便,数据存储安全。 实现客房的登记入住和查询功能,查询酒店信息,客人信息,客房信息等功能。 实现Delphi和oracle的连接,进行数据的插入。1.2系统要求要求实现酒店员工信息管理、客户信息管理、客房信息管理、订单管理等功能,包括客户信息的添加、修改、删除及查询;客房信息的添加、修改、删除及查询;订单查询及退房管理等。二、 系统总体设计2.1系统功能需求 通过对互联网上的各大酒店管理系统的认识和分析,我对酒店管理系统有了基本的了解,我觉得该系统至少应该具有以下的一些基本功能: (1) 系统管理模块:包括登录系统,用户管理,权限管理,角色管理,以及查询统计,客户管理折扣管理和开台管理等。 (2) 基本设置管理模块:包括厨师的管理,买单管理等。 (3) 客户管理模块:包括客户点菜,上菜,结账,统计等。 (4) 客户订房管理模块:包括订房,续房,查房,退房,结算等。 2.2 系统数据需求根据数据需求分析可知该系统至少应该具有以下的一些数据需求:DESKTYPE餐桌类别表(餐桌类别编号,餐桌座位数,餐桌方位,备注)。DESK餐桌表(餐桌编号,餐桌类别编号,餐桌状态,备注)。FOODYPE菜系 (菜系编号,菜系名称,备注)。FOOD菜品(菜品编号,菜单编号,所属菜系,菜品名称,菜品价格,助记码,备注)。FOODTICKET餐饮订单(订单编号,餐桌编号,下单服务员编号,点菜时间,订单状态,备注)。ROOMCUSTINFO住房客户信息表(住户编号,客房类别编号,住户姓名,住户省份证号)。FOODLIST菜单(菜单编号,餐桌编号,菜品编号,厨师编号,状态,备注)。ROOMTYPE客房类别表(客房类别编号,客房类型名称,客房类别价格,备注)。ROOMINFO客房信息表(房间编号,客房类别编号,客房状态,备注)。ROOMTICKET客房订单管理表 (订单编号,房间号,下单服务员ID,身份证号,入住时间,离开时间,押金金额,结算金额,下单时间,备注)。CUSTINFO客户信息表 (身份证号,客户姓名,客户性别,客户电话,是否会员,信息录入时间,备注)。USER 用户信息表(用户编号,角色编号,部门编号,用户名,用户密码,是否审核通过,年龄,性别,生日,联系电话,备注)。ROLE 用户角色表(角色编号,角色名,备注)。DEPARMENT 部门表(部门编号,名称,上级部门编号,备注)。PERMISSION 权限表(权限编号,权限组编号,权限名称,备注)。ROLEPER 角色-权限关联表(角色权限编号,角色编号,权限编号)。PERMISSIONGROUP 权限组表(权限组编号,权限组名称)。2.3系统功能模块图酒店管理系统功能结构如图2-3所示图2-3 系统功能结构图2.4系统部分流程图客房订单流程图如图2-4所示图2-4 客房订单管理流程图餐饮部分开台流程图如图2-5所示图2-5 餐饮部分开台流程图三、数据库设计3.1数据库概念模型数据库概念模型图如图3-1所示:图3-1数据库概念模型图3.2数据库物理模型数据库物理模型图如图3-2所示:图3-2 数据库物理模型图3.3酒店管理系统部分数据字典本系统数据库采用Oracle数据库,系统数据库名称为HotelDB,共包含17张表。菜系表:用来存储菜系的信息,其中FOODTYPEID字段为主键。表3-3-1 菜系:FOODYPE字段名称类型允许空主键外键外键参考表 说明FOODTYPEIDNUMBE(5)NOTYES菜系IDFOODTYPENAMEVARCHAR2(20)NOT菜系名称FOODTYPEREMARKVARCHAR2(50)YES备注菜品表:用于菜品的所有信息,也是点菜的菜单的一个信息来源表,从中可获得菜品的全部信息。其中字段FOODTYPEID用来描述该菜品属于哪个菜系是外键参参考表FOODTYPE,根据此字段的值,可以知道菜品属于相应的哪个菜系。表3-3-2 菜品:FOOD字段名称类型允许空主键外键外键参考表说明FOODIDNUMBER(5)NOTYES菜品IDFOODNAMEVARCHAR2(20)NOT菜品名称FOODTYPEIDNUMBER(5)NOTYESFOODYPE所属菜系IDFOODPRICENUMBER(5)NOT菜品价格FOODHELPCODEVARCHAR2(10)NOT助记码FOODREMARKVARCHAR2(50)YES备注客房类别表:用来存储客房类别的信息,表3-3-3客房类别表:ROOMTYPE字段名称类型允许空主键外键外键参考表说明ROOMTYPEIDNUMBER(5)NOTYES客房类别编号ROOMTYPENAMEVARCHAR2(20)NOT客房类别名称ROOMTYPEPAYNUMBER(5)NOT类别价格ROOMTYPEREMARKVARCHAR2(50)NOT备注客房信息表:用来存储客房信息。表3-3-4 客房信息表:ROOMINFO字段名称类型允许空主键外键外键参考表说明ROOMIDNUMBER(5)NOTYES房间编号ROOMTYPEIDNUMBER(5)NOTYESROOMTYPE客房类别编号续表 5-4字段名称类型允许空主键外键外键参考表说明ROOMCHECKNUMBER(5)NOT客房状态ROOMREMARKVARCHAR2(50)YES备注客户信息表:用来存储酒店客户的相关信息。表3-3-5 客户信息表: CUSTINFO字段名称类型允许空主键外键外键参考表说明CARDIDVARCHAR2(20)NOTYES身份证号CUSTNAMEVARCHAR2(20)NOT姓名CUSTSEXVARCHAR2(10)NOT性别CUSTPHONEVARCHAR2(20)YES电话VIPCHECKNUMBER(5)YES是否会员CUSTDATEVARCHAR2(20)YES信息录入时间四、 系统实现过程4.1设计过程4.1.1窗体设计新建一个标准工程,会出现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 Data3.ADOQuery1 do begin Close; SQL.Clear; SQL.Add('select * from fjxx where 房间号码=:a'); Parameters.ParamByName('a').value:=Trim(edit1.Text); Open; end;关闭键的代码如下:form5.close;form1.show;这样就完成了房间信息查询的操作。(7) 再建立一个Form6,默认格式即可。在其中加入查看酒店信息所需控件:1个label,1个按钮,1个DBGrid:这里主要就是数据库的链接,改用另外一种方式为:首先再建立一个Form7,默认格式即可。在其中加入查看客房信息所需控件,和(7)一样,不过这里可以采用(5)的方法进行数据库的链接。再建立一个再建立一个Form8 ,默认格式即可。在其中加入退房所需控件:1个label,1个Edit,两个bitbtn,1个DBGrid,和一个DBNavigator如图:将其与数据库中表krxx链接后,输入证件号码单击DBNavigator控件上的可以突出显示选择的信息,然后点击退房可以实现退房功能。4.1.2 进行窗体之间的转换(1)在form3中进行密码设置,双击登录按钮进行代码输入如下:varresults: Variant;BEGINresults:=ADOTable1.Lookup('姓名',edit1.text,'密码');if results=edit2.Text thenbeginform3.Hide;form1.Show;endelsebeginapplication.MessageBox('姓名或密码错误','提示信息',64); edit1.SetFocus; exit;end;end;退出代码为:close;(2)在form1中进行剩余各form间的连接,在form1中分别单击要实现的功能菜单按钮,并分别输入代码,得到的最后代码如下:procedure TForm1.N2Click(Sender: TObject);beginform1.Hide;form2.showmodal;end;procedure TForm1.N3Click(Sender: TObject);beginform1.Hide;form4.showmodal;end;procedure TForm1.N4Click(Sender: TObject);beginform1.Hide;form5.ShowModal;end;procedure TForm1.N5Click(Sender: TObject);beginform1.Hide;form6.ShowModal;end;procedure TForm1.N6Click(Sender: TObject);beginform1.hide;form7.ShowModal;end;procedure TForm1.N8Click(Sender: TObject);beginform1.hide;form8.ShowModal;end;procedure TForm1.N7Click(Sender: TObject);beginclose;end;procedure TForm1.FormCreate(Sender: TObject);beginend;并且要在uint1的连接代码上添加:uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, DB, ADODB,unit2,unit4,unit5,unit6,unit7,unit8,;在form2中进行和form1间的转换,代码如下: 双击关闭按钮添加代码: form2.close; form1.show;(4)在form4,form5,form6,form7中进行form1间的转换,代码类似(3)。3、form1中退出菜单的实现双击退出菜单进行代码输入:close;即可。至此完成了菜单管理的实现,可以运行后进行各功能的实现。代码设计Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Key Case "DJ" zsdj_Click Case "TF" tf_Click Case "FT" ftck_Click Case "CX" zscx_Click Case "exit" If MsgBox("确定退出该系统?", 4, "系统提示") = vbYes Then End End If End SelectEnd SubPrivate Sub sztx_Click()Dim StrCommonDialog1.Filter = "BMP图片(*.BMP)|*.BMP|JPG图片(*.JPG)|*.JPG|GIF图片(*.GIF)|*.GIF|所有文件(*.*)|*.*"CommonDialog1.ShowOpenIf CommonDialog1.FileName <> "" ThenImage2.Picture = LoadPicture(CommonDialog1.FileName)Str = CommonDialog1.FileName Open (App.Path & "picture.txt") For Output As #1 Print #1, Str Close #1 CommonDialog1.FileName = ""Else CommonDialog1.FileName = ""End IfEnd SubPrivate Sub sjbf_Click()main_sjbf.Showmain.Enabled = FalseEnd SubPrivate Sub sjhf_Click()main_sjhf.ShowEnd SubPrivate Sub zsdj_Click() main_kfdj.Show main.Enabled = FalseEnd SubPrivate Sub tf_Click() main_tf.Show main.Enabled = FalseEnd SubPrivate Sub kfcx_Click() main_kfcx.Show main.Enabled = FalseEnd SubPrivate Sub ftck_Click() main_ftcx.Show main.Enabled = FalseEnd SubPrivate Sub zscx_Click() Load main_zscx main_zscx.Show main.Enabled = FalseEnd SubPrivate Sub tfcx_Click() Load main_tfcx main_tfcx.Show main.Enabled = FalseEnd Sub4.1.3 系统登录模块设计窗体设计添加新窗体,命名为main_Login,Caption属性为“酒店客房管理系统”;添加Adodc控件以及两个TextBox控件,Text1放在用户名后,Text2放在密码后;添加两个Image控件,分别设置Picture属性,添加“确定”和“退出”按钮。代码设计Private Sub Image1_Click() If Text1.Text = 7 And Text2.Text = 123456 Then main.Show Me.Hide Else MsgBox "密码错误!", vbCritical, "提示" End IfEnd SubPrivate Sub Image2_Click()EndEnd Sub4.1.4住宿登记模块窗体设计添加新窗体命名为main_kfdj,Caption属性为“住宿登记”;添加两个Adodc控件、TextBox控件数组以及2个DTPicker控件;添加3个ComboBox控件。代码设计Private Sub comdj_Click() Adodc1.ConnectionString = "PROVIDER=MSDASQL;DRIVER=Oracle in OraDb11g_home1 ;" & "server=webserver;DSN=;databasename=aa;databasefile=d:aa;UID=scott;PWD=123456" Adodc1.RecordSource = "select * from tb_kf where 房态='空房'" Adodc1.Refresh Adodc2.ConnectionString = "PROVIDER=MSDASQL;DRIVER=Oracle in OraDb11g_home1 ;" & "server=webserver;DSN=;databasename=aa;databasefile=d:aa;UID=scott;PWD=123456" Adodc2.RecordSource = "select * from tb_djb order by 凭证号码" Adodc2.Refresh If Not Adodc2.Recordset.EOF Then Adodc2.Recordset.MoveLast If lsph.Text = "" Then bh.Text = Fdate & "d" & Format(1, "#000") If lsph.Text <> "" Then y1.Text = Month(Fdate) y2.Text = Month(Left(lsph.Text, 10) If y1.Text = y2.Text Then 'bh.Text = Fdate & "d" & Format(Val(Right(lsph.Text, 3) + 1, "#000") Text1.Text = Val(Right(lsph.Text, 3) + 1 End If If y1.Text <> y2.Text Then bh.Text = Fdate & "d" & Format(1, "#000") End If End If For i = 0 To 2 ZSDJ(i).Text = "" ZSDJ(i).Enabled = True Next i For i = 4 To 6 ZSDJ(i).Text = "" ZSDJ(i).Enabled = True Next i Combo3.Text = "" Comok.Enabled = True: Comdj.Enabled = False Combo3.Enabled = True: Combo1.Enabled = True ZSDJ(0).SetFocus Adodc3.ConnectionString = "PROVIDER=MSDASQL;DRIVER=Oracle in OraDb11g_home1 ;" & "server=webserver;DSN=;databasename=aa;databasefile=d:aa;UID=scott;PWD=123456" Adodc3.RecordSource = "select * from tb_kf where 房态 = '空房'" Adodc3.Refresh Combo3.Clear If Adodc3.Recordset.RecordCount > 0 Then For i = 1 To Adodc3.Recordset.RecordCount Combo3.AddItem Adodc3.Recordset.Fields("房间号").Value Adodc3.Recordset.MoveNext Next i End IfEnd SubPrivate Sub comok_Click() If ZSDJ(0) = "" Or Combo3 = "" Then MsgBox "请输入完整信息", , "系统提示" Else Adodc2.RecordSource = "select * from tb_djb where 房间号 = '" & Combo3.Text & "' and 标志 like '1'" Adodc2.Refresh If Adodc2.Recordset.RecordCount = 0 Then Adodc2.Recordset.AddNew If bh.Text <> "" Then Adodc2.Recordset.Fields("凭证号码") = bh.Text If ZSDJ(0).Text <> "" Then Adodc2.Recordset.Fields("姓名") = ZSDJ(0).Text If Combo1.Text <> "" Then Adodc2.Recordset.Fields("证件名称") = Combo1.Text If ZSDJ(1).Text <> "" Then Adodc2.Recordset.Fields("证件号码") = ZSDJ(1).Text If ZSDJ(2).Text <> "" Then Adodc2.Recordset.Fields("详细地址") = ZSDJ(2).Text If Combo3.Text <> "" Then Adodc2.Recordset.Fields("房间号") = Val(Combo3.Text) If ZSDJ(4).Text <> "" Then Adodc2.Recordset.Fields("客房类型") = ZSDJ(4).Text If DTP1.Value <> "" Then Adodc2.Recordset.Fields("住宿日期") = DTP1.Value If ZSDJ(5).Text <> "" Then Adodc2.Recordset.Fields("客房价格") = Val(ZSDJ(5).Text) If ZSDJ(6).Text <> "" Then Adodc2.Recordset.Fields("住宿天数") = ZSDJ(6).Text If ZSDJ(7).Text <> "" Then Adodc2.Recordset.Fields("宿费") = ZSDJ(7).Text If DTP3.Value <> "" Then Adodc2.Recordset.Fields("退宿日期") = DTP3.Value Adodc2.Recordset.Update Adodc2.Refresh adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "DB_KFGL.mdb;Persist Security Info=False" adoRs.Open "select * from tb_djys", adocon, adOpenKeyset, adLockOptimistic adoRs.AddNew If bh.Text <> "" Then adoRs.Fields("凭证号码") = bh.Text If ZSDJ(0).Text <> "" Then adoRs.Fields("姓名") = ZSDJ(0).Text If Combo1.Text <> "" Then adoRs.Fields("证件名称") = Combo1.Text If ZSDJ(1).Text <> "" Then adoRs.Fields("证件号码") = ZSDJ(1).Text If ZSDJ(2).Text <> "" Then adoRs.Fields("详细地址") = ZSDJ(2).Text If ZSDJ(4).Text <> "" Then adoRs.Fields("客房类型") = ZSDJ(4).Text If Combo3.Text <> "" Then adoRs.Fields("房间号") = Val(Combo3.Text) If ZSDJ(5).Text <> "" Then adoRs.Fields("客房价格") = Val(ZSDJ(5).Text) If DTP1.Value <> "" Then adoRs.Fields("住宿日期") = DTP1.Value If ZSDJ(6).Text <> "" Then adoRs.Fields("住宿天数") = ZSDJ(6).Text If ZSDJ(7).Text <> "" Then adoRs.Fields("宿费") = ZSDJ(7).Text If DTP3.Value <> "" Then adoRs.Fields("退宿日期") = DTP3.Value adoRs.Update adocon.Close Adodc1.RecordSource = "select * from tb_kf where 房间号 like '" + Combo3.Text + "'" If Combo3.Text <> "" Then Adodc1.Recordset.Fields("房态") = "入住" Adodc1.Recordset.Update For i = 0 To 6 ZSDJ(i).Enabled = False Next i ZSDJ(8).Enabled = False: ZSDJ(10).Enabled = False: ZSDJ(11).Enabled = False Combo3.Enabled = False: Combo1.Enabled = False End If Comok.Enabled = False: Comprint.Enabled = True: Comdj.Enabled = True Comprint.SetFocus End IfEnd SubPrivate Sub comcancel_Click() For i = 0 To 2 ZSDJ(i).Enabled = False Next i For i = 4 To 6 ZSDJ(i).Enabled = False Next i Comok.Enabled = False: Combo3.Enabled = False Combo1.Enabled = False: DTP3.Enabled = False Comdj.Enabled = TrueEnd SubPrivate Sub comend_Click() Unload Me main.Enabled = TrueEnd Sub4.1.5退宿登记模块按照如上方法设计窗体如下:代码设计:Private Sub Form_Load() Adodc1.ConnectionString = "PROVIDER=MSDASQL;DRIVER=Oracle in OraDb11g_home1 ;" & "server=webserver;DSN=;databasename=aa;databasefile=d:aa;UID=scott;PWD=123456" Adodc1.RecordSource = "select * from tb_djb" 'Adodc1.Refresh Adodc2.ConnectionString = "PROVIDER=MSDASQL;DRIVER=Oracle in OraDb11g_home1 ;" & "server=webserver;DSN=;databasename=aa;databasefile=d:aa;UID=scott;PWD=123456" Adodc2.RecordSource = "select * from tb_kf" 'Adodc2.Refresh Adodc3.ConnectionString = "PROVIDER=MSDASQL;DRIVER=Oracle in OraDb11g_home1 ;" & "server=webserver;DSN=;databasename=aa;databasefile=d:aa;UID=scott;PWD=123456" Adodc3.RecordSource = "select * from tb_gzmx" 'Adodc3.Refresh Adodc4.ConnectionString = "PROVIDER=MSDASQL;DRIVER=Oracle in OraDb11g_home1 ;" & "server=webserver;DSN=;databasename=aa;databasefile=d:aa;UID=scott;PWD=123456" Adodc4.RecordSou

    注意事项

    本文(oracle酒店管理系统word精品文档27页.doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开