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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

餐饮管理系统数据库课程设计论文.docx

1、餐饮管理系统数据库课程设计论文摘 要随着我国市场经济的快速发展,各行业都呈现出生机勃勃的发展景象,其中餐饮业的发展尤为突出。近两年来已呈现出高速发展的态势.但在快速发展的同时,餐饮业在日常经营管理中仍普遍采用手工管理方式,整体科技含量低.随着餐饮企业规模和数量的不断增长,手工管理模式无论是在工作效率、人员成本还是提供决策信息方面都已难以适应现代化经营管理的要求,因此制约了整个餐饮业的规模化发展和整体服务水平的提升。有效的管理成为了一个难题,为能有效的解决这些问题提高企业的经济效益,在这些中小型饭店中采用工作流技术,结合饭店绿色管理内容,实施计算机管理信息系统不视为一条有效的解决途径。本论文主要

2、针对中小型饭店餐饮管理中的一些问题,将其与计算机信息管理系统结合起来,实现中小型饭店管理信息计算机化、系统化,将中小型饭店管理中的工作流转化成比较科学化、规范化的业务流程,使管理基础数据更加准确化,管理人员摆脱了事务性工作,转而从事管理专业工作,为经营决策提供了快捷和强大的数据支持。把计算机用于餐饮企业管理,可在很大程度上提高管理者分析和决策的科学性,提高经营管职水平,带来更多的顾客,使企业取得更好的经济效益。关键词: 计算机信息管理系统,中小型饭店, 餐饮管理第1章 系统简介1。1 课题背景民以食为天,随着人民生活水平的提高,餐饮业在服务行业中占有越来越重要的地位。努力在当前餐饮行业日趋激烈

3、的竞争中脱颖而出,已成为每位餐饮业经营者所追求的目标。 经过多年发展,餐饮管理已经逐渐由定性管理,进入到重视定量管理的科学阶段。众所周知,在定量管理的具体实现方法和手段方面,最有效的工具就是电脑管理.传统的手工操作管理存在着许多无法避免的问题,该系统将能大大的降低许多问题,减轻人力与物力。1。2 系统开发的意义本系统属于小型的餐饮管理系统,可以有效地对中小型餐厅消费进行管理,本系统应达到以下目标:系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠.实现对餐厅顾客开台、点菜/加菜、账目查询和结账等操作。对用户输入的数据,进行严格的数据检验,尽可能的避免人为错误.实现对消费

4、账目自动结算。实现对消费的历史记录进行查询。系统应最大限度地实现易维护性和易操作性。1.3 系统开发及运行环境系统开发平台:Microsoft Visual Studio 2008系统开发语言:C#数据库管理系统软件:SQL Server 2005运行平台:Windows XP(SP2)/Windows 2000(SP4)/Windows Server 2003(SP1)运行环境:Microsoft.NET Framework SDK v2.0分辨率:最佳效果1024*768像素第2章 需求分析2。1 餐饮管理系统的可行性分析2。1。1 技术水平分析本软件采用Microsoft Visual

5、Studio 2005为前台开发工具,SQL Server 2005 数据库作为后台数据库支持.本软件专为中小型餐厅消费管理而设计,本软件可在Windows 2000/XP 上运行,不用专业人士去配制服务器可以直接安装使用,具有很好的可移植性,有良好的中文界面,操作简便,适合餐饮服务人员使用。2.1。2 经济效益分析本软件能在很大程度上解决中小型餐厅的消费管理,方便对顾客的消费进行管理,本系统运行时能在主菜单上看到当前的桌台情况是否被占用,能很好分配顾客的用餐,顾客点菜时能很好的进行记录,有方便的结账功能,直接计算出找零,本系统还能对桌台信息进行管理,方便以后的增加与减少桌台,同时也能方便的对

6、服务人员的信息进行管理,有系统数据库备份功能,防止系统在死机的情况下丢失大量重要信息。2.1。3 市场分析现如今餐饮业发展壮大迅速,拥有一套良好的餐饮管理系统能在很大程度上解决许多问题,方便对服务人员的管理,以及内部的一些信息变化的管理如菜品的增删,价格的改变、桌台的增删、人员的流动,还能很好的管理顾客的点菜、查询消费记录、结账,这将能改善传统意义上的管理,使管理变得方便并且有效,所以本系统有着很好的市场需求前景.2。2 餐饮管理系统的需求分析通过实际了解,要求本系统具有以下功能:系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储 安全可靠.实现对餐厅顾客开台、点菜/加菜、账目

7、查询和结账等操作.对用户输入的数据,进行严格的数据检验,尽可能的避免人为错误.实现对消费账目自动结算。实现对消费的历史记录进行查询。实现对餐厅人员流动进行管理以及能够管理餐厅桌台信息.系统应最大限度地实现易维护性和易操作性.餐饮管理系统的用例图,如下图2.1所示。图2。1 餐饮管理系统的用例图 第3章 总体设计3.1 项目规划餐饮管理系统主要由用户登录、桌台信息管理、服务员信息管理、修改密码、开台、取消开台、点/加菜、消费查询、数据库管理和退出等模块组成,具体规划如下。(1) 用户登录模块该模块主要用于实现验证用户是否合法,只有合法用户才能有权登录,只有登录成功情况下才能进入系统功能主界面,并

