收藏 分销(赏)

专业课程设计报告餐饮管理系统.doc

上传人:精*** 文档编号:3992319 上传时间:2024-07-24 格式:DOC 页数:20 大小:101.54KB 下载积分:10 金币
下载 相关 举报
专业课程设计报告餐饮管理系统.doc_第1页
第1页 / 共20页
专业课程设计报告餐饮管理系统.doc_第2页
第2页 / 共20页


点击查看更多>>
资源描述
中国矿业大学徐海学院计算机系 《软件课程设计2》报告 姓 名: 王旭 学 号: 22080348 专 业: 计算机科学与技术 设计题目: 餐饮管理系统 指导教师: 周海燕 2011年 10 月 目 录 第一章 系统需求分析 4 1.1 系统功能需求分析 4 1。2 系统数据流图 4 第二章 系统概要设计 5 2。1 系统总体框图设计 5 2.2各模块功能分析 .。.。.。。。。。.。。.。5 第三章 数据库设计 6 3.1 系统E—R图设计 7 3.2数据表的设计 8 第四章 系统详细设计及实现 10 4。1系统登陆界面设计 10 4。2主界面设计 12 4。3食品信息设置界面设计 21 第五章 软件测试及调试。....。。。。。。。。..。。。.。..。。..。。。。。..。.。。。.。。 27 5。1 软件功能测试 27 5.2数据模块的实现 27 第六章总结 。。。.。28 参考文献 29 摘要 近几年来,随着我国国民经济的稳定增长,餐饮业的竞争也越来越激励,想在这样竞争激励的环境下生存,就必须运用科学的管理思想与先进的管理方法,使用点餐与管理一体化.这样不仅提高了工作效率,也避免了以前手工作业的麻烦,从而使得管理者能够准确,有效的管理餐饮.因此,餐饮业的管理者更需要一种综合实时的管理模式,希望从更科学的管理中取得竞争的优势,在竞争激烈的商业市场中取胜.结合管理信息系统的开发方法及步骤,以此为理论根据,开发出一个信息管理系统-—餐饮管理系统。它采用国际通用的先进餐饮管理模式,并结合中国的管理实际特点开发而成.通过本系统功能模块,可为各种大小不同的餐饮管理所使用.为管理者提供高效的管理手段,本系统有着人性理的设置理念,流程清晰、易懂。具有独特的功能对于开台管理、点菜、菜谱设置等为管理人员带来很大的方便,减少人为因素的错误,提高服务水平,提升企业形象. 关键字:餐饮管理系统、提高服务水平、提高工作效率 第一章 系统需求分析 1。1系统功能需求分析 随着现在连锁餐饮店的不断崛起,作为餐饮业不可缺少的一部分-—餐饮管理系统,它的内容对于餐饮业的决策者和管理者来说都非常重要。本系统基于餐饮管理系统之下的一个子系统,可以把整个餐饮店的日常经营管理信息化,包括点餐、库存管理、员工信息等日常经营的一些统计功能。现在此系统还不够完善,将来使此系统会集成更多的功能,例如:餐饮管理系统的开发成功,实现了餐饮业的现代化,表明了餐饮管理正与国际化接轨,有了更为深入的发展。 《餐软管理系统》采用国际通用的先进餐饮管理模式,并结合中国的管理实际特点开发而成。通过本系统功能模块,可为各种大小不同的餐饮管理所使用.为管理者提供高效的管理手段,本系统有着人性理的设置理念,流程清晰、易懂。具有独特的功能对于开台管理、点菜、菜谱设置等为管理人员带来很大的方便,减少人为因素的错误,提高服务水平,提升企业形象. 根据实际情况的需要,系统主要功能如下: ⑴ 前台管理:开台管理、客户结账、退出系统。 ⑵ 系统管理:权限管理、系统管理、帮助。 ⑶ 基础信息管理:酒水信息查询、菜谱信息查询及设置。 1。2 系统数据流图 根据实际情况要求,系统数据流图如图1。2。1所示 图1.2.1数据流图 第二章 系统概要设计 2.1系统总体框架设计 根据业务情况,该系统共分为开台、取消开台、客户点菜、消费查询、结账设置等模块。 2。2各模块功能分析 (1)系统登录窗口主要功能: 1)以图标形式显示数据库中操作员,并凭口令登入到主界面。 2)实现权限登录:系统管理员拥有一切权利,其他操作员则被限制一些操作权限。 (2)系统主界面主要功能 1)根据操作员权限设置相应权限的菜单和工具栏功能。 2)可通过菜单或快捷键进入相应子界面。 3)显示了系统当前时间和相应操作员. (3)系统菜谱信息设置界面主要功能: 实现对菜谱信息的添加、修改、删除、查询的功能。 (4)系统开台管理界面主要功能: 1)以图标模式显示空台、营业台,点击台号图标则自动显示相应台号信息。 2)通过输入台号检索符合条件的台号。 3)点击空房自动弹出与昂查询窗口从而自动开台。 (5)系统点菜界面主要功能: 1)实现菜谱,酒水查询的链接。 2)点击“开始点菜"按钮台号状态自动变为开台,并聚焦到编号栏。 3)在编号栏输入菜编号按回车自动录入菜的信息,。 4)自动生成结账编号,输入菜数量自动计算合计消费金额。 第三章 数据库设计 3.1系统E—R图的设计 开台点菜E—R图 食品信息E—R图 桌台信息E-R图 职员信息E—R图 3.2数据库表设计 数据库表设计是总体设计阶段非常重要的环节,好的数据库表可以简化开发过程,使系统功能更加清晰明确。因为数据库结构的变化会造成编码的改动,所以必须认真设计数据库后再进行编码,从而避免了无谓的重复的工作。 本系统采用了SQL Server数据库,数据库名称为db_mycy。该数据库包含4个表,分别是:food表,room表,user表,waiter表,zhangdan表。下面分别介绍数据表的结构。 1、 food表 food表用于保存food的相关信息。food表见表3—2—1所示. food表结构 2、 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系统登陆界面设计 1.实现目标 程序启动后,首先登陆此界面验证操作员的密码.主要实现的功能如下: 输入用户名和密码 系统登录界面如图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。KeyChar == 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 { SqlConnection 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=’” + txtName。Text + "'”, conn); SqlDataReader sdr = cmd。ExecuteReader(); sdr.Read(); string UserPower = sdr[”power"]。ToString()。Trim(); conn.Close(); frmMain main = new frmMain(); main。username = txtName.Text; main。power = UserPower; main。Names = txtName。Text; main。Times = DateTime。Now。ToShortDateString(); main。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) == DialogResult。OK) { Application。Exit(); } } } } 4。2主界面设计 1、程序启动后。系统在“登陆界面”验证操作员密码后,将进入此界面.系统主界面主要功能: 主程序界面如图4.2。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; private 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 : toolStripStatusLabel13.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.Enabled = false; } else { 系统维护SToolStripMenuItem。Enabled = false; 基础信息MToolStripMenuItem。Enabled = false; } } private void AddItems(string rzt) { if (rzt == "使用”) { lvDesk.Items。Add(sdr[”RoomName”]。ToString(), 1); } else { lvDesk。Items。Add(sdr["RoomName"].ToString(), 0); } } private void 开a台¬¡§ToolStripMenuItem_Click(object sender, EventArgs e) { if (lvDesk。SelectedItems.Count != 0) { string names = lvDesk。SelectedItems[0]。SubItems[0]。Text; frmOpen openroom = new frmOpen(); openroom。name = names; openroom。ShowDialog(); } else { MessageBox.Show(”请选择桌台"); } } private void frmMain_Activated(object sender, EventArgs e) { lvDesk.Items.Clear(); SqlConnection conn = BaseClass.DBConn.CyCon(); conn。Open(); SqlCommand cmd = new SqlCommand(”select * from tb_Room”, conn); sdr = cmd.ExecuteReader(); while (sdr。Read()) { string zt = sdr[”RoomZT”]。ToString()。Trim(); AddItems(zt); } conn.Close(); } private void 点Ì?菜?ToolStripMenuItem_Click(object sender, EventArgs e) { if (lvDesk。SelectedItems。Count != 0) { string names = lvDesk。SelectedItems[0]。SubItems[0]。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。SelectedItems[0].SubItems[0].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。SelectedItems[0]。SubItems[0].Text; frmJZ jz = 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.SelectedItems[0].SubItems[0].Text; details。ShowDialog(); } private void lvDesk_Click(object sender, EventArgs e) { string names = lvDesk.SelectedItems[0]。SubItems[0].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 = sdr[”RoomZT”]。ToString().Trim(); sdr。Close(); if (zt == ”使用") { this。contextMenuStrip1。Items[0]。Enabled = false; this.contextMenuStrip1。Items[1].Enabled = true; this.contextMenuStrip1。Items[3].Enabled = true; this.contextMenuStrip1。Items[5].Enabled = true; this。contextMenuStrip1。Items[6]。Enabled = true; } if (zt == ”使用”) { this.contextMenuStrip1.Items[0]。Enabled = true; this。contextMenuStrip1.Items[1].Enabled = false; this。contextMenuStrip1.Items[3]。Enabled = false; this.contextMenuStrip1。Items[5].Enabled = false; this。contextMenuStrip1。Items[6].Enabled = false; } conn。Close(); } private void 取消开台toolStripMenuItem_Click(object sender, EventArgs e) { if (lvDesk。SelectedItems。Count != 0) { SqlConnection conn = BaseClass.DBConn.CyCon(); conn。Open(); string names = lvDesk。SelectedItems[0].SubItems[0]。Text; SqlCommand cmd = new SqlCommand(”Select * from tb_guestfood where roomname=’” + names + "’", conn); int i = Convert。ToInt32(cmd。ExecuteScalar()); if (i 〉 0) { MessageBox.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.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 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。Start(”calc.exe”); } private void 权限管理ToolStripMenuItem1_Click(object sender, EventArgs e) { } private void 口令设置ToolStripMenuItem1_Click(object sender, EventArgs e) { frmPwd pwd = new frmPwd(); pwd.names = Names; pwd。ShowDialog(); } private void 说定系统ToolStripMenuItem1_Click(object sender, EventArgs e) { frmLock locksystem = 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("确定退出本系统吗?”, ”提示", MessageBoxButtons。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(); } 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。Sh
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服