ImageVerifierCode 换一换
格式:DOCX , 页数:41 ,大小:584.41KB ,
资源ID:10430285      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10430285.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大型数据库 课程设计报告 餐饮管理系统.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

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

1、大型数据库 课程设计报告 餐饮管理系统数学与计算机学院课程设计说明书课 程 名 称: 大型数据库-课程设计 课 程 代 码: 8424141 题 目: 餐饮管理系统 年级/专业/班: 计算机科学与技术 学 生 姓 名: x x 学 号: xxxxxxxxxxxxxxxxx 开 始 时 间: 2012 年 6月 10 日完 成 时 间: 2012 年 6 月 17 日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书(计算书、图纸、分析报告)撰写质量(45)总 分(100)指导教师签名: 年 月 日 大型数据库课 程 设 计 任 务 书学院名称: 数学与计算机学院

2、 课程代码:_8424141_专 业: 计算机科学与技术 年 级: 2007 一、设计题目餐饮管理系统(C/S) 二、主要内容系统概述:通过对学生在饭店的消费流程进行分析,完成具有食品原料管理、菜单管理、点菜管理、消费结算、按日(按月)结算、员工管理、餐厅管理等相关功能的小型数据库管理应用系统。本系统要求采用C/S模式。基本要求 :1、完成进人员、餐厅、食品价目表的维护2、完成消费表的生成,并计算消费折扣。 3、按人员、时间、餐厅统计计算消费总额4、按食品类别、时间、餐厅统计计算消费总额5、完成用户管理功能6、完成数据备份与恢复功能本题目所需的知识点:E-R关系图;数据库表设计,数据库表维护等

3、。三、具体要求及应提交的材料1、完成系统的需求分析:包含功能需求、数据需求、性能需求等。2、完成系统设计: 包含系统概要设计(软件结构图)及详细设计(画出流程图)。3、测试: 编写合适的测试用例完成系统的测试工作并分析结果。4、完成后应上交的材料: 课程设计说明书:包含封面、任务书、说明书(说明书见后面模板)。 包括系统设计目的要求,类的层次图(包括类成员列表)、设计思路,系统功能模块图、参考资料、程序清单、设计心得总结等。对照自己设计的完成情况认真书写。 软件源程序光盘。四、主要技术路线提示根据系统功能要求,可以将问题解决分为以下步骤: (1)分析系统中的各个实体之间的关系及其属性和行为;