8、且在登录的同时能验证登录人员的管理权限,根据权限显示其能管理范围。(2) 桌台信息管理模块该模块主要用于管理桌台的信息,可以设置桌台名称,桌台位置,桌台占用所需价钱.(3) 服务员信息管理模块该模块主要用于方便对服务人员的信息进行管理。(4) 修改密码模块该模块主要用于实现对登录人员的密码进行管理,长时间不更换密码是不安全的,增加此模块能增加系统的安全性。(5) 开台模块该模块主要用于实现对顾客进行开台,已经占用的桌台不能被再次分配,方便分配未占用的桌台给顾客(6) 取消开台模块该模块主要用于实现对已经开台的桌台进行取消开台。(7) 消费查询模块该模块主要用于实现客户能够查询自己已消费清单情况

9、,进行核对自己的消费。(8) 结账模块该模块主要用于实现对客户的消费进行自动汇总,显示消费金额,能进行找零计算.(9) 数据库管理模块该模块主要用于实现对系统数据库的备份,防止系统在死机的情况下丢失大量重要信息.3。2 系统业务流程分析餐饮管理系统的业务流程图如图3。1所示. 图3.1 餐饮管理系统的业务流程图3.3 系统功能结构系统功能结构图如图3。2所示。图3。2 系统功能结构图1第4章 详细设计4.1 数据库设计本系统采用SQL Server 2005作为后台数据库,数据库名称为restaurantManage,其中包含5张数据表。下面分别介绍:4.1。1 数据表概要说明为了对本系统后台

10、数据库中的数据表有一个更清晰的认识,在此设计了一个数据表树形结构图,该结构图包括系统所有数据表,如图4。1所示。图4。1 数据表树状结构图4.1。2 部分数据表E-R图本里中规化出的实体主要有菜品信息实体、顾客点菜信息实体、桌台信息实体、用户登录信息实体和服务员信息实体。其中部分实体的E-R图如下所示.图4。2 用户表实体E-R图图4。3 菜品信息实体ER图图4。4 桌台信息实体ER图图4。5 员工信息实体ER图图4.6 顾客点菜信息实体E-R图4。1。3 数据表的结构(1) food表(菜品信息表)表food用于保存菜品的基本信息,该表的结构如图4。7所示。图4.7 菜品信息表(2) gue

11、stfood表(顾客点菜信息表)表guestfood用于保存顾客点菜的详细信息,该表的结构如图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 系统登录模块

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

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

14、nagementConn (); conn。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

15、。Text + ”, conn); SqlDataReader sdr = cmd.ExecuteReader(); sdr。Read(); string UserPower = sdr”Power”.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

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

17、tring Times; private SqlDataReader 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.E

18、nabled = false; break; private 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(

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

20、ripMenuItem_Click(object sender, EventArgs 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(ob

21、ject sender, EventArgs e) if (lvDesk.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);

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

23、void lvDesk_Click(object sender, EventArgs 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。ExecuteRe

24、ader(); sdr.Read(); string status = sdrRoomStatus”。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

25、; this.contextMenuStrip1。Items6。Enabled = true; 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;

26、 conn.Close(); /双击listview控件中的一项内容时会执行如下代码 private 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

27、, EventArgs e) deskInfoManagement desk = new deskInfoManagement(); desk。ShowDialog(); menustrip控件中的其他按钮的代码设计思路与上面的单击menustrip控件中基础信息下的桌台信息管理按钮类似都是初始化一个相应窗体的对象,显示窗体。注:其他代码详见系统设计文档.4.2.3 右键菜单中的几个重要功能的介绍右键菜单功能中顾客可以选择开台,取消开台,点菜,查询消费记录以及结账,下面介绍其中三个重要功能的实现代码,有开台,点菜以及结账,窗体运行结果分别如图4.14、图4.15和图4。16所示.图4。14 开

28、台窗体图4。15 点菜窗体图4。16 结账窗体凭证信息录入窗体的主要实现代码如下:图4。15的实现代码 public string name; public SqlConnection conn; private void formOpen_Load(object sender, EventArgs e) conn = connectToDatabase。restaurantManagementConn(); conn.Open(); SqlCommand cmd = new SqlCommand(select from Room”, conn); SqlDataReader sdr = cm

29、d.ExecuteReader(); while (sdr.Read()) cbNum。Items。Add(sdr”RoomName。ToString()。Trim()); cbNum.SelectedItem = name。Trim(); sdr.Close(); cmd = new SqlCommand(”select from Waiter, conn); sdr = cmd。ExecuteReader(); while (sdr。Read() cbWaiter。Items.Add(sdr”WaiterName”.ToString().Trim(); cbWaiter。SelectedI

30、ndex = 0; sdr。Close(); private void txtNum_KeyPress(object sender, KeyPressEventArgs e) if ((e。KeyChar != 8 !char。IsDigit(e.KeyChar) & e。KeyChar != 13) MessageBox。Show(请输入数字); e。Handled = true; private void btnSave_Click(object sender, EventArgs e) if (txtNum。Text = ” | Convert。ToInt32(txtNum.Text) = 0) MessageBox。S

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

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