饭店就餐管理系统数据库课设.docx
- 文档编号:7251936
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:22
- 大小:688.43KB
饭店就餐管理系统数据库课设.docx
《饭店就餐管理系统数据库课设.docx》由会员分享,可在线阅读,更多相关《饭店就餐管理系统数据库课设.docx(22页珍藏版)》请在冰豆网上搜索。
饭店就餐管理系统数据库课设
摘要
随着我国市场经济的快速发展,各行业都呈现出生机勃勃的发展景象,其中餐饮业的发展尤为突出。
近两年来已呈现出高速发展的态势。
但在快速发展的同时,餐饮业在日常经营管理中仍普遍采用手工管理方式,整体科技含量低。
随着餐饮企业规模和数量的不断增长,手工管理模式无论是在工作效率、人员成本还是提供决策信息方面都已难以适应现代化经营管理的要求,因此制约了整个餐饮业的规模化发展和整体服务水平的提升。
有效的管理成为了一个难题,为能有效的解决这些问题提高企业的经济效益,在这些中小型饭店中采用工作流技术,结合饭店绿色管理内容,实施计算机管理信息系统不视为一条有效的解决途径。
本论文主要针对中小型饭店餐饮管理中的一些问题,将其与计算机信息管理系统结合起来,实现中小型饭店管理信息计算机化、系统化,将中小型饭店管理中的工作流转化成比较科学化、规范化的业务流程,使管理基础数据更加准确化,管理人员摆脱了事务性工作,转而从事管理专业工作,为经营决策提供了快捷和强大的数据支持。
把计算机用于餐饮企业管理,可在很大程度上提高管理者分析和决策的科学性,提高经营管职水平,带来更多的顾客,使企业取得更好的经济效益。
关键词餐饮管理;信息查询;数据库连接
目录
1系统功能概述………………………………………………………………………1
1.1系统功能分析1
1.2系统结构总图1
2数据库设计…………………………………………………………………………2
2.1需求分析2
2.2E-R模型2
2.3表结构设计4
3各窗体设计…………………………………………………………………………5
3.1启动封面窗体及登录对话框的设计5
3.2主窗体7
3.3注册新用户窗体9
3.4分别设计各个信息窗体11
3.5客人就餐管理窗体14
3.6各种信息的查询窗体16
总结…………………………………………………………………………………..20
参考文献……………………………………………………………………………..21
1系统功能概述
1.1系统功能分析
本系统属于小型的餐饮管理系统,可以有效地对中小型餐厅消费进行管理,本系统应达到以下目标:
系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。
实现对餐厅顾客开台、点菜/加菜、账目查询和结账等操作。
对用户输入的数据,进行严格的数据检验,尽可能的避免人为错误。
实现对消费账目自动结算。
实现对消费的历史记录进行查询。
系统应最大限度地实现易维护性和易操作性
1.2系统结构总图
饭店就餐管理系统的结构总图,如图1.1所示
用户管理
菜谱管理
图1.1饭店就餐管理系统的结构总图
2数据库设计
2.1需求分析
本系统运用VB6.0及MicrosoftOfficeAccess2007实现,拥有1个登录窗体、1个主窗体、
8个子窗体、2个数据环境设计器。
登录窗体可以登录到主窗体,点击主窗体的菜单按钮,可以选择具体功能。
1.系统设置管理:
包括菜谱管理,餐桌管理,用户管理
2.数据查询:
数据查询包括:
现态查询
3.查询统计管理:
包含销售金额统计和菜肴销售排行
以上内容需要四个表分别是:
包含以下实体及属性:
1.菜肴信息(菜肴编号,分类,菜名,规格,单价,有效日期)
2.餐桌信息(餐桌编号,餐桌位置,餐桌档次,可容纳人数,是否空闲)
3.账单表(流水号,餐桌编号,就餐时间,就餐人数,应收金额,实收金额,折扣,经手人)
4.账单明细表(流水号,菜肴编号,数量)
5.用户表(用户名,密码)
2.2E-R模型
1.菜谱管理E-R图,如图2.1所示
图2.1菜谱管理
2.餐桌管理E-R图,如图2.2所示
图2.2餐桌管理
3.用户信息E-R图,如图2.3所示
图2.3用户信息
4.登录E-R图
图2.4登录
2.3表结构设计
下面为各个表的设计
1.菜肴信息表
图2.5菜肴信息表
2.餐桌信息表
图2.6餐桌信息表
3.用户信息表
图2.7用户信息表
4.账单表
图2.8账单表
5.账单明细表
图2.9账单明细表
3各窗体设计
3.1启动封面窗体及登录对话框的设计
要求:
图片背景、欢迎类文字、单击显示“进入系统”标题的标签或按钮,将打开“登录”对话框,用户输入用户名和密码,若正确则打开下面的主窗体;否则提示密码错误,请重新输入。
最多允许输入3次。
如图3.1,3.2所示
图3.1进入系统窗体
进入系统后进入登陆主窗体的编码为:
PrivateSubCommand1_Click()
Frmdenglu.Show
EndSub
图3.2登录窗体
登录编码如下:
PrivateSubCommand1_Click()
DimsqlstrAsString
sqlstr="Select*From用户表Where用户名='"&Text1&"'"
Adodc1.RecordSource=sqlstr
Adodc1.Refresh
IfAdodc1.Recordset.EOFThen
MsgBox"用户名错误,重新输入",vbExclamation,"警告"
Text1.Text=""
Text1.SetFocus
Else
IfAdodc1.Recordset.Fields("密码")=Text2Then
MDIForm1.Show
UnloadMe
Else
MsgBox"密码错误,重新输入",vbExclamation,"警告"
Text2.Text=""
Text2.SetFocus
EndIf
EndIf
miCount=miCount+1
IfmiCount=3ThenUnloadMe
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
3.2主窗体
要求:
设计为MDI窗体,含有主菜单:
[文件]、[系统设置管理]、[客人就餐管理]、[数据查询和统计]
[文件]菜单包含以下子菜单及其功能:
[注册新用户]菜单:
打开“注册新用户”窗体
[退出]:
结束程序运行
[系统设置管理]包含以下子菜单:
[菜谱管理]菜单:
显示菜谱信息窗体
[餐桌管理]菜单:
显示餐桌信息窗体
[用户管理]菜单:
显示用户信息窗体
[退出]菜单:
结束程序运行
[客人就餐管理]包含以下子菜单:
[开台]菜单:
打开“开台”窗体,登记客人的餐桌号,并启动“点菜”窗体
[点菜]菜单:
打开“点菜”窗体,修改某餐桌上客人的点菜信息
[结账]菜单:
打开“结账”窗体,选择要结算的餐桌,进行结算,打印账单。
[数据查询和统计]包含以下子菜单:
[现态查询…]:
显示当前每个餐桌的占用/空闲情况,占用餐桌的用餐人数
[销售金额统计]:
按时间段统计饭店的销售总额,累计用餐人数
[菜肴消费排行榜]:
按顺序显示消费次数最多的菜肴名称及其消费次数
如图3.3所示:
图3.3主菜单
其编码如下:
OptionExplicit
PrivateSubcaipu_Click()
Frmcaipu.Show
EndSub
PrivateSubcaiyao_Click()
Frmcaiyaoxiaofei.Show
EndSub
PrivateSubcanzhuo_Click()
Frmcanzhuo.Show
EndSub
PrivateSubdenglu_Click()
Frmdenglu.Show
EndSub
PrivateSubImage1_Click()
EndSub
PrivateSubkeren_Click()
EndSub
PrivateSubtc_Click()
UnloadMe
EndSub
PrivateSubxiantai_Click()
Frmxiantai.Show
EndSub
PrivateSubxiaoshou_Click()
Frmxiaoshoutongji.Show
EndSub
PrivateSubyonghu_Click()
Frmyonghu.Show
EndSub
PrivateSubzhuce_Click()
Frmzhuce.Show
EndSub
3.3注册新用户窗体
用于添加新的用户名和密码。
;单击“注册新用户”菜单,打开对话框如图2
要求:
若新用户名与系统信息表原有用户名相同,则提示“用户名已存在,重新输入”;判断二次输入密码若不一致,则提示用户“输入密码不一致,重新输入密码”;判断若输入密码为空,则提示“密码不能为空”;若输入正确,则将输入的用户名保存到“系统信息”表,并提示“注册用户成功”,关闭本窗体。
以下各窗体设为MDI主窗体的子窗体,如图3.43.5所示:
图3.4注册用户窗体
其编码为:
PrivateSubCommand1_Click()
DimsqlstrAsString
IfText1=""Then
MsgBox"请输入用户名!
",vbExclamation,"确认用户名"
Text1.SetFocus
ExitSub
Else
sqlstr="Select*from用户表where用户名='"&Text1&"'"
Adodc1.RecordSource=sqlstr
Adodc1.Refresh
IfAdodc1.Recordset.EOF=FalseThen
Text1=""
Text1.SetFocus
ExitSub
EndIf
EndIf
'判断二次输入密码是否一致:
IfText2<>Text3Then
MsgBox"二次输入的密码不一致,请重新输入",vbExclamation,"检验密码"
Text2="":
Text3=""
Text2.SetFocus
ExitSub
ElseIfText2=""Then
MsgBox"密码不能为空!
",vbExclamation,"检验密码"
Text2.SetFocus
Else
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields("用户名")=Trim(Text1)
Adodc1.Recordset.Fields("密码")=Trim(Text2)
Adodc1.Recordset.Update
Me.Hide
MsgBox"成功注册新用户!
",vbInformation,"添加用户"
EndIf
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
3.4分别设计各个信息窗体
功能:
浏览和录入各信息。
该窗体以文本框显示当前记录,用按钮[首记录]、[末记录]、[前一个]、[后一个],控制记录指针的移动;用一个标签Label显示:
当前记录号/记录总数;单击[表格显示]按钮,显示DataGrid控件(Visible=True),以表格形式显示商品信息表,单击[返回]按钮,可以关闭本窗体,返回主窗体。
可以对记录进行新增、确认、删除、取消操作。
如图3.73.83.9所示:
图3.5菜谱管理窗体
图3.6餐桌管理窗体
图3.7用户管理窗体
其编码为:
OptionExplicit
PrivateSubCommand1_Click()
Adodc1.Recordset.AddNew
Command1.Enabled=False
Command2.Enabled=False
Command3.Enabled=True
Command4.Enabled=True
EndSub
PrivateSubCommand10_Click()
Adodc1.Recordset.MovePrevious'记录指针移到前一条记录
Command9.Enabled=True
Command8.Enabled=True
IfAdodc1.Recordset.BOFThen'如果记录指针移到首记录之前,
Adodc1.Recordset.MoveFirst'则记录指针移到首记录上
Command5.Enabled=False
Command10.Enabled=False
EndIf
Label3.Caption="记录:
"&Adodc1.Recordset.AbsolutePosition&"/"&Adodc1.Recordset.RecordCount
EndSub
PrivateSubCommand2_Click()
Dimx
x=MsgBox("确实要删除当前记录吗?
",vbYesNo+vbQuestion,"确认")
Ifx=vbYesThen
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveNext
IfAdodc1.Recordset.EOFThen
Adodc1.Recordset.MoveLast
EndIf
Else
Adodc1.Refresh
EndIf
EndSub
PrivateSubCommand3_Click()
Adodc1.Recordset.Update
Command1.Enabled=True
Command2.Enabled=True
Command3.Enabled=False
Command4.Enabled=False
EndSub
PrivateSubCommand4_Click()
Adodc1.Refresh
Command1.Enabled=True
Command2.Enabled=True
Command3.Enabled=False
Command4.Enabled=False
EndSub
PrivateSubCommand5_Click()
Adodc1.Recordset.MoveFirst'记录指针移到首记录(显示首记录)
Command5.Enabled=False'让[首记录]按钮无效
Command10.Enabled=False'让[前移]按钮无效
Command9.Enabled=True'让[后移]按钮有效
Command8.Enabled=True'让[末记录]按钮有效
Label3.Caption="记录:
"&Adodc1.Recordset.AbsolutePosition&"/"&Adodc1.Recordset.RecordCount
EndSub
PrivateSubCommand7_Click()
DimnAsInteger
n=Text3.Text
Adodc1.Recordset.Moven
Label3.Caption="记录:
"&Adodc1.Recordset.AbsolutePosition&"/"&Adodc1.Recordset.RecordCount
EndSub
PrivateSubCommand8_Click()
Adodc1.Recordset.MoveLast'移到末记录
Command5.Enabled=True
Command10.Enabled=True
Command9.Enabled=False
Command8.Enabled=False
Label3.Caption="记录:
"&Adodc1.Recordset.AbsolutePosition&"/"&Adodc1.Recordset.RecordCount
EndSub
PrivateSubCommand9_Click()
Adodc1.Recordset.MoveNext'记录指针移到下一条记录
Command5.Enabled=True
Command10.Enabled=True
IfAdodc1.Recordset.EOFThen'如果记录指针移到了末记录之后
Adodc1.Recordset.MoveLast'则记录指针移到末记录上
Command9.Enabled=False
Command7.Enabled=False
EndIf
Label3.Caption="记录:
"&Adodc1.Recordset.AbsolutePosition&"/"&Adodc1.Recordset.RecordCount
EndSub
3.5客人就餐管理窗体
如下图:
图3.8开台窗体
图3.9点菜窗体
图3.10结账窗体
其编码为:
PrivateSubCommand1_Click()
'Adodc1.Recordset.AddNew
Adodc1.Recordset.Update
Command1.Enabled=False
Command2.Enabled=True
EndSub
PrivateSubCommand2_Click()
Adodc1.Refresh
Command1.Enabled=True
Command2.Enabled=False
Frmdiancai.Show
EndSub
PrivateSubCommand1_Click()
'Adodc1.Recordset.AddNew
Adodc1.Recordset.Update
Command1.Enabled=False
Command2.Enabled=True
EndSub
PrivateSubCommand2_Click()
Adodc1.Refresh
Command1.Enabled=True
Command2.Enabled=False
Frmjiezhang.Show
EndSub
PrivateSubCommand1_Click()
UnloadFrmjiezhang
MDIForm1.Show
EndSub
3.6各种信息的查询窗体
可以按各种条件查找,这些条件放在组合列表框Combo中,供用户选择。
在文本框中输入要查询的内容,单击[查询]按钮,查询结果用网格控件显示.。
如图3.133.14所示:
图3.11现态查询窗体
其编码为:
DimstrAsString
str="Select*From餐桌信息"
str=str&"Where餐桌信息."&Combo1.Text&"Like'"&Text1&"%'
Adodc1.RecordSource=str
Adodc1.Refresh
EndSub
PrivateSubCommand2_Click()
UnloadFrmxiantai
MDIForm1.Show
EndSub
PrivateSubForm_Load()
Combo1.AddItem"可容纳人数"
Combo1.AddItem"是否空闲"
Combo1.Text="可容纳人数"
Text1.Text="
EndSub
图3.12消费金额统计窗体
其编码为:
PrivateSubCommand1_Click()
DimstrAsString
str="Select*From账单表"
str=str&"Where账单表."&Combo1.Text&"Like'"&Text1&"%'"
Adodc1.RecordSource=str
Adodc1.Refresh
EndSub
PrivateSubCommand2_Click()
UnloadFrmxiaoshoutongji
MDIForm1.Show
EndSub
PrivateSubForm_Load()
Combo1.AddItem"就餐人数"
Combo1.AddItem"实收金额"
Combo1.Text="就餐人数"
Text1.Text=""
EndSub
图3.13菜肴统计窗体
其编码为:
OptionExplicit
PrivateSubCommand1_Click()
DimstrAsString
str="Select*From账单明细表"
str=str&"Where账单明细表."&Combo1.Text&"Like'"&Text1&"%'"Adodc1.RecordSource=str
Adodc1.Refresh
EndSub
PrivateSubCommand2_Click()
UnloadFrmcaiyaoxiaofei
MDIForm1.Show
EndSub
PrivateSubForm_Load()
Combo1.AddItem"菜肴编号"
Combo1.AddItem"数量"
Combo1.Text="菜肴编号"
Text1.Text=""
EndSub
总结
经过了接近一周的时间,我们组成员共同合作做的c#餐饮管理系统课程设计基本接近尾声了,做完这次的餐饮管理系统c#的课程设计,我对餐饮管理系统设计有了整体的感知。
能把C#语言讲清楚.以基础为主,从简单入手,逐渐扩展开来,了解和学会了很多这方面的知识,掌握了C#的语法以及面向对象程序设计思想和方法,以windows程序为主,课程设计贴近我们的生活,使用价值高。
读者会对餐饮管理系统的整体设计有一个深入的了解,对整个流程也会有一个清晰的认识。
开发餐饮管理系统,要抓住开发的核心部分。
餐饮系统大体由登录、桌台管理、开台、点菜、结账和密码修改等6大模块组成,只要掌握了这6个部分的开发,餐饮管理系统便会初具规模。
而其他功能都是在这6个功能的基础上去补充添加的,也可以说是附属功能,
经过测试,各项功能基本符合要求 。
作为计算机应用的一部分,我们做的餐饮管理系统使用计算机对餐饮信息进行管理,具有比手工管理无法比拟的优点,比如检索速度快,查询方便,可靠性高,存储容量大,信息处理速度大,成本低等。
这些优点能极大地提高信息管理的效率,也是在计算机信息技术日渐成熟的今天使企业走向科学化、规范化、正规化管理、提高竞争力,及时与世界接轨的重要条件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 饭店 就餐 管理 系统 数据库