数据库课程设计---餐饮管理系统

上传人:m**** 文档编号:58569821 上传时间:2022-02-28 格式:DOC 页数:24 大小:725.50KB
返回 下载 相关 举报
数据库课程设计---餐饮管理系统_第1页
第1页 / 共24页
数据库课程设计---餐饮管理系统_第2页
第2页 / 共24页
数据库课程设计---餐饮管理系统_第3页
第3页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
目录绪论 2开发背景 2技术要求与设计方法 2.第一章 需求分析 4第二章 总体设计 5第三章 数据库设计 6.3.1 概念结构设计 63.2 逻辑结构设计 8.第四章 详细设计 94.1 财务管理 94.2 餐桌管理 104.3 食品管理 114.4 优惠卡管理 13第五章编码测试 14设计总结 22学习体会 23致谢 24参考文献 25绪论幵发背景随着人民生活水平和生活方式的转变,餐饮业具有巨大的投资市 场,被称为中国的黄金产业,但同样也应看到,餐饮业不仅面临着巨 大的发展机遇,也面临着前所未有的挑战和考验。这些挑战主要来源 于以下几方面:1. 人才的专业化程度不够导致内功不足:因餐饮业门坎较低,中国的大多数餐饮企业的老板是从小店发展起来的,家族式管理的居多,还没有发展到聘请职业经理人,许多还是“人治”,并没有一套现代 企业制度和监督管理体制,所以从观念意识、经营思想和管理水平还 有待专业化。2. 变能力差,缺乏先进的信息工具:现在的餐饮市场火爆,许多 以前做电子、房地产等其他行业的老板都凭借雄厚的资金实力挤进餐 饮市场,争先恐后的上规模、上档次、比菜品、比服务、拼价格,使 餐饮市场竞争激烈,但是许多餐饮企业缺乏对市场的应变能力和灵敏 的信息工具,在现今网络经济的时代,许多餐饮企业还处在手工与半 手工状态。因此,设计一个餐饮管理系统,就显得越来越重要了。 技术要求与设计方法系统前台使用vc+ 6.0设计,通过目前较流行的 ADO与数据库连 接,后台使用功能强大的 Microsoft Sql Sever 2000 完成,对系统的安全 性和灵活性都有很好的支持。本系统设计简单明了,该餐饮管理系统能支 持不同类型,不同权限的用户都有一定的操作权限,管理员有全部管理权 限,比如:修改员工工资,增加菜单菜品,营业额查询分析。整个管理系统采用统一的窗体风格,功能导航简介明了,方便用户进 行操作;人性化的界面设计,时用户感到一种操作的温馨;另外,数据库 采用企业级的 SQLServer2000 做后台支持,并进新安全备份,保证了餐 饮管理系统的可靠性与维护性;管理员同时管理员可以赋予用户一定的操 作权限,方便管理本系统只是一个简单的餐饮管理系统,涉与到的操作简单,但基本可 以满足一个小型餐饮企业的管理需要。数据库课程设计 -餐饮管理系统 第一章 需求分析建立餐饮管理系统,首先要对该系统进行必要的需求分析,经分析, 该管理系统需包括以下的信息:日始日结:设定每个营业日的开始和结束酒菜设置:按类别(酒水饮料、凉菜、热菜主食、包桌、服务用品等)设 置酒菜数据营业分析:对营业数据进行统计分析、打印报表销售分析:营业总况、收入金额点单查询:查询所有历史点单操作员管理:管理操作员信息,并设置系统操作权限和最低折扣值帐单查询:查询所有已结帐单财务查询:查询各类单据和消费情况工资管理:员工工资的查询、修改、录入餐桌管理:餐桌类型与数量的删除、添加、修改菜品管理:菜品名称、类别与售价的添加、删除、修改的管理零售品管理:零售品名称、进价、与卖价的添加、修改、删除操作优惠卡管理:优惠卡的发行与管理第二早总体设计该餐饮管理系统的总的结构图如下:餐饮管理系统图2.1系统的总体结构图该餐饮系统设计的目标就是将传统的纸质餐饮管理转变为电子系统 管理,整个系统需要完成的功能有前台营业、营业设置、财务查询、营业 分析、系统管理。前台营业:可以幵台点菜、加菜、退菜换桌。营业设置:包括酒菜设置和房台设置两部分。财务查询:可以进行账单查询、挂账查询、订单查询。营业分析:提供销售分析、房台分析、酒菜分析、业绩分析等功能。系统管理:包括员工管理和挂账管理用户管理等操作。第三章 数据库设计3.1 概念结构设计经需求分析, 可以知道餐饮管理系统的主要功能, 并以此画出 ER 图。 整个 ER 图的所表述是这样的:一个顾客可以实现多次预定,但一次预定 只能针 对一个顾客;一个预定可以有多个预定内容,但一个预定内容只能对应一 个预定;一位顾客某时只能在一个台位消费,每个台位有服务员;每位顾 客每次消费形成一张费用单,一张费用单对应一个顾客(付账);付账通 过收银员,有多种方式;对于特殊的结账方式需要挂账人,而挂账对应挂 账明细,管理员可以通过管账明细就行结账。同时,由于系统支持预定, 由收银员接受预定,形成订单,为订单预定台位。因此,餐饮管理系统的 ER 图如下1/“匚、r1BluE1n图3-1餐饮管理系统总的E-R图3.2逻辑结构设计数据库的建设具体来说就是建立系统的各种表,同时设置表的主键和 外键。现在需要将上面的数据库概念转化为 SQL sever2000数据库系统支 持的实际数据模型,也就是数据库的逻辑结构。在逻辑结构设计阶段,通过把概念结构设计的 ER图转换为关系模式, 得到如下关系模式与属性:注:带下划线的为主码。点单(ID,消费单号,酒菜编号,菜的数量)订单(编号,定单人,身份证号,餐桌号,定金,联系电话,日期, 时间,备注);其中餐桌号为外键。餐桌表(餐桌号,种类,状态,容量,服务员号);其中服务员号为外键,来自员工表。挂帐人信息表(编号,挂帐人名,身份证,联系电话,联系地址,注 册时间);另外,还有一张电脑用户表(操作员表)如下:操作员表(用户名,用户密码,用户权限,员工编号):其中员工编 号为外键。第四章详细设计4.1财务管理该模块实现的功能是对财务的管理。通过该模块,可以方便的查 询到今日的营业额,历史营业额,以与员工的工资。该模块共有三部 分,如下:今日营业额查询,可以清楚的了解到营业额主要有三部分组成: 现金、支票、刷卡。以与每一部分的具体数额,同时进行当天的账务 结算,可以有效地减轻管理人员的负担。今日总营业额 80其中_现金0元支票0元刷卡B0元:帐务结耗j:取梢J图4-1今日营业额图历史营业额查询,可以方便的查询到以往每一天的营业额,该部分是对今日营业额的补充与扩充。1-12-28十 查询显示全部确定图4-2营业额查询图该部分是对员工工资的具体操作,通过输入员工姓名或者直接点 击员工的编号,可以方便的查询到员工工资的具体情况:如员工的姓名、 编号、基本工资、职务工资、总工资,也可以对员工基本工资和职务 工资进行进行修改。该界面虽然简单,但可实现功能齐全,可以满足 一般小型企业对员工工资修改的需求。图4-3 工资管理图4.2 餐桌管理本模块实现的功能是对餐桌的管理,与时了解餐桌的状况。通过对餐 桌类型、最大进餐人数、餐桌状态的管理,可以与时的了解餐桌的使用情 况,方便管理。同时,该模块可以方便的进行删除,修改,添加操作,亦 可进行预订。图4-4餐桌管理图4.3 食品管理该模块的主要功能是为了实现对食品与零售品的管理。通过该模块, 可以一目了然的看到各种食品与零售品的详细信息。同时,通过对该模块 的修改、删除、添加可以方便增加菜肴,修改售价等操作。通过给模块, 可以减轻管理人员的负担。图4-5食品管理图该界面亦属于食品管理部分,与菜品管理界面一样,能显示各种零售 品的数量种类等具体信息, 同时,可以对其进行修改、删除、添加等操作, 与其他界面不同的是,该界面增加了刷新操作,可以刷新界面,与时显示 零售品的具体信息,这符合一般餐饮企业任务的需求。图4-6零售品管理界面4.4 优惠卡管理该模块主要是为了实现对优惠卡的管理,通过添加、删除、修改,方便对优惠卡的管理图4-7优惠卡管理该部分设计界面简单,往往一个界面可以进行删除、修改、添加等操 作。该部分操作容易,易于上手,对于一般餐饮企业操作人员来说,都能 胜任。同时,该界面功能齐全,充分考虑到一般餐饮企业实际操作过程所 遇到的各种问题,方便管理人员解决各种问题。于此同时,该部分设计有 一些小在瑕疵,该部分将在 设计总结中出现。第五章 编码测试营业额查询 .该模块编码如下:/ Yyecx.cpp : implementation file/#include stdafx.h#include cyglxt.h#include Yyecx.h#include ADOConn.h#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE = _FILE_;#endif/ CYyecx dialogCYyecx:CYyecx(CWnd* pParent /*=NULL*/): CJieMian(pParent) /AFX_DATA_INIT(CYyecx)/ NOTE: the ClassWizard will add member initialization here/AFX_DATA_INIT void CYyecx:DoDataExchange(CDataExchange* pDX) CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CYyecx)DDX_Control(pDX, IDC_BUTTON3, m_QUEDING);DDX_Control(pDX, IDC_BUTTON2, m_XSQB);DDX_Control(pDX, IDC_BUTTON1, m_CHAXUN);DDX_Control(pDX, IDC_DATETIMEPICKER1, m_time);DDX_Control(pDX, IDC_LIST1, m_YYE);/AFX_DATA_MAP BEGIN_MESSAGE_MAP(CYyecx, CDialog)/AFX_MSG_MAP(CYyecx)ON_BN_CLICKED(IDC_BUTTON1, OnChaXun)ON_WM_CTLCOLOR()ON_WM_PAINT()ON_WM_NCLBUTTONDOWN()ON_WM_SYSCOMMAND()ON_WM_NCMOUSEMOVE()ON_BN_CLICKED(IDC_BUTTON2, OnButton2)ON_BN_CLICKED(IDC_BUTTON3, OnButton3)ON_WM_SETCURSOR()/AFX_MSG_MAPEND_MESSAGE_MAP()/ / / CYyecx message handlersvoid CYyecx:OnChaXun() CString time;_variant_t var;m_time.GetWindowText(time);ADOConn rst;CString ssql;ssql.Format(SELECT*FROM Yye WHERE时间 =%s,time);_RecordsetPtr m_pRecordset;m_pRecordset=rst.GetRecordSet(_bstr_t)ssql); if(m_pRecordset-adoEOF) MessageBox( 没有关于此日期的记录 , 餐饮管理系统 ); return; m_YYE.DeleteAllItems();var=m_pRecordset-GetCollect(时间 );if(var.vt!=VT_NULL) ssql=(LPCSTR)_bstr_t(var);m_YYE.InsertItem(0,ssql.GetBuffer(50); var=m_pRecordset-GetCollect( 营业额 ); if(var.vt!=VT_NULL)ssql=(LPCSTR)_bstr_t(var);m_YYE.SetItemText(0,1,ssql.GetBuffer(50);var=m_pRecordset-GetCollect( 现金 ); if(var.vt!=VT_NULL)ssql=(LPCSTR)_bstr_t(var); m_YYE.SetItemText(0,2,ssql.GetBuffer(50); var=m_pRecordset-GetCollect( 支票 ); if(var.vt!=VT_NULL)ssql=(LPCSTR)_bstr_t(var); m_YYE.SetItemText(0,3,ssql.GetBuffer(50); var=m_pRecordset-GetCollect( 刷卡 ); if(var.vt!=VT_NULL)ssql=(LPCSTR)_bstr_t(var);m_YYE.SetItemText(0,4,ssql.GetBuffer(50);rst.ExitConnect();HBRUSH CYyecx:OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) HBRUSH hbr = CDialog:OnCtlColor(pDC, pWnd, nCtlColor); switch (nCtlColor) case CTLCOLOR_EDIT: case CTLCOLOR_STATIC: case CTLCOLOR_DLG : case CTLCOLOR_LISTBOX: case CTLCOLOR_MSGBOX:case CTLCOLOR_SCROLLBAR:pDC-SetBkMode(TRANSPARENT);HBRUSH B = CreateSolidBrush(RGB(234,243,148); return (HBRUSH) B;return CDialog:OnCtlColor(pDC, pWnd, nCtlColor); void CYyecx:OnPaint() CJieMian:OnPaint();void CYyecx:OnNcLButtonDown(UINT nHitTest, CPoint point) / TODO: Add your message handler code here and/or call defaultCJieMian:OnNcLButtonDown(nHitTest, point);void CYyecx:OnSysCommand(UINT nID, LPARAM lParam) / TODO: Add your message handler code here and/or call defaultCJieMian:OnSysCommand(nID, lParam);BOOL CYyecx:OnInitDialog() CDialog:OnInitDialog();m_QUEDING.LoadBitmaps(IDB_QUEDING); m_QUEDING.SizeToContent(); m_XSQB.LoadBitmaps(IDB_XSQB); m_XSQB.SizeToContent();m_CHAXUN.LoadBitmaps(IDB_CHAXUN);m_CHAXUN.SizeToContent();m_YYE.SetTextColor(RGB (0, 255, 255);m_YYE.SetTextBkColor(RGB (140, 180, 20);m_YYE.SetBkColor(RGB (175, 190, 0); m_YYE.InsertColumn(0, 时间 ,LVCFMT_LEFT,90);m_YYE.InsertColumn(1, 营业额(元)丄VCFMT_LEFT,80);m_YYE.I nsertColu mn (2,现金(元),LVCFMT_LEFT,80);m_YYE.I nsertColu mn (3, 支票(元),LVCFMT_LEFT,80);m_YYE.I nsertColu mn (4, 刷卡(元),LVCFMT_LEFT,80); m_YYE.ModifyStyle(0,LVS_REPORT | LVS_SHOWSELALWAYS | LVS_SINGLESEL);m_YYE.SetExtendedStyle(LVS_EX_FULLROWSELECT |LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP);shuaxin();return TRUE; / return TRUE unless you set the focus to a control/ EXCEPTION: OCX Property Pages should return FALSE void CYyecx:shuaxin() m_YYE.DeleteAllItems();ADOConn rst;rst.OnInitADOConn();rst.Open(select * from Yye,adCmdText);int recordcount=rst.GetRecordCount();int ii;for(ii=1;ii=recordcount;ii+) m_YYE.InsertItem(ii-1,);m_YYE.SetItemText(ii-1,0,rst.GetFieldValue(时间 );m_YYE.SetItemText(ii-1,1,rst.GetFieldValue(营业额 );m_YYE.SetItemText(ii-1,2,rst.GetFieldValue(现金 );m_YYE.SetItemText(ii-1,3,rst.GetFieldValue(支票 );m_YYE.SetItemText(ii-1,4,rst.GetFieldValue(刷卡 );rst.Move(ii);rst.ExitConnect();void CYyecx:OnNcMouseMove(UINT nHitTest, CPoint point)/ TODO: Add your message handler code here and/or call defaultCJieMian:OnNcMouseMove(nHitTest, point);void CYyecx:OnButton2() / TODO: Add your control notification handler code hereshuaxin();void CYyecx:OnButton3() / TODO: Add your control notification handler code hereCDialog:OnOK();BOOL CY yecx:O nSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) if (pWnd=GetDlgltem(IDC_BUTTON1) | pWnd=GetDlgltem(IDC_BUTTON2)|pWnd=GetDlgltem(IDC_BUTTON3) SetCursor(LoadCursor(NULL,IDC_HAND);return TRUE; retur n CDialog:O nSetCursor(pWnd, nH itTest, message); 运行后如下:经测试后,发现,该模块可以很流畅的运行,同时,界面中的“查询 示全部 确定”操作都能方便的进行。运行整个系统改系统运行流畅,操 作简单,界面管理容易,能胜任一般餐饮企业的工作要求。设计总结该餐饮管理系统是基于 SQL sever2000 和 visua c+6.0 环境实现的。 该系统总共分为五大模块, 可以实现前台营业、 营业设置、 财务查询、 营业分析、系统管理等功能。运行该模块,输入管理员账号与密码,进入该系统的界面。 可以进入财务管理界面,该界面设计简单,但功能齐全,不仅可以查 看当天的营业额与各种支付情况,也可以查询近期一段时间内的营业情 况;同时可以方便的进行员工的工资管理。点击进入餐桌管理界面,可以 清晰的看到餐桌的编号、类型、状态、最大进餐人数等一系列的信息。同 时该系统可以方便的进行食品级优惠卡管理。在食品管理界面,我们不仅 可以清楚的看到各种菜系,同时可以详细的为各种菜品进行分类,如熟食 类,小吃类。除此之外,还有香烟等零售品。在优惠卡管理界面,能详细 的标明优惠卡的种类、 编号、 折扣率等信息, 同时可以对优惠卡进行修改、 删除、增加操作。该部分随简单,但可操作性较高。基本上可以满足一个餐饮企业的需要。该系统设计新颖,功能齐全; 但是由于水平有限,一些技术无法实现导致一些功能无法完成,也有一些 不足之处,如:用户可以随意修改工人的工资,系统财务部分过于复杂, 结算方式中刷卡问题无法彻底解决,系统管理员赋予用户的权限这个问题 无法彻底结果,管理员与用户权限相同的问题。学习体会终于完成了这份工程, 心终于可以歇歇了。 当再次回头看看这份课 程设计时, 感慨万千。 这是一个充实自己的过程, 每一天做的事儿就是 做程序,翻阅相关书籍,网上百度,起初根本不知道怎么会事儿,后来 才知道设计数据库真是一个相当复杂的过程。 你一开始告诉我们要提前 做,我们还感觉时间挺长, 可是后来才知道你是对的, 时间真的过的很 快,而我们还毫无进展,那时真是一个着急。慢慢的静下心来,慢慢摸 索,才逐渐有了思路。这是一个团队的工作,大家一起探讨问题,一起 解决问题,在这当中我们学到了团队带来的乐趣以与团队带来的效应。 我们不断找错,改错,不断改进,最终改进到这样的地步,时间仓促, 难免有不妥之处, 还望老师指点。 最后, 很感激学校给了我们这次动手 实践的机会, 让我们学生有了一个共同学习, 增长见识, 开拓视野的机 会。也感谢老师们对我们无私忘我的指导, 我会以这次课程设计作为对 自己的激励,继续学习。毕竟学习就是一个 just do it 的过程。致谢该系统的成功开发,不仅仅是我们开发者的功劳,我们要感谢在该系 统的开发设计期间,给予我们帮助的王红艺老师、宋晓莉老师以与同学的 帮助。没有他们的帮助我们要完成该设计将会面临很大的挑战。同时感谢 组长周峰同学的支持,给我们了很大的鼓励,作为一个团队,我们锻炼了 团队的精神。 宋老师悉心的给予我指导, 耐心的给我修改格式, 很是感谢 在此我向那些曾经给予我们帮助的老师、同学致以崇高的谢意。参考文献1 王珊 等 .数据库系统概论 .高等教育出版社, 20062 谭浩强.C语言程序设计北京:清华大学出版社,19993 E Win emiller 等.Visual Basic6 . 0数据库幵发.清华大学出版社, 1999.4 郭盈发等 . 数据库原理 . 西安电子科技大学出版社, 2002.5 赵松涛. 中文版 SQL SERVER 2000 应用与实例集锦 .人民邮电出社, 2002.6 大学编著 . 数据库原理经济科学出版社, 2000.7 钱雪忠 . 数据库原理与应用 . 北京邮电大学出版社 , 20078 Bain T . SQL server 2000 数据仓库与 Analysis Services. 中国电力出版社, 19989 王珊. 数据库技术与连机分析处理 . 北京科学出版社 , 199810 周山芙等 . 数据库应用程序设计教程 . 清华大学出版社 , 2004
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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