餐饮管理系统实训报告.doc_第1页
餐饮管理系统实训报告.doc_第2页
餐饮管理系统实训报告.doc_第3页
餐饮管理系统实训报告.doc_第4页
餐饮管理系统实训报告.doc_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州轻工业学院软件学院实 训 报 告实训名称:C#程序设计姓 名: 陈 鹏 院 (系): 软 件 学 院 专业班级: 过 程 控 制 11- 01 学 号: 541113470103 指导教师: 黄 艳 成 绩: 时间:2012年12月24日至2013年1月11日目录引言第一章 学生实训任务书4第二章 实训进度日历5第三章 餐厅管理系统的需求分析3.1系统功能描述与系统基本流程图5第四章 系统的设计与实现4.1 数据库的设计74.2 登录模块设计94.3 点菜功能模块设计4.3.1 开台模块设计114.3.2 点菜模块设计124.4 消费结账模块设计154.5菜单管理模块设计4.5.1 菜单添加模块174.5.2 菜单修改模块194.6 餐厅人员信息管理模块设计4.6.1 餐厅人员信息添加模块设计214.6.2 餐厅人员信息修改模块设计224.7 桌台信息管理模块设计244.8 盈利管理模块设计26第五章 实训感想28引言近年来,随着人民的生活水平的不断提高,餐饮业的消费持续增长,竞争愈来愈激烈。然而,传统餐饮企业的日常运作还是靠人工管理,从菜单入库到客人点单,再到结账基本上由人工完成记录,这样做不仅耗费人力资源而且容易导致记录丢失或重复等错误,造成管理水平低下。随着社会经济的迅速发展和现代科学技术的进步,人类社会正逐渐走向现代化。计算机事业的飞速发展,使得以计算机与通信技术为基础的信息系统正处于蓬勃发展的时期,通过计算机管理餐饮企业的日常运作,给管理者以决策参考的模型,来不断完善管理水平,提高工作效率。作为计算机应用的一部分,使用计算机对餐饮企业信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高信息管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。本系统选择目前市场上价格比较低廉的数据库服务器产品: sql server 2000及配套的平台Windows XP。而前台开发工具采用Microsoft Visual Studio 2008,语言用C#,利用其可视化的开发环境、丰富的控件资源,快速开发出了餐饮管理信息系统应用程序。第一章 实训任务书一、题目餐厅管理系统的设计与实现二、用户需求及约束条件1 数据库中的数据要能够支持以下功能需求:a) 餐厅管理系统包括管理人员登陆模块, 菜单管理, 桌台管理, 餐厅人员管理, 点菜功能, 消费结帐, 查询统计功能等。b) 此系统功能分为面向管理员和餐厅经理,其中前台管理员可以进行桌台管理,点菜,消费结帐, 信息的查询统计功能,餐厅经理可以进行餐厅人员管理,盈利管理等。三、设计要求、技术参数及设计规格1 设计的系统能够安全稳定运行。2 提交实训报告,实训报告中给出需求分析、系统设计、功能设计、总结等。3 所有的工作需要同学们自己真实、独立地完成。四、考核形式、考核时间、考核指标及成绩评定实训成绩由下面几项构成:1)整个实训20次点名(每天上午下午各一次,时间点随机),共20分。2)实训结果占503)实训报告占30%考核形式:1)老师每日对学生的考察、评估和考核;2)最后对实训项目和报告完成的质量进行考核和验收。完 成 期 限: 2013年1月11日指导教师签章: _ 黄 艳_专业负责人签章: 梁 树 军教学院长签章: 邓 璐 娟2012年 12月20日第二章 实训进度日历天/日期任务描述通过标准2012.12.24理解项目要求,按照要求整理数据库给出需求分析2012.12.25完成系统登录2种身份登录2012.12.26菜单管理模块的设计2012.12.27菜单管理模块的实现2012.12.28桌台管理模块的设计2012.12.31桌台管理模块的实现2013.1.1餐厅人员管理模块的设计2013.1.2餐厅人员管理模块的实现2013.1.3点菜功能模块的设计2013.1.4点菜功能模块的实现2013.1.7点菜功能模块的实现2013.1.8消费结帐模块的实现2013.1.9盈利管理的实现2013.1.10系统测试和完善2013.1.11完成实训报告第三章 餐厅管理系统的需求分析3.1系统功能描述与系统基本流程图1、菜单管理模块:管理人员可以添加菜谱到系统中, 并能进行日常维护(包括修改菜谱,删除菜谱等),系统可以对整个菜单分类管理,可区分凉菜、热菜、汤类、酒水、消费品和主食。2、桌台管理模块: 餐厅管理人员能维护和管理整个餐厅的桌台信息,可以显示该桌台是否可用,可以扩大或减小餐厅规模,可以新添包房和删除包房,当选择某一桌台时,可显示该桌台的所有信息。3、餐厅人员管理模块:管理员能维护整个餐厅服务人员的信息记录,对餐厅服务人员信息进行添加、修改与删除。4、点菜功能模块: 用户可以根据自己的需要来选择,也可以在此界面退菜和补菜,所点的菜将添加到此桌台顾客的消费表中。顾客入座后,该桌台显示有人,并显示该桌台有人使用,顾客消费过程中,将消费情况记录到系统中,并支持查询,当选择该桌台时,可显示该桌台的消费情况。5、消费结帐模块: 系统可以自动对消费情况进行结算,可显示该消费者的所有消费情况,并能自动实现找零计算的功能。6、盈利管理: 能按月按日统计餐厅整个赢利情况,能依据消费时间查询某顾客的消费明细。系统基本流程图系统业务流程示意图如下图,除了以上功能模块的实现,系统必须实现一些规范检查。业务流程示意图第四章 系统的设计与实现4.1 数据库的设计在开发餐饮管理系统之前,分析了该系统的数据量,由于餐饮管理系统的数据较多,商品信息、消费信息以及账目清单会占用较大的空间。因此选择Microsoft SQL Server 2008数据库存储这些信息,数据库命名为hotle在数据库中创建了6个数据表用于表示不同的信息。1、菜谱信息表:用于保存菜谱信息,包括菜的编号、类别编号、菜的代号、菜名和菜的价格。菜谱信息表(food):字段名数据类型描述IDint编号foodtychar(10)类别编号foodnumchar(10)商品代号foodnamevarchar(50)商品名foodpricedecimal(18,0)商品价格2、顾客消费表:用于保存顾客的消费信息,包括顾客消费编号、商品代号、商品名、消费数量、商品价格、开单人、备注、消费桌台和消费时间。顾客消费信息表(GuestFood):字段名数据类型描述IDint编号foodnumchar(10)商品代号foodnamevarchar(50)商品名foodsumchar(10)消费数量foodallpricedecimal(18,0)商品价格waiternamevarchar(50)开单人beizhuvarchar(50)备注zhuotaichar(10)消费桌台datatimevarchar(50)消费时间3、桌台信息表:用于保存桌台信息,具体包括桌台编号、名称、简称、包间费、位置、状态、类型、备注、其他信息、顾客姓名、开台时间、顾客人数和开单人。桌台信息表(Room):字段名数据类型描述IDchar(10)编号roomNamechar(10)名称roomJCvarchar(50)简称roomBJFdecimal(18,0)包间费roomWZchar(10)位置roomZTchar(10)状态roomTypevarchar(50)类型roomBZvarchar(50)备注roomQTvarchar(50)其他信息GuestNamevarchar(50)顾客姓名zhangdanDatevarchar(50)开台时间Numint顾客人数waiterNamevarchar(50)开单人4、用户信息表:用于保存系统用户信息,包括用户编号、登录名、密码和权限。系统用户信息表(tb_User):字段名数据类型描述IDint编号userNamevarchar(50)登录名userPwdvarchar(50)密码powerchar(10)权限5、职员信息表:用于保存职员信息,具体包括系统编号、名字 、身份证号、职员编号、性别、年龄和电话。职员信息表(tb_Waiter):字段名数据类型描述IDint编号waiterNamevarchar(50)名字cardNumvarchar(50)身份证号waiterNumchar(10)职员编号Sexchar(10)性别Agechar(10)年龄telvarchar(50)电话6、顾客简要消费信息表:用于保存顾客消费的简要信息,具体包括消费编号、菜名、房间号、消费金额、顾客姓名、消费时间和开单人。顾客简要消费信息表(tb_spend):字段名数据类型描述IDint消费编号foodnamevarchar(50)菜名roomNamechar(10)房间号spenddecimal(18,0)消费金额GuestNamevarchar(50)顾客姓名zhangdanDatevarchar(50)消费时间waiterNamevarchar(50)开单人4.2 登录模块设计为了使系统的安全性得到保障,为餐饮管理系统开发了登录模块。通过该模块能对登录用户进行验证,只有系统的合法用户才能进入系统的主界面。代码实现部分如下: class Conn static string str = Data Source=E017;Initial Catalog=hotle;Integrated Security=True; public static SqlConnection conn = new SqlConnection(str); private void button1_Click(object sender, EventArgs e) if (textBox1.Text.Trim() = 管理员) string com1 = string.Format(Select count(*) from tb_User where userName=0and userPwd=1, textBox1.Text.ToString(), textBox2.Text.ToString(); try SqlCommand command = new SqlCommand(com1, Conn.conn); Conn.conn.Open(); int count = 0; count = (int)command.ExecuteScalar(); if (count 0) Form2 f2 = new Form2(); this.Hide(); f2.ShowDialog(); else MessageBox.Show(用户名或密码错误!); catch Conn.conn.Close(); if (textBox1.Text.Trim() = 服务员) string com1 = string.Format(Select count(*) from tb_User where userName=0 and userPwd=1, textBox1.Text.ToString(), textBox2.Text.ToString(); try SqlCommand command = new SqlCommand(com1, Conn.conn); Conn.conn.Open(); int count = 0; count = (int)command.ExecuteScalar(); if (count 0) Form7 f7 = new Form7(); this.Hide(); f7.ShowDialog(); else MessageBox.Show(用户名或密码错误!); catch Conn.conn.Close(); 登录界面如图:4.3点菜功能模块设计4.3.1 开台模块设计 private void button1_Click(object sender, EventArgs e) SqlConnection con = new SqlConnection(Data Source=E017;Initial Catalog=hotle;Integrated Security=True); con.Open(); string com1 = string.Format(update Room set roomName=0,roomZT=1,GuestName=2,zhangdanDate=3,Num=4,waiterName=5 where ID=6, textBox2.Text,comboBox1.SelectedItem, textBox3.Text, textBox4.Text, textBox5.Text,textBox6.Text,textBox1.Text); SqlCommand sql = new SqlCommand(com1, con); sql.ExecuteNonQuery(); Form8 f8 = new Form8(); f8.a = textBox1.Text; f8.b = textBox4.Text; f8.c = textBox6.Text; f8.d = textBox3.Text; f8.ShowDialog(); con.Close(); this.Hide(); 开台界面如图:4.3.2 点菜模块设计 private void Form8_Load(object sender, EventArgs e) this.foodTableAdapter.Fill(this.hotleDataSet.food); this.guestfoodTableAdapter.Fill(this.hotleDataSet.Guestfood); textBox5.Text = a; textBox4.Text = b; textBox6.Text = c; textBox7.Text = d; string sqlstr = Data Source=E017;Initial Catalog=hotle;Integrated Security=True; con = new SqlConnection(sqlstr); con.Open(); sda = new SqlDataAdapter(select * from food, con); ds = new DataSet(); n = sda.Fill(ds, food); dataGridView1.DataSource = ds.Tablesfood; con.Close(); private void comboBox1_SelectedIndexChanged_1(object sender, EventArgs e) if (comboBox1.Text = 全部) string sqlstr = select * from food; sda = new SqlDataAdapter(sqlstr, con); ds = new DataSet(); n = sda.Fill(ds, food); dataGridView1.DataSource = ds.Tablesfood; else string sqlstr = select * from food where foodty = + comboBox1.Text + ; sda = new SqlDataAdapter(sqlstr, con); ds = new DataSet(); n = sda.Fill(ds, food); dataGridView1.DataSource = ds.Tablesfood; private void button1_Click(object sender, EventArgs e) con.Open(); string com1 = string.Format(INSERT INTO GuestFood (foodnum,foodname,foodsum,foodallprice,waitername,zhuotai,datatime) values (0,1,2,3,4,5,6), textBox1.Text, textBox2.Text, comboBox2.SelectedItem, textBox3.Text,textBox6.Text,textBox5.Text,textBox4.Text); SqlCommand sql = new SqlCommand(com1, con); sql.ExecuteNonQuery(); MessageBox.Show(点菜成功!, 提示, MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); showinf(); con.Close(); con.Open(); string com = string.Format(INSERT INTO tb_spend(foodname,roomName,spend,GuestName,zhangdanDate,waitername) values (0,1,2,3,4,5), textBox2.Text, textBox5.Text,textBox3.Text, textBox7.Text, textBox6.Text, textBox4.Text); SqlCommand sql1 = new SqlCommand(com, con); sql1.ExecuteNonQuery(); con.Close(); 点菜界面如图:4.4 消费结账模块设计 private void Form9_Load(object sender, EventArgs e) this.guestfoodTableAdapter.Fill(this.hotleDataSet.Guestfood); comboBox1.Text = a; string sqlstr = Data Source=E017;Initial Catalog=hotle;Integrated Security=True; con = new SqlConnection(sqlstr);con.Open(); sda = new SqlDataAdapter(select * from GuestFood, con); ds = new DataSet(); sda.Fill(ds); dataGridView1.DataSource = ds.Tables0; con.Close(); private void button1_Click(object sender, EventArgs e) con.Open(); string temp = string.Format(select sum(foodsum*foodallprice) from GuestFood where zhuotai=0, comboBox1.SelectedItem); SqlCommand cmd = new SqlCommand(temp, con); price = Convert.ToString(cmd.ExecuteScalar(); cmd = new SqlCommand(select roomBJF from Room where ID= + comboBox1.Text + , con); bjf = cmd.ExecuteScalar().ToString(); if (bjf = 0) label5.Text = price + *95% + + + bjf + = + (Convert.ToDecimal(Convert.ToInt32(price) * Convert.ToInt32(0.95).ToString(C); else label5.Text = price + *95% + + + bjf + = + (Convert.ToDecimal(Convert.ToInt32(price) * Convert.ToInt32(0.95) + Convert.ToDecimal(bjf).ToString(C); con.Close(); private void button2_Click(object sender, EventArgs e) if (textBox1.Text = ) MessageBox.Show(请付现金); else if (Convert.ToDouble(label6.Text) 0) MessageBox.Show(金额不够); else con.Open(); string sql = update Room set roomZT=无人,GuestName=,zhangdanDate=,Num=,waiterName= where ID= + comboBox1.SelectedItem + ; SqlCommand sc = new SqlCommand(sql, con); sc.ExecuteNonQuery(); string Num = Convert.ToString(sc.ExecuteScalar(); if (Num = ) MessageBox.Show(结账成功); con.Close(); con.Open(); string coml = string.Format(delete from Guestfood where zhuotai= 0, dataGridView16, dataGridView1.CurrentCell.RowIndex.Value.ToString(); SqlCommand sql1 = new SqlCommand(coml, con); sql1.ExecuteNonQuery(); con.Close(); private void textBox1_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyChar != 8 & !char.IsDigit(e.KeyChar) & e.KeyChar != 13) MessageBox.Show(请输入数字); e.Handled = true; private void textBox1_TextChanged(object sender, EventArgs e) label6.Text = Convert.ToDecimal(Convert.ToInt32(textBox1.Text.Trim() - Convert.ToInt32(price) * Convert.ToInt32(0.95) - Convert.ToInt32(bjf).ToString(); 消费结账界面如图:4.5菜单管理模块设计4.5.1 菜单添加模块 private void Form10_Load(object sender, EventArgs e) this.foodTableAdapter.Fill(this.hotleDataSet.food); string sqlstr = Data Source=E017;Initial Catalog=hotle;Integrated Security=True; con = new SqlConnection(sqlstr); con.Open(); sda = new SqlDataAdapter(select * from food, con); ds = new DataSet(); n = sda.Fill(ds, food); dataGridView1.DataSource = ds.Tablesfood; int s = 0; for (int i = 0; i i + 1) s = i; else s = i + 1; s = s + 1; textBox1.Text = 0 + s.ToString(); con.Close(); private void button1_Click(object sender, EventArgs e) if (comboBox1.Text = | textBox3.Text = ) MessageBox.Show(请输入要添加的菜谱信息, 添加失败, MessageBoxButtons.OK, MessageBoxIcon.Information); else string sqlstr = Data Source=E017;Initial Catalog=hotle;Integrated Security=True; con = new SqlConnection(sqlstr); SqlCommand mycom = con.CreateCommand(); mycom.CommandText = Insert Into food Values( + textBox1.Text + , + comboBox1.Text + , + textBox3.Text + , + textBox4.Text + , + textBox5.Text + ); con.Open(); mycom.ExecuteNonQuery(); con.Close(); con1 = new SqlConnection(sqlstr); con1.Open(); sda1 = new SqlDataAdapter(select * from food, con1); ds1 = new DataSet(); n1 = sda.Fill(ds1, food); dataGridView1.DataSource = ds1.Tablesfood; MessageBox.Show(菜谱添加完成, 添加成功, MessageBoxButtons.OK, MessageBoxIcon.Information); 菜单添加界面如图:4.5.2 菜单修改模块 private void Form11_Load(object sender, EventArgs e) this.foodTableAdapter.Fill(this.hotleDataSet.food); string sqlstr = Data Source=E017;Initial Catalog=hotle;Integrated Security=True; con = new SqlConnection(sqlstr); con.Open(); sda = new SqlDataAdapter(select * from food, con); ds = new DataSet(); n = sda.Fill(ds, food); dataGridView1.DataSource = ds.Tablesfood; button1.Enabled = false; con.Close(); private void button1_Click(object sender, EventArgs e) string sqlstr = Data Source=E017;Initial Catalog=hotle;Integrated Security=True; con = new SqlConnection(sqlstr); SqlCommand com1 = con.CreateCommand(); com1.CommandText = Update food set foodprice= + Convert.ToSingle(textBox5.Text.ToString().Trim() + ,foodty= + textBox2.Text.ToString().Trim() + ,foodnum= + textBox3.Text.ToString().Trim() + ,foodname= + textBox4.Text.ToString().Trim() + where ID= + textBox1.Text.ToString().Trim(); con.Open(); com1.ExecuteNonQuery(); con1 = new SqlConnection(sqlstr); con1.Open(); sda1 = new SqlDataAdapter(select * from food, con1); ds1 = new DataSet(); n1 = sda.Fill(ds1, food); dataGridView1.DataSource = ds1.Tablesfood; MessageBox.Show(菜谱修改完成, 修改成功, MessageBoxButtons.OK, MessageBoxIcon.Information); con.Close(); 菜单修改界面如图:4.6 餐厅人员信息管理模块设计4.6.1 餐厅人员信息添加模块设计 private void Form5_Load(object sender, EventArgs e) this.waiterTableAdapter.Fill(this.hotleDataSet.Waiter); string sqlstr = Data Source=E017;Initial Catalog=hotle;Integrated Security=Tru

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论