




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、餐饮管理系统1、前言在餐饮业务竞争越来越激烈的今天,如何提高服务质量,其管理能力显的越来越重要。 尤其是对一些大的餐饮店,餐饮店内部服务项目越多,管理难度越大,既要处理前台又要处 理后台的工作,所以一个好的管理系统可以提高酒店的管理水平也可以大幅度提高酒店服务 水平。目的随着当今社会信息化的日新月异的发展,计算机应用已经渗透到日常工作的许多方面无论是其自身还 是所发挥的作用,计算机都标志着一种高科技、高效率和高水平。为了企业创先进、争一流,为了企业的 发展一套好的系统必不可少.现在餐饮业发展速度飞快,要想在激烈的社会竞争有一席之地 ,好的服务是最 基本的保障,此次开发的餐饮管理系统就是针对现代
2、化社会管理和要求,在服务上提高自己的效率使自己的公司立于不败之地 定义餐饮管理系统,SQL E-R图参考资料机械出版社人民邮电出版社2004 年8月2004 年8月数据库应用系统开发技术朱如龙刘焰VC+冉 SQL2000开发技术汪晓平 钟军2、系统设计系统目标设计餐饮管理系统的主要目标是实现对酒店内部各种管理的电子化、自动化,提高各个模块之间的办公效率,为高质量餐饮服务提供保证。开发设计思想餐厅系统是按照国内餐饮行业最新要求开发的全心概念的信息管理系统。该系统将餐厅收银、往来帐务结算及销售情况统计工作在单计算机或网络系统中完成。主要特点包括:代码菜谱编制,方便统计,方便输入;开单、改单、结算、
3、打印、用户界面方便友好;系统专设往来账、内部账,结算方式灵活多样,结算消息详尽;系统可同前台系统衔接,查询客人信贷情况,往前台客人帐户转账;报表真实,实用性强,如:收银报表汇总收银、支票、信用卡、转帐等情况;菜肴销 售报表汇总各种菜肴的日、月销售量;员工销售统计表,可打印值台人员销售业绩核 实报表提供依据。账务系统共讷讷感的完整性。一旦该系统正式运行,餐厅每日的营业账和全部往来客户的账务操作结算都将依靠计算机,该系统面对当前餐厅餐饮业各种负复杂的结算要求应具有很强的应变能力。为此本系统为适应拥护的要求,设计了完整的转帐功能。帐务系统的可扩充性。由于餐厅业务的扩展,势必要求帐务结算系统随之扩展,
4、在不 修改程序的前提下,本系统可在相当可观的范围内,由用户扩展其营业项目和结算手段。帐务操作数据的可校验性。本系统提供了多种方便的查询,校核和统计功能,共帐务操作人员和专职人员自校对帐务数据。如当班收银员下班的时候直接统计当班期间的输单、收银情况。为餐饮企业管理人员提供及时准确的经营状况和帐务信贷系统情况。餐厅系统需要完成的功能有以下几点:定餐管理:定餐修改、定餐取消、定金处理、定餐统计、定餐查询、定餐报表。收款管理:立帐、校费明细录入、特色菜自定义、追加消费、消费修改、消费取消、加位、更改台号、折扣设定、消费服务设定、帐单打印、现付结算和房帐转录。交班管理:统计当班数据、为下班操作做准备、当
5、班帐务流水报表。系统报表:餐饮销售分析报表、每菜销售统计报表、营业收入报表、每菜销售统计日报表和当班特色菜报表。系统维护:餐厅代码设定、餐台号码以及贵宾房设定特色分类设定、特色编码设定、折扣设定、货币设定、服务费率设定、营业统计项目设定、成本统计项目设定、使用者权限维护、系统备份、系统恢复。餐饮成本核算:成本统计项目设定、成本管理。系统功能模块设计在系统功能分析的基础上,考虑Visual C+的编程特点,得到如下面功能模块图。图1-1为餐厅系统餐饮系统的功能模块图。餐饮系统餐饮系统功能图由上面的餐饮系统的功能分析,可以看出一个餐饮管理系统是一个复杂的系统工程,涉及到系统的各个方面。由于篇幅的问
6、题就不具体的介绍了。3、数据库设计在数据库系统开始设计的时候应该尽量考虑全面,尤其应该仔细考虑用户的各种需求,避免浪费不必要的人力和物力。数据库需求分析1-2所示。在仔细调查餐饮日产管理过程的基础上,得到本系统所处理的数据流程图如图餐饮管理数据流程图针对本市里,通过对餐饮系统管理系统的内容和数据流程分析,设计的数据项和数据结构如下。菜谱信息。包括的数据项有菜谱号、名称、所属价格、种类、描述等。值班员信息。包括数据项有值班员的姓名和口令。荣誉客户信息。包括的数据项有客户号、客户姓名、年龄、性别、职称、联系电话、工作 单位等。定餐信息。包括的数据项有客户号、桌号、结算日期、打折情况和总计等。有了上
7、面的数据结构、数据项和数据流程,就能进行下面的数据库设计。数据库概念设计和结算实体。各个实体具体的描叙E-R图及其之间的关系描述如下。图1-3为菜谱实体E-R图。本实例根据上面的设计规划出的实体有:菜谱实体、值班员实体、客户实体、定餐实体菜谱实体E-R图图1-4为值班员实体E-R图图1-5为客户实体E-R图客户实体E-R图图1-6为订餐信息实体E-R图订餐信息实体E-R图图1-7为结算信息实体E-R图实体和实体之间的关系E-R图如图1-8所示实体之间的关系E-R数据库逻辑结构设计在 上面的实体以及实际实体之间关系的基础上,形成数据库中表格以及各个表格之间的关系。餐饮管理系统数据库中各个表格的设
8、计结果如下面的几个表格所示。每个表格表示在数据库中的一个表表1-1为值班员ZSP表1-1值班员表ZSP列名数据类型可否为空说明ZSP_NAMEVARCHAR2(20)NOT NULL值班员(主键)ZSP_PSWDVARCHAR2(10)NOT NULL口令表1-2为菜谱信息表CP表1-2菜谱信息表CP列名数据类型可否为空说明CP_NOVARCHAR2(10)NOT NULL菜谱号(主键)CP_NAMEVARCHAR2(20)NULL菜名称CP_KINDVARCHAR2(20)NULL种类CP_PRICENUMBER(10)NULL价格CP_DETAILVARCHAR2(50)NULL描述表1-
9、3为荣誉客户信息表 KH表1-3荣誉客户信息表 KH列名数据类型可否为空说明KH_NOVARCHAR2(10)NOT NULL客户号(主键)KH_NAMEVARCHAR2(20)NULL姓名KH_GENDERVARCHAR2(2)NULL性别KH_YEARNUMBER(3)NULL年龄KH_JOBVARCHAR2(20)NULL职务KH_TELVARCHAR2(20)NULL联系电话KH_COMPANYVARCHAR2(20)NULL工作单位表1-4为定餐信息表表1-4定餐信息表列名数据类型可否为空说明DC_DESKVARCHAR2(20)NOT NULL桌号(主键)CP_NOVARCHAR2
10、(10)NOT NULL菜名号(主键)CP_NAMEVARCHAR2(20)NULL菜名称DC_NUMBERNUMBER(3)NULL数量DC_DATEDATENULL定餐日期末(主键表1-5为结算信息表JS表1-5结算信息表JS列名数据类型可否为空说明KH_NOVARCHAR2(20)NOT NULL客户号(主键)DC_DESKVARCHAR2(20)NULL桌号JS_DZNUMBER(3NULL打折情况TOTALNUMBER(5)NULL总计JS_DATEDATENOT NULL日期use masterGO % drop the exist databaseif exists (selec
11、t * from where name = RMS) drop database RMSGOcreate database RMS %create databaseGOuse RMSGO% drop exist tablesif exists (select * from where id = object_id(NREADERS)and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table CPGOif exists (select * from where id = object_id(NPOPEDOM)and OBJECTPROPERTY(id,
12、 NIsUserTable) = 1)drop table ZBYGOif exists (select * from where id = object_id(NBOOKS)and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table KHGOif exists (select * from where id = object_id(NBOOKREADERS) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table DCGOif exists (select * from where id = obje
13、ct_id(NMANAGERS)and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table JSGOCREATE TABLE “ JD” .CP(CP_NO VARCHAR2(10) NOT NULL,CP_NAME VARCHAR2(20) NULL,CP_KIND VARCHAR(10) NULL,CP_PRICE NUMBER(10) NULL,CP_DETAIL VARCHAR2(50) NULL,CONSTRAINT CP_NO_PK PRIMARY KEY(CP_NO)TABLESPACE USER_DATA ;CREATE TABLE
14、“ JD” .ZBY(ZBY_NAME VARCHAR2(20) NULL,ZBY_PSWD VARCHAR2(10) NULL,CONSTRAINT ZBY_NAME_PK PRIMARY KEY(ZBY_NAME)TABLESPACE USER_DATA ;CREATE TABLE “ JD” .KH(KH_NO VARCHAR2(10) NOT NULL, KH_NAME VARCHAR2(20) NULL, KH_GENDER VARCHAR2(2) NULL, KH_YEAR VARCHAR (3) NULL, KH_JOB VARCHAR2(20) NULL, KH_TEL VAR
15、CHAR2(20) NULL, KH_COMPANY VARCHAR2(20) NULL, CONSTRAINT KH_NO_PK PRIMARY KEY (KH_NO) )TABLESPACE USER_DATA ;CREATE TABLE “ JD” .DC (DC_DESK VARCHAR2(10) NOT NULL,CP_NO VARCHAR2(10) NOT NULL,CP_NAME VARCHAR2(20) NULL,DC_NUMBER NUMBER(3) NULL, DC_DATE DATE NOT NULL, CONSTRAINT DC_PKPRIMARY KEY(DC_DES
16、K,CP_NO,DC_DATE) )TABLESPACE USER_DATA ;CREATE TABLE “ JD” .JS(KH_NO VARCHAR2(20) NOT NULL,DC_DESK VARCHAR2(20) NULL,JS_DZ NUMBER(3) NULL,TOTAL NUMBER(5) NULL, JS_DATE DATE NOT NULL, CONSTRAINT JS_PKPRIMARY KEY(KH_NO,JS_DATE) )TABLESPACE USER_DATA ;数据字典数据项数据项描述=数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数
17、据项的逻辑关系值班员数据项描述数据项含义说 明别名回长度可否为空取值含义与其它数据项的逻 辑关系用户名唯一标识名字Char20NOT NULL密码varChar10NOT NULL权限管理权力Varchar50NOT NULL菜谱信息数据项描述数据项含义说明别名数据类型长度可否为空取值含 义与其它数据项 的逻辑关系菜谱编号唯一标识名字Varchar20NOT NULL菜名称varChar20NOT NULL种类Varchar20NULL价格Number10NULL描述Varchar50NULL荣誉客户信息数据项描述数据项含义说明别名数据类型长度可否为空取值含 义与其它数据项 的逻辑关系客户号唯
18、一标识名字Varchar10NOT NULL姓名Varchar20NULL性别Varchar2NULL年龄Number3NULL职务Vachar0NULL联系电话Vachar20NULL工作单位Vachar20NULL订餐信息数据项描述数据项含义说明别名数据类型长度可否为空取值含 义与其它数据项 的逻辑关系桌号唯一标识Varchar20NOT NULL菜谱号唯一标识varChar10NOT NULL菜名称Varchar20NULL数量Number3NULL订餐日期唯一标识DateNULL结算信息数据项描述数据项含义说明别名数据类型长度可否为空取值含 义与其它数据项 的逻辑关系客户号唯一标识Va
19、rchar20NOT NULL桌号varChar20NULL打折情况Varchar3NULL总计Number5NULL日期DateNOT NULL用户数据结构描述数据结构名用户含义说明定义了一个用户的所有有关的信息组成姓名、性别、客户号、年龄、联系电话、工作单位等数据库物理结构设计数据库物理设计指确定数据库在物理设备上的存储结构与存取方法。确定数据库的物理结构: 是否聚集存储,如何建立索引,数据的存放位置,确定系统配置等。介于本系统数据库的简单性,我们没有采用聚集存储之类的结构设计。4、功能模块设计设计登录和口令管理模块在未登录时,主对话框中的按钮,除了 “登录”“退出” “帮助” “关于”等
20、项,全是不可用的。为达到这一效果,在 CRMSDlg:OnInitDialog()中加入如下代码:GetDlgItem(IDC_BTN_UPDPWD)-EnableWindow(FALSE);GetDlgItem(IDC_BTN_DC)-EnableWindow(FALSE);GetDlgItem(IDC_BTN_JS)-EnableWindow(FALSE);GetDlgItem(IDC_BTN_KH)-EnableWindow(FALSE);GetDlgItem(IDC_BTN_CP)-EnableWindow(FALSE); GetDlgItem(IDC_BTN_ZBY)-EnableW
21、indow(FALSE); GetDlgItem(IDC_BTN_VIEWDC)-EnableWindow(FALSE);然后在资源编辑器加入如图所示的登录对话框。若成功,主对话框的事件处理函数CRMSDlg:OnBtnLogin()的代码如下,它来处理登陆事务。则使所有的按钮变为可用,示意登录成功。void CRMSDlg:OnBtnLogin()(CDlgLogin dlg;();try(CString sql_;(SELECT ZBY_NAME FROM ZBY WHERE ZBY_NAME=%s AND ZBY_PSWD=%s”, ,;_bstr_t sql = sql_;_Recor
22、dsetPtr pRst;pRst = m_DBCnt-Execute(sql, NULL, adCmdText);if (!pRst-adoEOF)(MessageBox(登录成功!);GetDlgItem(IDC_BTN_UPDPWD)-EnableWindow(TRUE);GetDlgItem(IDC_BTN_DC)-EnableWindow(TRUE);GetDlgItem(IDC_BTN_JS)-EnableWindow(TRUE);GetDlgItem(IDC_BTN_KH)-EnableWindow(TRUE);GetDlgItem(IDC_BTN_CP)-EnableWindo
23、w(TRUE);GetDlgItem(IDC_BTN_ZBY)-EnableWindow(TRUE);GetDlgItem(IDC_BTN_VIEWDC)-EnableWindow(TRUE); else(MessageBox(登录失败!);pRst-Close();catch(_com_error& e)(AfxMessageBox();return; )void CRMSDlg:OnBtnUpdpwd() ( CDlgUpdPwd dlg;();if !=(MessageBox(两次输入新密码不一致!);return; ) 下面是一段SQL语句:sql_format( SELECT ZBY
24、 NAME FORM ZBY WHERENZBME + %s ”“AND ZBY_PSWD=%s ” ,;这里并没有取出 ZBY表中的所有字段(ZBY_NAME ZBY_PSWD然后把密码字段和用户的输 入作比较来决定登录的与否;而是只取出了值班员名字( ZBY_NAME密码的校验放在数据 库服务器端进行。这主要是基于安全考虑。如果没有确实的需要,就竟量不从数据库里取用户密码这种敏感数据。虽然这只是一个细节,但是很多安全漏洞都是又对这种细节的忽视应 起的。登录成功后可以单击“修改口令”按钮激活“修改口令”界面如图所示。这部分事务的处理代码和登录处理类时,只是更为繁琐。所以只给代码, void
25、CRMSDlg:OnBtnUpdpwd() (CDlgUpdPwd dlg;();if !=(MessageBox(两次输入新密码不一致!);return;)try(CString sql_;(SELECT ZBY_NAME FROM ZBY WHERE ZBY_NAME=%s AND ZBY_PSWD=%s”,,;_bstr_t sql = sql_;_RecordsetPtr pRst;pRst = m_DBCnt-Execute(sql, NULL, adCmdText);if (pRst-adoEOF)(MessageBox(密码错误!);pRst-Close();return;)pR
26、st-Close();(Update ZBY SET ZBY_PSWD=%s WHERE ZBY_NAME=%s,;sql = sql_;m_DBCnt-Execute(sql, NULL, adCmdText);MessageBox(修改密码成功!);)catch(_com_error& e)(AfxMessageBox();return;)设计值班员管理模块下面开始设计值班员表(ZBY0的管理界面。在资源编辑器中加入一个对话框,用ClassWizard 为这个对话框生成一个类,名为CDlgViewZBY.在CRMSDlg的按钮事件处理函数中加入这样的代码来激活这个对话框。void CRMS
27、Dlg:OnBtnZby()(CDlgViewZBY dlg;ShowWindow(SW_HIDE);();ShowWindow(SW_SHOW);)这个模块,我们采用 ADO勺ActiveX控件来实现对数据库表格的管理。设计菜谱管理模块不同的用户需要不同界面每个窗口都需要和数据库连接,这一浪费了资源,也降低了系统性能,所以好的用户需要一个好的菜谱管理模块。此对话框设计如下图所示。这里用一个列表控件显示读取的数据记录。在CDlgViewCP:OnInitDialog() 中这个控件m_list )进行初始化。BOOL CDlgViewCP:OnInitDialog()(CDialog:OnIn
28、itDialog();(0,菜谱号); (1,菜名); (2,种类) (3,价格); (4,备注)RECT rect; (&rect); int wid =-; (0,wid/5); (1,wid/5); (2,wid/5); (3,wid/5); (4,wid/5);(LVS_EX_FULLROWSELECT);TRUE;returnVC+Extensions)CCPRs rs;try _bstr_t strSQL(SELECT * FROM CP);pRst = m_DBCnt-Execute(strSQL, NULL, adCmdText);TESTHR(pRst-QueryInterf
29、ace(_uuidof(IADORecordBinding),(LPVOID*)&picRs );TESTHR(picRs-BindToRecordset(&rs);int i = 0;订窖信息维护e桌号显示订餐退出I日期VC+Extensions)CCPRs rs;=;CString sql_;(SELECT * FROM CP WHERE cp_no=%s, no);_bstr_t strSQL = sql_;pRst = m_DBCnt-Execute(strSQL, NULL, adCmdText);if (pRst-adoEOF)_com_issue_error(0 x);TESTH
30、R(pRst-QueryInterface(_uuidof(IADORecordBinding),(LPVOID*)&picRs);TESTHR(picRs-BindToRecordset(&rs);picRs-Release();pRst-Close();return ;设计帮助模块本系统的帮助模块由 2部分组成。一部分是本程序的about窗口。另一个是在外部编译号的chm格式的帮助文件。单击主对话框中相应按钮可以激活2部分功能。全住网力 的、或髓 S 鹫在次 最聚: 业系工括好样 友多 方Ik 面式 界方 用结计包:金 饮疏点*定 塞况特,备.要入、内捎 国理售车饕,S 廖曷。亶账S 按息
31、及成方,来尽定餐 是信算完,差详,定 统的结中国设息改、 至翥统,专湛询 厅阜统算餐查 餐心委方开系结定W0K5、小结经过半个月的设计和调试,完成了餐饮管理系统。其功能基本符合目前餐饮业的要求.先进性:设计合理适用性:功能齐全,模块式可拆卸易用性:操作简单,容易维护稳定性:系统成熟,稳定,安全性能好在整个设计过程中,也并不是很顺利,也出现过很多的问题,不知不觉就钻牛角尖,在不断学习的过程中我体会到:1、作是一个不断学习新鲜事物的过程,从设计初的不懂到最后能够顺利完成,我体会到在 实践中学习的重要性,这对于将来我未来的学习具有重要意义。2、由于自己的专业知识不够 ,在编程的过程中遇到了很多很多的问题,在一步一步的检查后基本上实现了设计处的要求,但功能不是很完善,有待进一步提高3、设计过程中,经常会遇到困难, 我学会通过别人的代码理解语言的含义但这并不是抄袭, 然后根据自己的设计要求编写代码。设计中得到老师和同学的悉心指导。4、总之,通过此次数据库课程设计,我深刻体会到要做好一个完整的事情,需要有系统的思维方式和方法,对待一个新的问题,要耐心、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025贵阳学院辅导员考试试题及答案
- 2025甘肃机电职业技术学院辅导员考试试题及答案
- 2025白城职业技术学院辅导员考试试题及答案
- T/ZBH 010-2019中空玻璃用反应型热熔密封胶
- 浙江嘉兴一只怪兽超级健身中心招聘笔试题库2025
- 安徽航瑞国际滚装运输有限公司招聘笔试题库2025
- 2025年月度绩效考核与反馈测试试题及答案
- 2025年职业卫生与环境管理考试卷及答案
- 2025年演艺与文化管理专业考研试题及答案
- 2025年网页设计与前端开发能力测试试卷及答案
- 2024贵州贵阳农商银行“超享聘旭日”大学生招聘50人笔试历年典型考题及考点剖析附带答案详解
- 上海市徐汇区2025届八下物理期末考试试题含解析
- 2025浙江省乐清苍南永嘉二模联考科学试题卷
- 2025年中国镍合金箔带材市场调查研究报告
- 2024年高考江苏卷生物试题解析版
- 基于BIM的建筑行业工程项目施工质量管理与改进报告
- 2025人教版五年级数学下册期末复习计划
- 2024年河北省井陉县事业单位公开招聘警务岗笔试题带答案
- 2025年政治考研真题及答案
- (三模)合肥市2025届高三年级5月教学质量检测英语试卷(含答案)
- 福建省莆田市2025届高三下学期第四次教学质量检测试生物试题(含答案)
评论
0/150
提交评论