4、(2)根据问题描述,设计系统的类层次; (3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的模块组装、调试; 五、进度安排课程设计共两周(16、17周)进行,其进度时间大致分配如下: (1)需求分析,系统菜单设计、类的层次设计(2天)(2)类的定义,各个类中属性、方法的声明(1天)(3)类的实现,各个类中成员函数的定义(3天)(4)程序主框架,程序的模块链接、调试(2天)(5)课程设计报告的书写(1天)(6)提问验收(1天)六、推荐参考资料1 杨树林. C#程序设计与案例教程M. 清华大学出版社.20072 马骏. C# 网络应用编程基础M.

5、 人民邮电出版社.20103 陈克力等. SQL Server 2005编程基础M. 清华大学出版社.2008指导教师 签名日期 年 月 日系 主 任 审核日期 年 月 日摘 要随着我国市场经济的快速发展,各行业都呈现出生机勃勃的发展景象,其中餐饮业的发展尤为突出。近两年来已呈现出高速发展的态势。但在快速发展的同时,餐饮业在日常经营管理中仍普遍采用手工管理方式,整体科技含量低。随着餐饮企业规模和数量的不断增长,手工管理模式无论是在工作效率、人员成本还是提供决策信息方面都已难以适应现代化经营管理的要求,因此制约了整个餐饮业的规模化发展和整体服务水平的提升。有效的管理成为了一个难题,为能有效的解决

6、这些问题提高企业的经济效益,在这些中小型饭店中采用工作流技术,结合饭店绿色管理内容,实施计算机管理信息系统不视为一条有效的解决途径。本论文主要针对中小型饭店餐饮管理中的一些问题,将其与计算机信息管理系统结合起来,实现中小型饭店管理信息计算机化、系统化,将中小型饭店管理中的工作流转化成比较科学化、规范化的业务流程,使管理基础数据更加准确化,管理人员摆脱了事务性工作,转而从事管理专业工作,为经营决策提供了快捷和强大的数据支持。把计算机用于餐饮企业管理,可在很大程度上提高管理者分析和决策的科学性,提高经营管职水平,带来更多的顾客,使企业取得更好的经济效益。关键词:计算机信息管理系统 中小型饭店 餐饮

7、管理1 引 言 1.1 问题的提出 民以食为天,随着人民生活水平的提高,餐饮业在服务行业中占有越来越重要的地位。努力在当前餐饮行业日趋激烈的竞争中脱颖而出,已成为每位餐饮业经营者所追求的目标。 经过多年发展,餐饮管理已经逐渐由定性管理,进入到重视定量管理的科学阶段。众所周知,在定量管理的具体实现方法和手段方面,最有效的工具就是电脑管理。传统的手工操作管理存在着许多无法避免的问题,该系统将能大大的降低许多问题,减轻人力与物力。1.2网络化 网络化就是通过计算机的网络来实现不同区域的不同用户来实现对报刊的订阅,这样也便于管理者对报刊的管理,显得更加方便。1.3任务与分析本软件能在很大程度上解决中小

8、型餐厅的消费管理,方便对顾客的消费进行管理,本系统运行时能在主菜单上看到当前的桌台情况是否被占用,能很好分配顾客的用餐,顾客点菜时能很好的进行记录,有方便的结账功能,直接计算出找零,本系统还能对桌台信息进行管理,方便以后的增加与减少桌台,同时也能方便的对服务人员的信息进行管理,有系统数据库备份功能,防止系统在死机的情况下丢失大量重要信息。2 需求分析 2.1用户功能2.11用户登录模块 该模块主要用于实现验证用户是否合法,只有合法用户才能有权登录,只有登录成功情况下才能进入系统功能主界面,并且在登录的同时能验证登录人员的管理权限,根据权限显示其能管理范围。2.1.2桌台信息管理模块该模块主要用

9、于管理桌台的信息,可以设置桌台名称,桌台位置,桌台占用所需要加钱。2.1.3服务员信息管理模块 该模块主要用于方便对服务人员的信息进行管理2.1.4修改密码模块该模块主要用于实现对登录人员的密码进行管理,长时间不更换密码是不安全的,增加此模块能增加系统的安全性。2.1.5开台模块该模块主要用于实现对顾客进行开台,已经占用的桌台不能被再次分配,方便分配未占用的桌台给顾客2.1.6取消开台模块该模块主要用于实现对已经开台的桌台进行取消开台。2.1.7消费查询模块该模块主要用于实现客户能够查询自己已消费清单情况,进行核对自己的消费。2.1.8结账模块该模块主要用于实现对客户的消费进行自动汇总,显示消

10、费金额,能进行找零计算。2.1.9数据库管理模块该模块主要用于实现对系统数据库的备份,防止系统在死机的情况下丢失大量重要信息。2.2 管理员功能 2.2.1增加报刊功能管理员在后台对餐饮各类进行添加,添加时需要填写的信息包括餐饮的食材、名称、价格等。2.2.2修改功能 管理员对已经存在的餐饮的信息进行修改,包括餐饮的食材、名称、价格等,但不能修改餐饮的编号,在这是因为以餐饮的编号作为主键进行的查找要修改的餐饮信息。2.2.3删除功能管理员在后台对已经存在的报刊进行删除,操作为直接输入要删除的餐饮的编号,后台自动的查找到这个餐饮,再从数据库中的餐饮信息表中彻底的删除该类餐饮的所有信息。2.2.4

11、查看用户订阅信息管理员登录后,可对报刊的征订情况进行查询,包括每个用户订餐的类型、数量和应付额。2.3数据分析概念模型分析需求分析阶段主要有两个方面的任务:分析用户的数据要求和分析用户的处理要求。通过以上分析,我们已经基本了解了用户对处理的要求,接下来需要的工作是分析用户对数据的要求。为了把用户的数据清晰明确地表达出来,系统分析员通常建立一个概念性的数学模型。概念性模型是一种面向问题的数学模型,是按用户的观点来对数据和信息建模。最常用的表示概念性数据模型的方法是实体-联系方法(Entity-Relationship Approach)。这种方法用E-R图描述现实世界中的实体,而不涉及这些实体在

12、系统中的实现方法,该方法又称为E-R模型,E-R图中共用三种符号:实体、属性和联系。通常实体用矩形来表示,属性用椭圆或圆角矩形来表示,联系用菱形来表示。联系有分为一对一、一对多和多对多三种类型。3总体设计3.1系统业务流程分析餐饮管理系统的业务流程图如图3.1所示。 图3.1 餐饮管理系统的业务流程图3.2 系统功能结构系统功能结构图如图3.2所示。4详细设计4.1 数据库设计本系统采用SQL Server 2005作为后台数据库,数据库名称为restaurantManage,其中包含5张数据表。下面分别介绍:4.1.1 数据表概要说明为了对本系统后台数据库中的数据表有一个更清晰的认识,在此设

13、计了一个数据表树形结构图,该结构图包括系统所有数据表,如图4.1所示。图4.1 数据表树状结构图4.1.2 部分数据表E-R图本里中规化出的实体主要有菜品信息实体、顾客点菜信息实体、桌台信息实体、用户登录信息实体和服务员信息实体。其中部分实体的E-R图如下所示。图4.2 用户表实体E-R图图4.3 菜品信息实体E-R图图4.4 桌台信息实体E-R图图4.5 员工信息实体E-R图图4.6 顾客点菜信息实体E-R图4.1.3 数据表的结构(1) food表(菜品信息表)表food用于保存菜品的基本信息,该表的结构如图4.7所示。图4.7 菜品信息表(2) guestfood表(顾客点菜信息表)表g

14、uestfood用于保存顾客点菜的详细信息,该表的结构如图4.8所示。图4.8 顾客点菜信息表(3) room表(桌台信息表)表room用于保存桌台的一些有关信息,该表的结构如图4.9所示。图4.9 桌台信息表(4) userlogin 表(登录人员信息表)表userlogin用于保存登录用户基本信息,表的结构如图4.10所示。图4.10 登录用户信息表(5) waiter表(餐厅服务人员信息表)表waiter用于保存餐厅服务人员的一些基本信息,表的结构如图4.11所示。图4.11 餐厅服务人员信息表4.2 系统主要功能模块设计与实现4.2.1 系统登录模块的设计与实现系统登录主要用于对进入餐

15、饮管理系统的用户进行安全性检查,以防止非法用户进入该系统。在登录时,只有合法的用户,才可以进入该系统。系统登录窗体如图4.12所示。图4.12 系统登录代码设计单击【确定】按钮,程序执行判断用户输入的用户名和密码是否正确,如果正确,则成功登录餐饮管理系统,并将用户名、用户使用权限、用户登陆时间传到主窗体中,同时分别使用Names、power、Times全局变量进行接受。否则,弹出“用户名或密码错误”信息提示。【确定】按钮的Click事件代码如下: private void btnSure_Click(object sender, EventArgs e) if (txtUserName .Te

16、xt = )/判断用户名是否为空 MessageBox.Show(用户名不能为空, 警告, MessageBoxButtons.OK, MessageBoxIcon.Warning); else if (txtPwd.Text = )/判断密码是否为空 MessageBox.Show(请输入密码, 警告, MessageBoxButtons.OK, MessageBoxIcon.Warning); else/用户名及密码不为空的情况下执行如下代码 SqlConnection conn = connectToDatabase .restaurantManagementConn (); conn.

17、Open(); SqlCommand cmd = new SqlCommand(select count(*) from UserLogin where UserName= + txtUserName .Text + and UserPwd= + txtPwd .Text + , conn); int i = Convert.ToInt32(cmd.ExecuteScalar(); if (i 0) cmd = new SqlCommand(select * from UserLogin where UserName= + txtUserName .Text + , conn); SqlDat

18、aReader sdr = cmd.ExecuteReader(); sdr.Read(); string UserPower = sdrPower.ToString().Trim(); conn.Close(); formMain main = new formMain(); main.power = UserPower; main.Names = txtUserName .Text ; main.Times = DateTime.Now.ToShortDateString(); main.Show(); this.Hide(); else MessageBox.Show(用户名或密码错误)

19、; 4.2.2 主窗体的设计与实现在正确验证用户的用户名和密码以后,就显示出餐饮管理系统的主窗体。主窗体主要用于显示系统所具有的功能,例如菜单栏里显示了基础信息、辅助工具、系统设置、退出系统、系统维护等几个功能模块。用户可以选择相应的按钮对应的子功能对系统进行不同的操作,餐饮管理系统的主窗体如图4.13所示。图4.13 主窗体主窗体实现的几个重要功能实现代码如下: /接收从login窗体传来的信息,以下四个定义的变量是以后代码用到的全局变量 public string power; public string Names; public string Times; private SqlDat

20、aReader sdr; /以下是窗体加载时执行的代码 private void formMain_Load(object sender, EventArgs e) StatusLabeUser.Text = Names; StatusLabeLoginTime.Text = Times; switch (power) case 0: StatusLabePower.Text = 超级管理员; break; case 1: StatusLabePower.Text = 经理; TSMenuItemSystemMaintenance.Enabled = false; break; private

21、 void formMain_Activated(object sender, EventArgs e)/窗体激发时执行如下代码 lvDesk.Items.Clear(); SqlConnection conn = connectToDatabase.restaurantManagementConn(); conn.Open(); SqlCommand cmd = new SqlCommand(select * from Room, conn); sdr = cmd.ExecuteReader(); while ( sdr .Read() string status = sdrRoomStat

22、us.ToString().Trim(); AddItems(status );/根据桌台使用与否,选择图片显示桌子是否在被用中 conn.Close(); private void AddItems(string status) if (status = 使用) lvDesk.Items.Add(sdrRoomName.ToString(), 1); else lvDesk.Items.Add(sdrRoomName.ToString(), 0); /右键中单击开台会执行如下代码 private void 开台ToolStripMenuItem_Click(object sender, Ev

23、entArgs e) if (lvDesk.SelectedItems.Count != 0) string names = lvDesk.SelectedItems0.SubItems0.Text; formOpen frm = new formOpen(); frm.name = names; frm.ShowDialog(); else MessageBox.Show(请选择一个桌台进行开台); /右键中单击取消开台会执行如下代码 private void 取消开台ToolStripMenuItem_Click(object sender, EventArgs e) if (lvDesk

24、.SelectedItems.Count != 0) string names = lvDesk.SelectedItems0.SubItems0.Text; SqlConnection conn = connectToDatabase.restaurantManagementConn(); conn.Open(); SqlCommand cmd = new SqlCommand(update Room set RoomStatus=待用,Num=0 Where RoomName= + names + , conn); cmd.ExecuteNonQuery(); cmd = new SqlC

25、ommand(delete from GuestFood where DiningTable= + names + , conn); cmd.ExecuteNonQuery(); conn.Close(); formMain_Activated(sender, e); else MessageBox.Show(请选择桌台); 其他右键功能代码在源代码中,代码设计思想和开台代码类似。 /单击listview控件中的一项内容时会执行如下代码,这里我们将listview的name定义为lvDesk private void lvDesk_Click(object sender, EventArgs

26、e) string names = lvDesk.SelectedItems0.SubItems0.Text; SqlConnection conn = connectToDatabase.restaurantManagementConn(); conn.Open(); SqlCommand cmd = new SqlCommand(select * from Room where RoomName= + names + , conn); SqlDataReader sdr = cmd.ExecuteReader(); sdr.Read(); string status = sdrRoomSt

27、atus.ToString().Trim();/将选中桌台的状态信息提取出来 sdr.Close(); if (status = 使用) 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;

28、if (status = 待用) this.contextMenuStrip1.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(); /双击listview控件中的一项内容时会执行如下代码 private

29、 void lvDesk_DoubleClick(object sender, EventArgs e) deskInfo desk = new deskInfo (); desk .tableName = lvDesk.SelectedItems0.SubItems0.Text; desk.ShowDialog(); /单击menustrip控件中基础信息下的桌台信息管理按钮会执行如下代码 private void TSMenuItemTableInfo_Click(object sender, EventArgs e) deskInfoManagement desk = new deskInfoManagement(); desk.ShowDialog(); menustrip控件中的其他按钮的代码设计思路与上面的单击menustrip控件中基础信息下的桌台信息管理按钮类似都是初始化一个相应窗体的对象,显示窗体。注:其他代码详见系统设计文档。4.2.3 右键菜单中的几个重要功能的介绍右键菜单功能中顾客可以选择开台,取消开台,点菜,查询消费记录以及结账,下

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1