vb课程设计报告点菜系统Word文档格式.docx
《vb课程设计报告点菜系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《vb课程设计报告点菜系统Word文档格式.docx(29页珍藏版)》请在冰豆网上搜索。
2.1系统概述…………………………………………………………………………
2.2系统的组成及各模块的功能………………………………………………
2.3系统的运行环境………………………………………………
3系统设计…………………………………………………………………
3.1总体结构设计………………………………………………………………
3.2数据库设计………………………………………………………………
4系统实现…………………………………………………………………
4.1登陆模块的设计与实现…………………………………………………
4.2其他(如学生信息模块)模块的设计与实现…………………………………
5.总结……………………………………………………………………
5.1总结………………………………………………………………
5.2存在的主要问题………………………………………………………………
参考文献………………………………………………………………
饭店点菜管理系统软件设计
一.选题的意义
伴随我国经济的快速发展,人民生活水平的不断提高,餐饮行业亦欣欣向荣。
但是发展的同时又带来很多问题,例如餐馆的管理者每天需要处理大量的数据,由于没有较好的数据处理软件,使工作效率低下,而且容易出错,带来很多麻烦。
本款系统可以有效的处理大量数据,为管理者的决策提供可靠的数据依据,帮助经营者管理好,减少不必要的损失,减轻工作压力,提高工作效率。
使数据处理有序化,可靠化,合理化,简单化,高效化。
另一方面,通过本系统的设计开发,使我们对软件开发有了初步的认识,特别是认识到数据库对数据处理的有效性,可靠性,重要性和高效性。
使我们掌握了基本的数据库技术知识,并且有效地提高了我们的编程能力,为后续课程的学习奠定了比较坚实的基础。
也使我们掌握了很多方法,提高了我们的思维能力,引导我们理论与实践相结合,提高解决实际问题的能力,培养了我们的创新意识。
二系统功能需求分析
1.系统概述
本软件系统共有十一个窗体和一个数据库,一个菜谱图片文件夹组成,窗体名称分别是点才系统管理,菜谱管理,访问权限,顾客建议,顾客结账,加菜管理,前台主页,请您抽奖,请您点菜,请您评价,统计欢迎指数等。
可以基本完成顾客点菜,结账,抽奖,评价和经营者对数据处理的各项功能。
2.系统的组成及各模块的作用
(1).点菜管理系统
这是本系统的启动窗体,主要有顾客专用,前台服务,后台管理,前台主页四个菜单组成。
分别供不同角色的人员使用,如餐馆机经理,服务员,顾客等。
代码如下:
PrivateSubForm_Load()
Label1.Left=点菜管理系统.ScaleWidth
Timer1.Enabled=True
EndSub
PrivateSubjiacaiguanli_Click()
加菜管理.Show
PrivateSubjianyi_Click()
顾客建议.Show
PrivateSubjiezhang_Click()
顾客结账.Show
PrivateSubpingjia_Click()
请您评价.Show
PrivateSubqiantaizhuye_Click()
前台主页.Show
PrivateSubTimer1_Timer()
IfLabel1.Left+Label1.Width>
0Then
Label1.MoveLabel1.Left-50
Else
EndIf
PrivateSubzhishu_Click()
统计欢迎指数.Show
(2).前台主页
主要功能是供顾客使用,顾客点菜,评价,抽奖都由此窗体进入。
PrivateSubCommand1_Click()
请您点菜.Show
PrivateSubCommand2_Click()
PrivateSubCommand3_Click()
请您抽奖.Show
(3).请您评价
顾客可以给每一道菜做出自己的评价:
极好,好,一般,差劲,系统将自动给每一道菜打分,并存入数据库,为经理的决策提供可靠的数据支持。
顾客还可以说不多于50字的评价短语,一并存入数据库供经理分析。
Adodc1.ConnectionString=lianjie()
Adodc1.RecordSource="
select*from菜单where"
&
Combo1.Text
Adodc1.Refresh
IfText1.Text="
"
OrText2.Text="
Then
MsgBox"
上限或下限不能为空"
vbOKOnly+vbExclamation,"
警告"
ExitSub
IfNotIsNumeric(Trim(Text2.Text))Then
编号应为数字"
Text2.SetFocus
IfNotIsNumeric(Trim(Text1.Text))Then
Text1.SetFocus
select*from菜单where菜单.欢迎指数>
Text1.Text&
"
and"
<
Text2.Text
Combo1.AddItem("
欢迎指数<
0"
)
欢迎指数=0"
欢迎指数>
0and<
100"
100"
DataGrid1.Columns(0).Caption="
编号"
DataGrid1.Columns
(1).Caption="
菜名"
DataGrid1.Columns
(2).Caption="
分类"
DataGrid1.Columns(3).Caption="
价格"
欢迎指数"
(4)请您点菜
顾客可以根据自己的需要进行选择:
养生菜,特色菜,热菜,凉菜,汤,茶等。
图片框将显示这道菜的图片,列表框将显示其价格供顾客参考。
顾客可以点击“上一道菜”“下一道菜”进行切换。
点击“点菜完毕”系统将自动将数据存入数据库。
点击“确定点菜”系统将自动将数据存入顾数据库。
PrivateSubcmdfirst_Click()
Adodc1.Recordset.MoveFirst
Cmdfirst.Enabled=False
Cmdshang.Enabled=False
Cmdlast.Enabled=True
Cmdnext.Enabled=True
Image1.Picture=LoadPicture("
c:
\菜谱\"
Adodc1.Recordset.Fields("
).Value&
\"
).Value)
PrivateSubCmdlast_Click()
Adodc1.Recordset.MoveLast
Cmdfirst.Enabled=True
Cmdshang.Enabled=True
Cmdlast.Enabled=False
Cmdnext.Enabled=False
PrivateSubCmdnext_Click()
Adodc1.Recordset.MoveNext
IfAdodc1.Recordset.EOFThen
PrivateSubCmdshang_Click()
Adodc1.Recordset.MovePrevious
IfAdodc1.Recordset.BOFThen
PrivateSubCommand10_Click()
select*from顾客点菜"
Adodc1.Recordset.AddNew
).Value=Val(Text4.Text)
).Value=List1.List
).Value=List3.List
Adodc1.Recordset.Update
Adodc1.Recordset.Close
DimshumuAsInteger
select*from菜单where分类=养生菜"
shumu=Adodc1.Recordset.RecordCount
Label1.Caption="
共"
shumu&
道菜"
Text2.Text=Adodc1.Recordset.Fields("
Text3.Text=Adodc1.Recordset.Fields("
PrivateSubCommand9_Click()
List4.List=Adodc1.Recordset.Fields("
).Value
List1.List=Adodc1.Recordset.Fields("
List3.List=Adodc1.Recordset.Fields("
List2.List=Adodc1.Recordset.Fields("
(5)请您抽奖
顾客结账后可以进行抽奖活动,点击开始,文本框将不断变化数字,点击结束,系统将根据文本框的数字确定顾客的奖项。
此窗体主要运用timer控件。
DimnAsInteger,mAsString
Text1.Text="
Text2.Text="
Timer1.Interval=10
Command2.Enabled=True
EndSub
Timer1.Enabled=False
Command1.Enabled=True
n=Val(Int(Rnd()*10))
SelectCasen
Case1
恭喜您获得移动充值卡一张"
Case2
恭喜您获得世博会门票一张"
Case3
恭喜您获得南非世界杯门票一张"
Case4
恭喜您获得人民币100元"
EndSelect
Text2.Text=Val(Int(Rnd()*3+1))
(6)加菜管理
输入顾客的编号,列表框将显示顾客所点之菜,当输入所加菜的菜名,点击“添加”,系统将自动为顾客加菜。
编码如下:
DimwhsAsInteger
IfText1.Text<
>
whs=Val(Text1.Text)
select*from顾客点菜where顾客点菜.编号='
whs&
'
List1.AddItemVal(Text2.Text)
Text2.SelStart=0
Text2.SelLength=Len(Text2.Text)
IfList1.ListIndex<
-1Then
x=List1.ListIndex
List1.RemoveItemx
PrivateSubCommand4_Click()
)=List1.List
PrivateSubList1_Click()
DimxAsInteger
Text2.Text=List1.List(x)
(7)顾客结账
当输入顾客编码点击确定,列表框显示菜名,价格。
点击“计算”,系统将显示顾客的费用。
IfTrim(Text1.Text)="
顾客编号不能为空"
顾客编号应为数字"
select*from顾客点菜where顾客编号='
Val(Text1.Text)&
DimwmAsInteger
DimiAsInteger
s=0
wm=List2.ListCount
Fori=0Towm
s=s+Val(List2.List(i))
Nexti
Text2.Text=s
您的消费为"
s&
元"
IfText2.Text="
请您先计算费用"
费用"
).Value=Val(Text2.Text)
已经保存"
(8)菜谱管理
此窗体主要供经营者使用,可以根据饭店的实际情况,对自己的菜谱进行查询,添加和维护。
DimwhsAsString
IfCombo1.Text<
IfCombo1.Text="
按菜名"
whs="
where菜单.菜名='
Combo1.Text&
ElseIfCombo1.Text="
按分类"
where菜单.分类='
select*from菜单"
whs
SetDataGrid1.DataSource=Adodc1
MsgBox("
请输入条件"
Combo1.SetFocus
IfTrim(Text2.Text)="
OrTrim(Text3.Text)="
OrTrim(Text4.Text)="
OrTrim(Combo2.Text)="
字段不能为空"
Adodc2.RecordSource="
select*from菜单where编号='
Trim(Text2.Text)&
Adodc2.Refresh
IfNotAdodc2.Recordset.EOFThen
编号已存在,请重新输入"
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields(编号)=Val(Trim(Text2.Text))
Adodc2.Recordset.Fields(菜名)=Trim(Text3.Text)
Adodc2.Recordset.Fields(分类)=DataCombo2.Text
Adodc2.Recordset.Fields(价格)=Val(Trim(Text4.Text))
Adodc2.Recordset.Update
添加成功"
信息提示"
Adodc2.Recordset.Close
PrivateSubCommand