《数据库餐饮管理系统课程设计(共22页).doc》由会员分享,可在线阅读,更多相关《数据库餐饮管理系统课程设计(共22页).doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上 目录第一章 前言21.1开发背景21.2开发工具21.3开发目标2第二章 需求分析3第三章 总体设计43.1系统功能结构43.2程序流程图5第四章 数据库设计64.1概念结构设计64.2逻辑结构设计84.3物理结构设计86、商品类别信息表如表4-6所示10第五章 详细设计115.1登陆部分115.2主界面115.3职工信息查询125.4桌台信息查询135.5辅助工具135.6修改密码、锁定功能145.7开台部分145.8结账部分155.9点/加菜部分155.10消费查询部分165.11用户权限管理16第六章 编码17第七章 测试19第八章 设计总结21致谢22参考文
2、献22第一章 前言1.1开发背景 近几年来,计算机网络。分布及技术日趋成熟,随着科技的发展,餐饮业的竞争也越来越激烈。想在这样激烈的环境中生存,就必须运用科学的管理思想与先进的管理方法,使点餐与管理一体化。这样不仅可以提高工作效率,也避免了以前手工作业的麻烦,从而是管理者能够准确。有效的管理。因此,餐饮业的管理者更像从科学的管理中去的竞争的优势,在激烈竞争的商业市场中取胜。1.2开发工具硬件:笔记本电脑软件:Windows XP操作系统 Microsoft Visual Studio 2008 Microsoft SQL Server 2000本系统是采用 C#技术结合SQL Server数据
3、库设计并实现的。窗口的开发工具为Microsoft Visual Studio 2008,数据库使用的是SQL Server 2000 Express Edition。编程语言采用的是c#。1.3开发目标1、系统采用人机交互的方式,界面友好美观,信息查询灵活方便,数据库存储安全可靠。2、实现对餐厅顾客开台、点菜/加菜、账目查询和结账等操作。3、对用户输入的数据进行严格的检验,尽可能的避免人为错误。4、实现对消费账目自动结算。5、实现对消费的历史记录进行查询,支持模糊查询。6、系统应尽大限度的实现易维护性和易于操作性。7、界面尽可能美观大方,易学易用。第二章 需求分析 随着餐饮业的不断发展,餐饮
4、管理系统的内容对于餐饮业的决策者和管理者来说都非常重要。本系统主要包括桌台显示、消费查询、人事档案及权限等几大部分,具有良好的用户接口,使用方便具有完善的查询,对维护系统起到辅助决策的作用,能及时、方便、灵活的进行查询、修改删除等维护性操作。餐饮管理系统有足够大的存储容量,满足酒店每日营业的变动,另外对于操作用户有一定的管理,并对用户的权限有一定的设置。为了使系统更加人性化,便于管理员管理,此系统的用户将分为两种类型,一个是针对员工的餐饮管理系统,一个是针对管理员(店主)的餐饮管理系统。超级管理员拥有所有权限。经理除了系统维护外,其他操纵都可以,普通用户只能实现辅助工具的使用权限。不同用户的权
5、限如下:员工使用本餐饮信息管理系统应可以实现以下功能:1、使用辅助工具(日历、记事本、计算器)2、查询统计(收入日报)3、使用帮助菜单4、退出系统管理员使用本餐饮信息管理系统应可以实现以下功能:1、进行基础信息的查询修改(开桌信息、职员信息、食品信息)2、使用辅助工具(日历、记事本、计算器)3、进行系统维护(权限管理)4、系统设置(密码修改、系统锁定)5、查询统计(收入日报)6、使用帮助7、退出系统除了实现以上功能外,本系统还需要方便用户地使用,使得用户可以很快地熟练掌握,从而可以让用户快速的投入工作。并且要避免逻辑错误的出现。第三章 总体设计3.1系统功能结构本餐饮管理系统需要分为以下几个功
6、能模块并分别实现。具体的功能结构如图3-1所示。1、 基础信息模块:用来查询桌台信息和职员信息。2、 辅助工具模块:包括日历,记事本,计算机等小的辅助工具。3、 系统维护模块:用来管理权限,系统备份和恢复。4、 系统设置模块:用来设置密码,锁定系统。5、 帮助模块:用来存放有关本系统的信息。6、 退出模块:退出系统。 图3-1系统功能结构图3.2程序流程图本系统程序流程图如图3-4所示。首先用户打开系统,输入登录名和密码,若点击登录,验证登录名密码正确后进入主界面,若点击取消,则停留在系统登陆界面。进入主界面之后,系统会验证该用户是管理员还是普通用户,若为管理员,则该用户可以使用系统维护,系统
7、设置,基础信息功能模块,若不是管理员,则只能访问辅助工具,退出,帮助模块。 图3-2程序流程图第四章 数据库设计4.1概念结构设计 商品信息表商品系统编号商品类别编号商品代号商品名称商品价格1、商品信息表E-R图如图4-1所示图4-1商品信息表实体E-R图 2、顾客消费信息表E-R图如图4-2所示顾客消费信息表系统编号消费时间消费桌台名称备注信息开单人商品价格消费商品数量商品名称商品代号 图4-2顾客消费信息表实体E-R图 3、桌台信息E-R图如图4-3所示桌台信息表顾客人数开单人开台时间顾客名称其他信息系统编号桌台备注桌台类型桌台名称桌台简称桌台包间费桌台位置桌台状态 图4-3桌台信息表实体
8、E-R图4、 用户信息E-R图如图4-4所示用户信息表系统编号登陆账号登录密码账号权限 图4-4用户信息表实体E-R图5、 职员信息表E-R图如图4-5所示职员年龄职员电话职员性别职员信息表系统编号职员编号职员姓名身份证号 图4-5职员信息表实体E-R图4.2逻辑结构设计本系统的关系模式如下:商品信息表(商品系统编号,商品类别编号,商品代码,商品名称,商品价格)顾客消费信息表(消费时间,消费桌台名称,备注信息,开单人,商品价格,商品消费数量,商品名称,商品代号,系统编号)桌台信息表(系统编号,桌台名称,桌台简称,桌台包间费,桌台位置,桌台状态,桌台类型,桌台备注,其他信息,顾客名称,开台时间,
9、顾客人数,开单人)用户信息表(系统编号,登陆账号,登录密码,账号权限)职员信息表(系统编号,职员姓名,身份证号,职员编号,职员性别,职员年龄,职员电话)4.3物理结构设计根据各表的逻辑结构,创建表结构如下:1、商品信息表如表4-1所示 表4-1 字段名数据类型长度主键描述IDInt4是系统编号FoodtyChar10否类别编号FoodnumChar10否商品代号FoodnameVarchar50否商品名称FoodpriceDecimal9否商品价格2、顾客消费新表如表4-2所示 表4-2 字段名数据类型长度主键描述IDInt4是系统编号FoodnumChar10否商品代号FoodnameVar
10、char50否商品名称FoodsumChar10否消费数量FoodallpriceDecimal9否商品价格WaiternameVarchar50否服务员姓名BeizhuVarchar50否备注ZhuotaiChar10否消费桌台DatatimeVarchar50否消费时间3、桌台信息表如表4-3所示 表4-3 字段名数据类型长度主键描述IDInt4是系统编号RoomnameChar10否桌台名称RoomjcChar10否桌台简称RoombjfDecimal9否桌台包间费RoomwzChar10否桌台位置RoomztChar10否桌台状态RoomtypeChar10否桌台类型RoombzVar
11、char50否桌台备注RoomqtVarchar50否桌台其他信息GuestnameVarchar50否顾客姓名ZhangdandateVarchar50否开台时间NumInt4否顾客人数WaiternameVarchar50否服务员姓名4、用户信息表如表4-4所示 表4-4 字段名数据类型长度主键描述IDInt4是系统编号UsernameVarchar50否用户登录名UserpwdVarchar50否用户密码PowerChar10否用户权限5、 职员信息表如表4-5所示 表4-5 字段名数据类型长度主键描述IDInt4是系统编号WaiternameVarchar50否职员姓名CardnumV
12、archar50否身份证号码WaiternumChar10否职员编号SexChar10否性别AgeChar10否年龄TelVarchar50否电话6、商品类别信息表如表4-6所示字段名数据类型长度主键描述IDInt4是系统编号FoodtypeVarchar50否商品类别名称第五章 详细设计5.1登陆部分登陆界面设计如图5-1所示。运行系统,出现该界面,欢迎使用餐饮管理系统,有用户名和密码两个输入框,下方有登陆和取消供用户自主选择,另外输入完毕,按enter键作用和登陆相同。 图5-15.2主界面主界面设计如图5-2所示输入正确的用户名和密码后,点击登陆,系统验证无误后进入主界面,主界面上各个图
13、标代表着各个桌台,图标下方有桌台号,绿色对号表示桌台空闲,红色叉号表示桌台正在被占用。 图5-25.3职工信息查询职工信息查询模块设计如图5-3所示了解职工信息,可通过基础信息功能模块中的职员信息进行查询。 图5-35.4桌台信息查询桌台查询信息如图5-4所示了解桌台信息,可通过基础信息功能模块中的桌台信息进行查询。 图5-45.5辅助工具辅助工具如下:日历如图5-5所示,记事本如图5-6所示,计算器如图5-7所示 图5-5 图5-6 图5-75.6修改密码、锁定功能系统设置模块的修改密码设计如图5-8所示,锁定系统如图5-9所示 图5-8 图5-95.7开台部分开台部分设计如图5-10所示
14、图5-105.8结账部分结账部分设计如图5-11所示 图5-115.9点/加菜部分点/加菜部分设计如图5-12所示 图5-125.10消费查询部分消费查询设计如图5-13所示结账之前可以先查询消费信息。 图5-135.11用户权限管理用户权限管理设计如图5-14所示用户可以设置用户的权限级别。 图5-14第六章 编码几项关键代码如下:1、连接数据库验证用户名密码: public frmLogin() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) comboBox1.Focus(); priv
15、ate void txtPwd_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyChar = 13) btnSubmit_Click(sender, e); private void btnSubmit_Click(object sender, EventArgs e) if (comboBox1.Text = ) MessageBox.Show(请输入用户名, 警告, MessageBoxButtons.OK, MessageBoxIcon.Warning); else if (txtPwd.Text = ) MessageBox.
16、Show(请输入密码, 警告, MessageBoxButtons.OK, MessageBoxIcon.Warning); else SqlConnection conn = BaseClass.DBConn.CyCon(); conn.Open(); SqlCommand cmd = new SqlCommand(select count(*) from tb_User where UserName= + comboBox1.Text + and UserPwd= + txtPwd.Text + , conn); int i = Convert.ToInt32(cmd.ExecuteSca
17、lar(); if (i 0) cmd = new SqlCommand(select * from tb_User where UserName= + comboBox1.Text + , conn); SqlDataReader sdr = cmd.ExecuteReader(); sdr.Read(); string UserPower = sdrpower.ToString().Trim(); conn.Close(); frmMain main = new frmMain(); main.power = UserPower; main.Names = comboBox1.Text;
18、main.Times = DateTime.Now.ToShortDateString(); main.Show(); this.Hide(); else comboBox1.Text = ; txtPwd.Text = ; if (MessageBox.Show(用户名或密码错误!, 警告,MessageBoxButtons.OK,MessageBoxIcon.Warning)=DialogResult.OK)2、对菜品添加、删除、修改等操作。private void button5_Click(object sender, EventArgs e) SqlConnection conn =
19、 BaseClass.DBConn.CyCon(); /select foodname ,foodtype ,foodnum,foodprice from tb_food,tb_foodtype where tb_food.foodty=tb_foodtype.foodty order by id asc SqlDataAdapter da = new SqlDataAdapter(select foodname ,foodty ,foodnum,foodprice from tb_food, conn); DataSet ds = new DataSet(); da.Fill(ds); /部
20、分代码省略 else cmd = new SqlCommand(insert into tb_food (foodname,foodty,foodnum,foodprice) values( + foodname.Text + , +cboxclass.SelectedItem.ToString().Trim()+ , + textBox1.Text + , + txtprice.Text + ), conn); int x=cmd.ExecuteNonQuery(); conn.Close(); if (x 0) MessageBox.Show(添加成功);第七章 测试 选用一测试用例对系统
21、进行测试:王浩带4位朋友开大厅二号桌,点了鸳鸯锅底一份,肥牛一份,鸭血一份,千张一份,生菜两份,劲酒两瓶,中华一盒。折扣后消费共计160.55元,王浩拿出两百元,需要找零39.45元。测试结果如下:1、未开台之前,大厅二号图标显示空闲状态,如图7-1所示 图7-12、开台时填写顾客姓名,用餐人数等问题,开台单如图7-2所示 图7-23、开台之后,大厅二号台图标显示被占用状态,如图7-3所示: 图7-34、开始点菜,点菜单如图7-4所示 图7-45、消费完毕时,顾客结账,系统自动计算找零,如图7-5所示 图7-56、结账完毕,大厅二号桌图标恢复空闲状态,如图7-1所示。第八章 设计总结 本次课程
22、设计之所以选择餐饮信息管理系统,不仅仅是因为其具有挑战性,更是因为它更加符合中国广大的中小餐饮企业的发展需要,大家都知道,中国的餐饮服务行业最多的是个体经营模式,他们根本不会花费过多的费用架设网络服务器,大多数店主都希望有一款产品可以满足餐饮管理的需要而且花费的价格也相对低廉,甚至一次投资终身受益。而餐饮信息管理系统的出现就完全可以满足他们的愿望。餐饮信息管理系统的诞生可以为他们提供便捷的管理服务。并且几乎为零的错误率也使得餐厅可以更好的为顾客服务。它不仅可以为餐厅降低人力资源的付出,节省了成本,而且也可以提升自身的形象,使餐厅迎来更多的食客。 此次程序设计,付出了很多的时间和精力,也遇到了许
23、多的困难可挫折,但经过努力,餐饮信息管理系统终于得以实现其功能了,一种小小的成就感油然而生,虽然许多的代码都是参考着书上的实例,但是在输入的过程中,又对学习过的知识进行了回顾和复习,对新接触的东西有了初步的了解。而编程过程中,我看到了自己许多不足,例如程序编写的有点杂乱,造成编译时错误不好找到,没有足够的耐心,有点急功近利,修改编译错误时不能做到系统的分析,造成程序越改越乱,影响了情绪,丢掉了信心。同时,我也深切感受到了程序员的艰辛,明白了作为一个程序员应该尽可能的为用户考虑,缜密的思维,让程序不断地人性化,可操作性强,界面尽可能的友好,把完美作为自己的目标。当然,世界上没有任何一样东西是十全
24、十美的,在完成了餐饮信息管理系统后,我发现,原本看上去应该比较完善的系统又有了新的可以改进的地方,如预定的餐点要取消其中的一份该如何实现。我想如果我把这个功能实现了,也许又会有新的功能需要我去做,系统的完善不是一朝一夕可以完成的,如果给我更多的时间,我一定能将它制作的更好。这次任务完成的过程给我上了生动而难忘的一课,面对一次次的挫折与打击,我不会投降,不会屈服,我会选择咬牙坚持;为了远方的目标,我会不懈的努力,一点点的去接近,我相信,往往黎明前是最黑暗的,咬牙坚持挺过最困难的时候,也就意味着看到光明的时候。致谢 在这次课程设计的撰写过程中,我得到了许多人的帮助。首先我要感谢我的老师在课程设计上
25、给予我的指导、提供给我的支持和帮助,这是我能顺利完成这次报告的主要原因,更重要的是老师帮我解决了许多技术上的难题,让我能把系统做得更加完善。在此期间,我不仅学到了许多新的知识,而且也开阔了视野,提高了自己的设计能力。其次,我要感谢帮助过我的同学,他们也为我解决了不少我不太明白的设计商的难题。同时也感谢学院为我提供良好的做课程设计的环境。最后再一次感谢所有在本次课程设计中曾经帮助过我的良师益友和同学。参考文献1刘甫迎、刘光会、王蓉.C#程序设计教程(第2版).北京:电子工业出版社,2008 2Microsoft Visual C# 2008 help,2008 3李兰友 杨晓光.Visual C
26、#.NET程序设计.北京:清华大学 北方交通大学出版社,2004 4王昊亮,李刚等.Visual C#程序设计教程.北京:清华大学出版社,2003 5佟伟光.Visual Basic.NET实用教程.北京:电子工业出版社,2003 6 施燕妹 陈培 陈发吉.C#语言程序设计教程.北京:中国水利水电出版社.2004 7 孙永强等. Visual C#.NET入门与提高.北京:清华大学出版社. 2002 8 郭胜等.C#.NET程序设计教程.北京:清华大学出版社. 2002 9 明月创作室.Visual C#编程精彩百例.北京:人民邮电出版社.200110 期刊论文,-11 期刊论文-专心-专注-专业