版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、中国矿业大学徐海学院计算机系?软件课程设计2?报告姓 名: 王旭 学 号: 22080348 专 业: 计算机科学与技术 设计题目: 餐饮管理系统 指导教师: 周海燕 2021年 10 月目 录 TOC o 1-3 h z u HYPERLINK l _Toc170190870 第一章 系统需求分析4 HYPERLINK l _Toc170190871 1.1 系统功能需求分析4 HYPERLINK l _Toc170190873 1.2 系统数据流图4 HYPERLINK l _Toc170190875 第二章 系统概要设计5 HYPERLINK l _Toc170190876 2.1 系统
2、总体框图设计5 HYPERLINK l _Toc170190877 2.2各模块功能分析.5 HYPERLINK l _Toc170190878 第三章 数据库设计6 HYPERLINK l _Toc170190879 3.1 系统E-R图设计7 HYPERLINK l _Toc170190882 3.2数据表的设计8 HYPERLINK l _Toc170190883 第四章 系统详细设计及实现10 HYPERLINK l _Toc170190884 4.1系统登陆界面设计10 HYPERLINK l _Toc170190884 4.2主界面设计12 HYPERLINK l _Toc1701
3、90885 4.3食品信息设置界面设计21 HYPERLINK l _Toc170190909 第五章 软件测试及调试. 27 HYPERLINK l _Toc170190910 5.1 软件功能测试27 HYPERLINK l _Toc170190911 5.2数据模块的实现27 HYPERLINK l _Toc170190909 第六章总结.28 HYPERLINK l _Toc170190912 参考文献29摘要近几年来,随着我国国民经济的稳定增长,餐饮业的竞争也越来越鼓励,想在这样竞争鼓励的环境下生存,就必须运用科学的管理思想与先进的管理方法,使用点餐与管理一体化。这样不仅提高了工作效
4、率,也防止了以前手工作业的麻烦,从而使得管理者能够准确,有效的管理餐饮。因此,餐饮业的管理者更需要一种综合实时的管理模式,希望从更科学的管理中取得竞争的优势,在竞争剧烈的商业市场中取胜。结合管理信息系统的开发方法及步骤,以此为理论根据,开发出一个信息管理系统餐饮管理系统。它采用国际通用的先进餐饮管理模式,并结合中国的管理实际特点开发而成。通过本系统功能模块,可为各种大小不同的餐饮管理所使用。为管理者提供高效的管理手段,本系统有着人性理的设置理念,流程清晰、易懂。具有独特的功能对于开台管理、点菜、菜谱设置等为管理人员带来很大的方便,减少人为因素的错误,提高效劳水平,提升企业形象。关键字:餐饮管理
5、系统、提高效劳水平、提高工作效率第一章 系统需求分析系统功能需求分析随着现在连锁餐饮店的不断崛起,作为餐饮业不可缺少的一局部餐饮管理系统,它的内容对于餐饮业的决策者和管理者来说都非常重要。本系统基于餐饮管理系统之下的一个子系统,可以把整个餐饮店的日常经营管理信息化,包括点餐、库存管理、员工信息等日常经营的一些统计功能。现在此系统还不够完善,将来使此系统会集成更多的功能,例如:餐饮管理系统的开发成功,实现了餐饮业的现代化,说明了餐饮管理正与国际化接轨,有了更为深入的开展。?餐软管理系统?采用国际通用的先进餐饮管理模式,并结合中国的管理实际特点开发而成。通过本系统功能模块,可为各种大小不同的餐饮管
6、理所使用。为管理者提供高效的管理手段,本系统有着人性理的设置理念,流程清晰、易懂。具有独特的功能对于开台管理、点菜、菜谱设置等为管理人员带来很大的方便,减少人为因素的错误,提高效劳水平,提升企业形象。根据实际情况的需要,系统主要功能如下: = 1 * GB2 前台管理:开台管理、客户结账、退出系统。 = 2 * GB2 系统管理:权限管理、系统管理、帮助。 = 3 * GB2 根底信息管理:酒水信息查询、菜谱信息查询及设置。1.2 系统数据流图第二章 系统概要设计2.1系统总体框架设计根据业务情况,该系统共分为开台、取消开台、客户点菜、消费查询、结账设置等模块。 2.2各模块功能分析1系统登录
7、窗口主要功能:1以图标形式显示数据库中操作员,并凭口令登入到主界面。2实现权限登录:系统管理员拥有一切权利,其他操作员那么被限制一些操作权限。2系统主界面主要功能1根据操作员权限设置相应权限的菜单和工具栏功能。2可通过菜单或快捷键进入相应子界面。3显示了系统当前时间和相应操作员。3系统菜谱信息设置界面主要功能:实现对菜谱信息的添加、修改、删除、查询的功能。4系统开台管理界面主要功能:1以图标模式显示空台、营业台,点击台号图标那么自动显示相应台号信息。2通过输入台号检索符合条件的台号。3点击空房自动弹出与昂查询窗口从而自动开台。5系统点菜界面主要功能:1实现菜谱,酒水查询的链接。2点击“开场点菜
8、按钮台号状态自动变为开台,并聚焦到编号栏。3在编号栏输入菜编号按回车自动录入菜的信息,。4自动生成结账编号,输入菜数量自动计算合计消费金额。第三章 数据库设计 开台点菜E-R图 食品信息E-R图桌台信息E-R图职员信息E-R图数据库表设计数据库表设计是总体设计阶段非常重要的环节,好的数据库表可以简化开发过程,使系统功能更加清晰明确。因为数据库构造的变化会造成编码的改动,所以必须认真设计数据库后再进展编码,从而防止了无谓的重复的工作。本系统采用了SQL Server数据库,数据库名称为db_mycy。该数据库包含4个表,分别是:food表,room表,user表,waiter表,zhangdan
9、表。下面分别介绍数据表的构造。food表food表用于保存food的相关信息。food表见表3-2-1所示。food表构造room表room表用于显示房间和大厅的信息。room表见表3-2-2所示。3、user表用来显示的管理员经理和客户的信息。user表的如图3-2-3所示。表3-2-3user构造4、waiter表用于方便用户选择自己喜欢的效劳员为自己效劳。user表的如图3-2-4示。表3-2-4waiter表5、zhangdan表用于账户更好的知道自己的消费记录,zhangdan表的如图3-2-5示。表3-2-5zhangdan表 第四章 系统详细设计及实现4.1系统登陆界面设计 程序
10、启动后,首先登陆此界面验证操作员的密码。主要实现的功能如下:输入用户名和密码系统登录界面如图4.1.1所示。图4.1.1 系统登录界面程序主要代码如下: public partial class frmLogin : Form public frmLogin() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) txtName.Focus(); private void txtPwd_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyCh
11、ar = 13) btnSubmit_Click(sender, e); private void btnSubmit_Click(object sender, EventArgs e) if (txtName.Text = ) MessageBox.Show(请输入密码, 警告, MessageBoxButtons.OK, MessageBoxIcon.Warning); else if (txtPwd.Text = ) MessageBox.Show(请输入密码, 警告?, MessageBoxButtons.OK, MessageBoxIcon.Warning); else SqlCon
12、nection conn = BaseClass.DBConn.CyCon(); conn.Open(); SqlCommand cmd = new SqlCommand(select count(*) from tb_User where UserName= + txtName.Text + and UserPwd= + txtPwd.Text + , conn); int i = Convert.ToInt32(cmd.ExecuteScalar(); if (i 0) cmd = new SqlCommand(select * from tb_User where UserName= +
13、 txtName.Text + , conn); SqlDataReader sdr = cmd.ExecuteReader(); sdr.Read(); string UserPower = sdrpower.ToString().Trim(); conn.Close(); frmMain main = new frmMain(); main.username = txtName.Text; main.power = UserPower; main.Names = txtName.Text; main.Times = DateTime.Now.ToShortDateString(); mai
14、n.Show(); this.Hide(); else txtName.Text = ; txtPwd.Text = ; if (MessageBox.Show(用户名或密码错误, 警告,MessageBoxButtons.OK,MessageBoxIcon.Warning)=DialogResult.OK) private void btnConcel_Click(object sender, EventArgs e) if (MessageBox.Show(确定退出系统吗?, 提示, MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk)
15、= DialogResult.OK) Application.Exit(); 1、程序启动后。系统在“登陆界面验证操作员密码后,将进入此界面。系统主界面主要功能:主程序界面如图4.2.1所示。主要程序代码如下:public partial class frmMain : Form public frmMain() InitializeComponent(); public SqlDataReader sdr; public string power; public string Names; public string Times; public string username; privat
16、e void frmMain_Load(object sender, EventArgs e) switch (power) case 0: toolStripStatusLabel13.Text = 超级管理员; break; case 1: toolStripStatusLabel13.Text = 经理; break; case 牢记密码: toolStripStatusLabel13.Text = 牢记密码; break; / case 2: toolStripStatusLabel13.Text = 一?般?用?户; break; default : toolStripStatusL
17、abel13.Text=一般用户;break; toolStripStatusLabel10.Text = Names; toolStripStatusLabel16.Text = Times; /* if (power = 2) 系统维护SToolStripMenuItem.Enabled = false; 根底信息MToolStripMenuItem.Enabled = false; */ if (power = 0 | power = 牢记密码) / if (power = 牢记密码) / / else if (power = 1) 系统维护SToolStripMenuItem.Enab
18、led = false; else 系统维护SToolStripMenuItem.Enabled = false; 根底信息MToolStripMenuItem.Enabled = false; private void AddItems(string rzt) if (rzt = 使用) lvDesk.Items.Add(sdrRoomName.ToString(), 1); else lvDesk.Items.Add(sdrRoomName.ToString(), 0); private void 开a台ToolStripMenuItem_Click(object sender, Even
19、tArgs e) if (lvDesk.SelectedItems.Count != 0) string names = lvDesk.SelectedItems0.SubItems0.Text; frmOpen openroom = new frmOpen(); = names; openroom.ShowDialog(); else MessageBox.Show(请选择桌台); private void frmMain_Activated(object sender, EventArgs e) lvDesk.Items.Clear(); SqlConnecti
20、on conn = BaseClass.DBConn.CyCon(); conn.Open(); SqlCommand cmd = new SqlCommand(select * from tb_Room, conn); sdr = cmd.ExecuteReader(); while (sdr.Read() string zt = sdrRoomZT.ToString().Trim(); AddItems(zt); conn.Close(); private void 点?菜?ToolStripMenuItem_Click(object sender, EventArgs e) if (lv
21、Desk.SelectedItems.Count != 0) string names = lvDesk.SelectedItems0.SubItems0.Text; frmDC dc = new frmDC(); dc.RName = names; dc.ShowDialog(); else MessageBox.Show(请选择桌台); private void 消费查询ToolStripMenuItem_Click(object sender, EventArgs e) if (lvDesk.SelectedItems.Count != 0) string names = lvDesk.
22、SelectedItems0.SubItems0.Text; frmSerch serch = new frmSerch(); serch.RName = names; serch.ShowDialog(); else MessageBox.Show(请选择桌台); private void 结账?ToolStripMenuItem_Click(object sender, EventArgs e) if (lvDesk.SelectedItems.Count != 0) string names = lvDesk.SelectedItems0.SubItems0.Text; frmJZ jz
23、 = new frmJZ(); jz.Rname = names; jz.ShowDialog(); else MessageBox.Show(请选择桌台); private void lvDesk_DoubleClick(object sender, EventArgs e) frmDetails details = new frmDetails(); details.TableName = lvDesk.SelectedItems0.SubItems0.Text; details.ShowDialog(); private void lvDesk_Click(object sender,
24、EventArgs e) string names = lvDesk.SelectedItems0.SubItems0.Text; SqlConnection conn = BaseClass.DBConn.CyCon(); conn.Open(); SqlCommand cmd = new SqlCommand(select * from tb_Room where RoomName= + names + , conn); SqlDataReader sdr = cmd.ExecuteReader(); sdr.Read(); string zt = sdrRoomZT.ToString()
25、.Trim(); sdr.Close(); if (zt = 使用) this.contextMenuStrip1.Items0.Enabled = false; this.contextMenuStrip1.Items1.Enabled = true; this.contextMenuStrip1.Items3.Enabled = true; this.contextMenuStrip1.Items5.Enabled = true; this.contextMenuStrip1.Items6.Enabled = true; if (zt = 使用) this.contextMenuStrip
26、1.Items0.Enabled = true; this.contextMenuStrip1.Items1.Enabled = false; this.contextMenuStrip1.Items3.Enabled = false; this.contextMenuStrip1.Items5.Enabled = false; this.contextMenuStrip1.Items6.Enabled = false; conn.Close(); private void 取消开台toolStripMenuItem_Click(object sender, EventArgs e) if (
27、lvDesk.SelectedItems.Count != 0) SqlConnection conn = BaseClass.DBConn.CyCon(); conn.Open(); string names = lvDesk.SelectedItems0.SubItems0.Text; SqlCommand cmd = new SqlCommand(Select * from tb_guestfood where roomname= + names + , conn); int i = Convert.ToInt32(cmd.ExecuteScalar(); if (i 0) Messag
28、eBox.Show(请先结账!); else cmd = new SqlCommand(update tb_Room set RoomZT=待用,Num=0 where RoomName= + names + , conn); cmd.ExecuteNonQuery(); cmd = new SqlCommand(delete from tb_GuestFood where roomname= + names + , conn); cmd.ExecuteNonQuery(); conn.Close(); frmMain_Activated(sender, e); else MessageBox
29、.Show(请选择桌台); private void 桌台信息ToolStripMenuItem1_Click(object sender, EventArgs e) frmDesk desk = new frmDesk(); desk.ShowDialog(); private void 职员信息ToolStripMenuItem1_Click(object sender, EventArgs e) frmUser users = new frmUser(); users.ShowDialog(); private void 日历ToolStripMenuItem1_Click(object
30、 sender, EventArgs e) frmCalender calender = new frmCalender(); calender.ShowDialog(); private void 记事本ToolStripMenuItem1_Click(object sender, EventArgs e) System.Diagnostics.Process.Start(notepad.exe); private void 计算器ToolStripMenuItem1_Click(object sender, EventArgs e) System.Diagnostics.Process.S
31、tart(calc.exe); private void 权限管理ToolStripMenuItem1_Click(object sender, EventArgs e) private void 口令设置ToolStripMenuItem1_Click(object sender, EventArgs e) frmPwd pwd = new frmPwd(); s = Names; pwd.ShowDialog(); private void 说定系统ToolStripMenuItem1_Click(object sender, EventArgs e) frmLock lo
32、cksystem = new frmLock(); locksystem.Owner = this; locksystem.ShowDialog(); private void 关于ToolStripMenuItem1_Click(object sender, EventArgs e) AboutBox1 ab = new AboutBox1(); ab.ShowDialog(); private void 退出系统ToolStripMenuItem1_Click(object sender, EventArgs e) if (MessageBox.Show(确定退出本系统吗?, 提示, Me
33、ssageBoxButtons.OKCancel, MessageBoxIcon.Exclamation) = DialogResult.OK) Application.Exit(); private void 系统维护ToolStripMenuItem_Click(object sender, EventArgs e) private void修改用户权限ToolStripMenuItem_Click(object sender, EventArgs e) frmXgQx qx = new frmXgQx(); qx.username = username; qx.ShowDialog();
34、 private void 注册新用户ToolStripMenuItem_Click(object sender, EventArgs e) FrmZc zc = new FrmZc(); zc.ShowDialog(); private void 删除用户ToolStripMenuItem_Click(object sender, EventArgs e) FrmSch sch = new FrmSch(); sch.ShowDialog(); private void 食品信息ToolStripMenuItem_Click(object sender, EventArgs e) FrmFo
35、od food = new FrmFood(); food.ShowDialog(); private void 查询统计ToolStripMenuItem_Click(object sender, EventArgs e) private void 收入日报ToolStripMenuItem_Click(object sender, EventArgs e) frmZhangDan zhdan = new frmZhangDan(); zhdan.ShowDialog(); private void lvDesk_SelectedIndexChanged(object sender, Eve
36、ntArgs e) private void frmMain_FormClosing(object sender, FormClosingEventArgs e) Application.Exit(); private void statusStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e) 食品信息设置界面设计 食品信息设置查询界面如图4.3.1所示。代码如下:private void button1_Click(object sender, EventArgs e) foodname.Text = ; txt
37、price.Text = ; foodname.Enabled = true; txtprice.Enabled = true; textBox1.Enabled = true; cboxclass.Enabled = true; button3.Enabled = true; button4.Enabled = true; button2.Enabled = false; private void button7_Click(object sender, EventArgs e) this.Close(); private void button5_Click(object sender,
38、EventArgs e) SqlConnection conn = 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
39、 = new DataSet(); da.Fill(ds); dataGridView1.DataSource = ds.Tables0; private void button2_Click(object sender, EventArgs e) button1.Enabled = false; foodname.Enabled = false; txtprice.Enabled = true; cboxclass.Enabled = true; textBox1.Enabled = true; button3.Enabled = true; button4.Enabled = true;
40、button5.Enabled = true; button6.Enabled = true; button7.Enabled = true; private void button4_Click(object sender, EventArgs e) button1.Enabled = true; button2.Enabled = false; button3.Enabled = false; button4.Enabled = false; button6.Enabled = false; foodname.Enabled = false; cboxclass.Enabled = fal
41、se; txtprice.Enabled = false; textBox1.Enabled = false; private void button3_Click(object sender, EventArgs e) SqlConnection conn = BaseClass.DBConn.CyCon(); conn.Open(); SqlCommand cmd = new SqlCommand(select count(*) from tb_food where foodname= + foodname.Text + , conn); int i = Convert.ToInt32(c
42、md.ExecuteScalar(); if (i 0) cmd = new SqlCommand(update tb_food set foodty= +cboxclass.SelectedItem.ToString().Trim()+ ,foodnum= + textBox1.Text + ,foodprice= + txtprice.Text + where foodname=+foodname.Text+ , conn); int x=cmd.ExecuteNonQuery(); conn.Close(); if (x 0) MessageBox.Show(修改成功); this.bu
43、tton5_Click(sender, e); else MessageBox.Show(修改失败); button1.Enabled = true; button2.Enabled = true; button3.Enabled = false; button4.Enabled = false; button5.Enabled = true; button6.Enabled = false; button7.Enabled = true; foodname.Enabled = false; else cmd = new SqlCommand(insert into tb_food (food
44、name,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(添加成功); this.button5_Click(sender, e); else MessageBox.Show(添加失败); button1.Enable
45、d = true; button2.Enabled = false; button3.Enabled = false; button4.Enabled = false; button5.Enabled = true; button6.Enabled = false; button7.Enabled = true; foodname.Enabled = false; private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) private void button6_Click(o
46、bject sender, EventArgs e) SqlConnection conn = BaseClass.DBConn.CyCon(); conn.Open(); SqlCommand cmd = new SqlCommand(delete from tb_food where foodName= + dataGridView1.SelectedCells0.Value.ToString() + , conn); cmd.ExecuteNonQuery(); conn.Close(); this.button5_Click(sender, e); private void dataG
47、ridView1_CellClick(object sender, DataGridViewCellEventArgs e) foodname.Text = dataGridView1.SelectedCells0.Value.ToString().Trim(); cboxclass.SelectedItem = dataGridView1.SelectedCells1.Value.ToString().Trim(); textBox1.Text = dataGridView1.SelectedCells2.Value.ToString().Trim(); txtprice.Text = dataGridView1.SelectedCells3.Value.ToStri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水文地质信息化管理系统构建-洞察分析
- 系统生物学与表观遗传学-洞察分析
- 异构数据融合策略-第1篇-洞察分析
- 《周报表模板》课件
- 2024年柳河县第三人民医院高层次卫技人才招聘笔试历年参考题库频考点附带答案
- 2024年外研版七年级历史下册月考试卷
- 养蚕合作协议书(2篇)
- 2024年05月山东中信银行东营分行社会招考(526)笔试历年参考题库附带答案详解
- 2024年本钢胸科医院高层次卫技人才招聘笔试历年参考题库频考点附带答案
- 2025年沪教新版八年级历史下册月考试卷
- 医院培训课件:《乳腺癌解读》
- 2024年人教版八年级语文上册期末考试卷(附答案)
- 北京联合大学《数据结构》2023-2024学年期末试卷
- 医疗安全(不良)事件报告制度培训课件
- 学生干部证明模板
- 辽宁省大连市2023-2024学年高三上学期双基测试(期末考试) 物理 含解析
- 2024年刑法知识考试题库含答案(综合卷)
- 第二篇 必修上册 第二单元-高中语文单元教学设计
- 厨房排烟系统安装合同范本
- 异面直线及其夹角教案 人教版
- DB34-T 4859-2024 农村河道清淤规范
评论
0/150
提交评论