欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据库课程设计报告-餐饮管理系统.docx

    • 资源ID:26968786       资源大小:16.31KB        全文页数:15页
    • 资源格式: DOCX        下载积分:30金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要30金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库课程设计报告-餐饮管理系统.docx

    数据库课程设计报告-餐饮管理系统 数据库课程设计报告 (餐饮管理系统) 系别电子信息系 专业名称计算机科学与技术 班级学号* 学生姓名* 指导教师* 成绩 2022年7 月 1 日 1 概述 随着人民生活水平的提高,越来越多的人到餐馆里就餐,使得餐饮业有了更多的发展机会,但同时餐饮业的竞争也在不断的加剧。要想在竞争激烈的市场上立于不败之地,好的管理是必不可少的。加强管理不能只重视人为因素,技术因素也是非常重要的,好的管理方法如果引入了先进的技术手段,即引入计算机技术会使管理走上一个新的台阶。 目前,餐饮业发展迅速,各类管理系统应用而生。有针对大饭店、大酒店的酒店管理系统,这类系统的开发已经非常成熟。然而,为数众多的小餐饮企业却没有一个合适的管理系统,因此开发此类管理系统是十分必要的。 1.1 设计题目及实现目标 设计题目:基于C#语言Windows窗体界面的餐饮管理系统; 实现目标: (1)系统采用人机交互的方式,界面美观友好,信息查询方便,数据存储安全; (2)实现对餐饮顾客开台、点菜、账目查询和结账等操作; (3)对数据输入的数据进行数据检验,尽可能的避免人为错误; (4)对消费账目进行自动结算; (5)实现对消费的历史记录进行查询; (6)系统应最大限度的实现以维护性和易操作性。 1.2 开发环境简介 开发IDE:Microsoft Visual Studio 2022; 开发语言:C#.net; 数据库:SQL Server 2022; 开发环境:Windows 7; 开发周期:10天; 开发人数:4人。 2 需求分析 2.1 系统功能描述 从顾客角度来看,能实现即时点菜、结账、取消开台等功能;从管理员角度可实现即时营业情况,记录员工信息、桌台信息、菜单信息并实现增删改等基本信息功能;不同的用户有不同的权限,系统管理员有所有的功能权限,经理拥有除系统维护功能以外的所有功能权限,一般用户只能对查看餐馆运行情况,客户点菜结账等基本功能,但不可以看菜单基本信息和人员基本信息等。 2.2 系统功能结构描述 餐饮管理系统属于C/S模式的系统,其功能结构图如图1所示: 图1 餐饮管理系统功能结构图 系统功能介绍: (1)在进入系统时,根据用户输入的内容判断用户的合法身份。合法用户分为普通用户,经理和系统管理员,其中系统用户拥有所有的权限,经理拥有系统维护以外的所有权限,普通用户拥有辅助工具、系统设置、退出、开台、点菜、结账等权限; (2)桌台信息管理可以进行桌台的增加、删除、修改和查询; (3)职员信息管理可以进行职员的增加、删除、修改和查询; (4)菜品信息管理可以进行菜品的增加、删除、修改和查询; (5)辅助工具可对记事本、日历、计算器进行调用,方便快捷; (6)系统维护是系统管理员所拥有的功能,可以对其它用户的权限进行赋值,并可进行系统维护和系统备份; (7)系统设置下的密码修改可以方便用户对自己密码的重置,系统锁定可以对当前的系统进行锁定,使系统不能进行其它操作; (8)点击桌面上的图标,可以对桌台进行开台、点菜、取消开台、消费查询、结账等操作,采用图形化界面,方便、直观; (9)界面友好,并实时给予用户操作提示。 3 数据库逻辑结构设计 本餐饮管理系统涉及到的表有:系统用户表,用于保存所有用户信息;职员表,用于保存所有职员信息;菜品表,用于保存餐馆所有菜品的信息;桌台表,用于保存餐馆中所有桌台的信息;顾客消费信息表,用于保存顾客消费的信息以便于消费查询和结账。总共有5张表,根据业务和用户需求各个系统用例的不同,表格各不相同,下面是本系统数据库的详细设计。 3.1数据库E-R图 图2 用于登录信息表E-R图图3 菜谱信息表E-R图 图4 服务员信息表E-R图 图5 桌台信息表E-R图 、 图6 消费信息表E-R图 图7 数据库CMDB关系图 3.2 数据库逻辑设计 根据设计好的E-R图在数据库中创建各表,系统数据库中各个表的结构如下: 字段名数据类型长度主键是否可以为空说明User_id varchar 50 是否用户名 其中,前4张表是系统中的实体表,表5是消费表,其ID为消费流水号,由系统自动生成,用作表的主键,这样可以避免不同顾客的消费号重复。表2,3,4的主键分别 分别用作表5消费表的外键,用于关联与顾客消费相关的信息。 4 程序核心代码及控件描述 由于餐饮管理系统对数据库的访问比较频繁,为此,设计一个公共类databaselink.cs,用于建立对数据的连接,当其它模块需要对数据库访问时,调用此模块,这样可以减小程序的代码量,使程序的可移植性更加良好。代码如下: class DataBaseLink public static SqlConnection DataConn() string str = "server=localhost;uid=sa;pwd=0000;database=CMDB" SqlConnection sqlconn = new SqlConnection(str); return sqlconn; 4.1用户登录模块设计 为了使系统的安全性得到保障,登录模块是必不可少的,只有系统的合法用户才能登录系统。并且在用户登录时其身份和权限也被验证和。本系统的登录模块只需输入用户名和密码,单击按钮即可进行验证。主要用到TextBox和Button控件,分别用于用户名和密码输入,登录和取消选择。 核心代码: if (textBoxPwd.Text = "") MessageBox.Show("请输入密码", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); else /数据库连接 SqlConnection conn = PublicClass.DataBaseLink.DataConn(); conn.Open(); SqlCommand cmd = new SqlCommand("select count(*) from Users where User_id='" + textBoxUserName.Text + "' and User_pwd='" + textBoxPwd.Text + "'",conn); int i = Convert.ToInt32(cmd.ExecuteScalar(); if (i > 0) /用户身份验证,并验证权限 cmd = new SqlCommand("select * from Users where User_id='" + textBoxUserName.Text + "'", conn); SqlDataReader sdr = cmd.ExecuteReader(); sdr.Read(); string UserPower = sdr"User_power".ToString().Trim(); conn.Close(); FormMain main = new FormMain(); main.Power = UserPower; s = this.textBoxUserName.Text; main.Times = DateTime.Now.ToShortDateString(); main.Show(); this.Hide(); else MessageBox.Show("用户名或密码错误!"); 运行结果显示: 图8 用户登录界面 4.2基础信息模块设计 餐饮管理的基础信息模块,包括桌台信息、职员信息和菜品信息,各个小模块用到的知识点都是一样的,主要功能是实现桌台、职员和菜品的增删改查功能。下面以职员信息的设计为例介绍此模块的功能设计。此模块主要用到Button、TextBox、ComboBox 和DataGridView控件。分别用于功能选择,信息写入显示、信息选择和总体信息显示等功能。 职员信息模块核心代码如下: (1) DataGridView控件显示核心代码 private void BindData() /数据库连接并读取数据 SqlConnection conn = PublicClass.DataBaseLink.DataConn(); SqlDataAdapter sda = new SqlDataAdapter("select Waiter_id,Waiter_name,Waiter_sex,Waiter_age,Waiter_card,Waiter_tel,Waiter_salary from Waiters order by Waiter_id desc",conn); DataSet ds = new DataSet(); sda.Fill(ds); dataGridView1.DataSource = ds.Tables0; (2)执行保存功能的核心代码 private void button3_Click(object sender, EventArgs e) Int32 salary; /判断工资输入的合法性 if (Int32.TryParse(textBoxSalary.Text, System.Globalization.NumberStyles.Integer, System.Globalization.NumberFormatInfo.CurrentInfo, out salary) SqlConnection conn = PublicClass.DataBaseLink.DataConn(); conn.Open(); SqlCommand cmd = new SqlCommand("select count(*) from Waiters where Waiter_id='" + textBoxId.Text + "'", conn); int i = Convert.ToInt32(cmd.ExecuteScalar(); /如果数据库中已存在此Waiter_id的记录,则修改 if (i > 0) cmd = new SqlCommand("update Waiters set Waiter_id='" + textBoxId.Text + "',Waiter_name='" + textBoxName.Text + "',Waiter_sex='" + comboBoxSex.SelectedItem.ToString() + "',Waiter_age='" + textBoxAge.Text + "',Waiter_card='" + textBoxCard.Text + "',Waiter_tel='" + textBoxTel.Text + "',Waiter_salary='" + salary + "' where Waiter_id='" + textBoxId.Text + "'", conn); cmd.ExecuteNonQuery(); conn.Close(); BindData(); else if (textBoxId.Text = "") MessageBox.Show("没有填入数据!"); else /如果无此记录,则删除 cmd = new SqlCommand("insert into Waiters(Waiter_id,Waiter_name,Waiter_sex,Waiter_age,Waiter_card,Waiter_tel,Waiter_salary) values('" + textBoxId.Text + "','" + textBoxName.Text + "','" + comboBoxSex.SelectedItem.ToString() + "','" + textBoxAge.Text + "','" + textBoxCard.Text + "','" + textBoxTel.Text + "','" + textBoxSalary.Text + "')", conn); cmd.ExecuteNonQuery(); conn.Close(); BindData(); else MessageBox.Show("工资必须为数字"); (3)执行删除功能的核心代码 private void button6_Click(object sender, EventArgs e) /数据库连接 SqlConnection conn = PublicClass.DataBaseLink.DataConn(); conn.Open(); /删除数据 SqlCommand cmd = new SqlCommand("delete from Waiters where Waiter_id='"+dataGridView1.SelectedCells0.Value.ToString()+"'",conn); cmd.ExecuteNonQuery(); conn.Close(); /删除后列表显示 BindData(); 运行结果显示: 图9 职员信息管理运行界面图10 桌台管理运行界面 图11 菜品管理运行界面 4.3辅助工具模块设计 辅助工具栏目中日历主要用到MonthCalendar控件,用于日历的显示。记事本和计算器则直接调用系统的这些功能。本部分没有用到数据库的知识,但在餐饮管理系统中起到了工具的作用,为操作者带来了方便。核心代码如下: private void日历ToolStripMenuItem_Click(object sender, EventArgs e) FormCalender calender = new FormCalender(); calender.ShowDialog(); private void记事本ToolStripMenuItem_Click(object sender, EventArgs e) System.Diagnostics.Process.Start("notepad.exe"); private void计算器ToolStripMenuItem_Click(object sender, EventArgs e)

    注意事项

    本文(数据库课程设计报告-餐饮管理系统.docx)为本站会员(h****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开