餐饮管理信息系统分析与设计

更新时间:2023-11-03 13:04:57 阅读: 评论:0

牢记历史勿忘国耻-望帝春心托杜鹃

餐饮管理信息系统分析与设计
2023年11月3日发(作者:二十年后的学校)

《餐饮管理信息系统分析与设计》

一、开发背景

近年来,随着信息技术的迅速发展及管理理论的不断突破创新,管理信息系统也得到了飞速

的发展,在人们的工作、生活与学习中扮演着越来越重要的角色。下面主要是以餐饮行业为切入

点,重点探讨酒店餐馆信息系统。随着信息化的发展,信息系统不断提高着餐饮企业的管理效率,

但是现有的信息系统只是对传统的点餐模式的“无纸化”办公,没有整合供应链与成本管理的思

想。餐饮企业还处在厨师长的领导下的计划经济模式,整个菜系的管理由单纯的厨师长管辖。一

个好的厨师长的去留关系到一个餐饮企业的命运,传统餐饮企业的扩张模式受到厨房体系的制约

(火锅店除外)究其原因,是没有对菜品实施标准化处理,没有对菜品生产流程标准化固定下来。

因此,开发一个酒店餐馆信息系统是十分必要的,通过前台的菜品信息展示以及包厢展示,

通过购物车的模式形成餐饮企业的电子商务平台,通过后台的库存系统,整合餐饮企业的供应链,

提高其在信息化条件下的管理水平,对在现在激烈竞争的餐饮行业中求发展的餐饮企业来说,无

疑是一个福音。我们通过对餐饮企业的菜品和菜料的标准化处理,大大压缩了企业的库存成本,

提高餐饮企业的经济效益。

酒店餐饮信息系统

二、系统分析

本文开发的管理信息系统全称为酒店餐馆信息系统,作者主要负责此系统中的菜品信息与订

餐管理模块,其中重点是物料分解模块的相关流程分析与开发。

(一)系统概况

1.系统简介

订餐服务是酒店餐饮企业的一项日常工作,完成酒店餐饮企业订餐服务的订餐系统,作为酒

店餐饮管理系统的一部分,将为酒店餐饮企业提高服务效率和质量,提高企业经济效益起到重要

的作用。目前,我国餐饮业普遍采用的订餐工作方式是客户通过电话与餐厅联系,由餐厅工作人

员通过参议企业内部的餐饮管理系统实施订餐工作。从一定程度上来讲,这种工作方式仍没有完

全脱离手工式工作,工作效率低。同时,从客户订单需求角度考虑,客户希望在订餐前了解更多

的有关信息,如餐厅能提供的菜的品种、各种菜的风味、菜的直观图片等,而这些信息仅仅从餐

厅工作人员的电话中是不可能有全面的了解。这无疑给客户的订餐带来不便,同时也影响了餐厅

的工作效率和企业的声誉。

(二)可行性分析

1.经济可行性

对于高校来讲,在各项硬件购置以及软件系统的开发中不必要再追加过多资金,而只需要利

用学校现有的资源就可以基本完成系统的开发实施工作。有实验室硬件环境的支持,有高校专业

指导教师的帮助,以及对现实酒店的抽象。是这一系统的开发有了经济可行性。现代餐饮企业的

不断发展,特别的中小餐饮企业的腾飞,为我们系统的开发提供了庞大的市场依托。

2.技术可行性

对于高校来说,其本身的工作的特殊性使得其对于信息技术的研究和应用一直走在各行业的

前面。现代的数据库技术和网络技术趋于成熟,计算机管理在餐饮企业的管理业务过程中扮演着

越来越重要的作用,特别是无线网络的发展,大大节约了管理成本。WEB开发语言的(如ASP

PHPJSP等)发展为技术开发提供了参考开发工具。

3.管理可行性

酒店餐饮信息系统

程,提高信息系统运行效率。管理业务流程中,相关单据的传递尽量采用电子化的方式,努力

避免使用纸质传递的方式。这一方面加快了信息传递的速度,另一方面也符合当前倡导的建设节

约型社会的要求。一张单据的产生有其上一流程产生的单据为依据,各种单据相互联系,环环相

扣,有助于检验或保证相关单据的真实性,有利于明确各个流程中相关责任人的责任,从而达到

强化过程管理的目的。

订单管理业务流程的处理过程是:顾客通过注册并登陆订餐网站的主页,选择喜欢的菜品放

入购物车,在购物车里调整菜品的数量,然后通过点击提交,可以去收银台页面,生成菜品订单,

后台生成菜料单。如图3-3-1所示。

顾客

登陆

会员信息

判断非会员注册

会员

点菜

菜品信息

厨房

点菜单

结账

确认订单

判断配菜仓库

已付款

配菜单

2-1 业务流程图

酒店餐饮信息系统

(四)数据流图

1.第一层(顶层)数据流程

第一层数据流程主要是管理员后台定义菜品和菜料信息。管理员从仓库领取菜料的信息,包

括菜料编号和菜料名称,录入材料表。从厨房领取菜品的信息,包括菜品的编号、名称、价格、

初始数量、图片、简介、所需要菜料的编号和数量。录入菜品表。这样在订餐的页面就可以显示

菜品的信息,顾客就可以通过浏览订餐系统的网页,查看菜品的相关信息,自主选择所喜欢的菜

品和数量,如图3-4-2所示。

通过定义菜品与菜料的关系,就可以在顾客提交菜品订单的同时,将菜品分解为所需要的菜

料传递给仓库,仓库就可以进行菜料的配货。这样的大大节省了菜品分解模块的时间。在相同的

时间段内自动生成菜品订单和领料单。

管理员

D4菜料单

P3

菜料定义

D5菜品单

P4

菜品定义

D7菜品清单

F4 菜品表F3菜料表

F4 菜品表F3菜料表

D6菜料清单

2-4-2 第一层数据流程图

2.第二层数据流程

第二层数据流程主要在前台页面进行,顾客通过将菜品添加到购物车中,提交购物车里的菜

品信息,就可以将这些被选择的菜品信息写入到订单里。同时将顾客登陆是的用户名以及顾客在

订包厢系统里所预定的包厢的信息一同写入到订单里,生成订单的同时把订单号返回给顾客,顾

客就可以凭借订单号,到指定的包厢和时间用餐了,如图3-4-3所示。

为了限制过量的订餐,我们在菜品的数量上做了限制,当菜品表里菜料的数量为1的时候,

就会在顾客点菜的时候提示顾客。通过这样的方式,可以让顾客所点的菜品都可以在规定的时间

内生产出来。顾客在提交订单的同时,订单里的菜品所需要的菜料生成的领料单也传递到仓库,

酒店餐饮信息系统

通过这种方式,仓库就可以及时为厨房的菜品生产提供菜料了。

P1

顾客

D1点菜单

订餐

D2订单F1订单表

F1订单表

D9订单号

2-4-3 第二层数据流程图

3.第三层数据流程

第三层数据流程主要是在顾客提交订单的过程中进行。通过查询顾客订单中菜品的编号和数

量,查看菜品表里每种菜品所需要的菜料的数量,然后乘以订单中菜品的数量,将所得到的菜料

的编号和菜料的数量写入到领料表里。生成出库菜料的信息发送给仓库,这样就可以实现仓库将

所需要的菜料发送给厨房,如图3-4-4所示。

顾客仓库

D1点菜单

P1P2

订餐菜品分解

D2订单

D3领料单F2 领料表

D8出库单

F2 领料表

2-4-4 第三层数据流程图

(五)数据字典

1.数据项

编号:I1

名称:菜品编号

简述:菜品的识别编号

类型:字符型

宽度:4

编号:I2

名称:菜料编号

简述:识别菜料的编号

酒店餐饮信息系统

类型:字符型

宽度:4

编号:I3

名称:订单编号

简述:订单的识别编号

类型:字符型

宽度:10

2.数据处理

编号:P1

名称:订餐

输入:点菜单

处理:汇总点菜单

输出:订单

编号:P2

酒店餐饮信息系统

编号:D1

名称:点菜单

简述:返回前台点菜信息

组成:编号+名称

来源:顾客

去向:订餐处理模块

编号:D2

名称:订单

简述:汇总的点餐表

组成:编号+菜品+数量

来源:订餐处理模块

去向:菜品分解模块

编号:D3

名称:领料单

简述:记录领取菜料的信息

组成:菜料编号+菜料名称+菜料编号

来源:菜品分解模块

去向:仓库

编号:D4

名称:菜料单

简述:管理员录入的菜料单

组成:菜料编号+菜料名称

酒店餐饮信息系统

编号:D6

名称:菜料清单

简述:菜料的详细信息

组成:菜料的编号+菜料的名称+菜料的数量

来源:菜料处理模块

去向:菜料表

编号:D7

名称:菜品清单

简述:绑定菜品与菜料的信息

组成:菜品编号+菜品名称+菜料名称+菜料数量

来源:菜品处理模块

去向:菜品表

编号:D8

名称:出库单

简述:领料表里的信息

组成:菜料编号+菜料名称+菜料数量

来源:领料表

去向:仓库

编号:D9

名称:订单号

简述:订单表里生成订单号码

组成:订单号

来源:订单表

去向:顾客

4.数据存储

编号:F1

名称:订单表

简述:储存订单的信息

组成:编号+订餐人+菜品+价格+订餐时间+包厢号+总价格

关键字:编号+订餐人

酒店餐饮信息系统

编号:F2

名称:领料表

简述:出库的信息

组成:编号+出库菜品+出库菜品数量

关键字:编号

编号:F3

名称:菜料表

简述:配菜需要的菜料

组成:编号+名称+检索码

关键字:编号+检索码

编号:F4

名称:菜品表

简述:所有菜品信息

组成:编号+菜品名称+价格+简介+大图+小图+检索码

关键字:编号+检索码

5.外部实体

编号:S1

名称:顾客

简述:订餐的发起者

输入的数据流:点菜单

输出的数据流:无

编号:S2

名称:管理员

简述:更新菜品和管理订单的部门

输入的数据流:菜品信息

酒店餐饮信息系统

输出的数据流:出库单

三、模块分析

系统的主要结构如图3-1-1所示。

酒店餐馆信息系统

3-1-1 系统的主要模块

酒店餐饮信息系统

四、系统设计

1.概念结构设计

概念结构设计的任务是在需求分析阶段产生的需求说明书的基础上,按照特定的方法

把它们抽象为一个不依赖于任何具体机器的数据模型,即概念模型。概念模型使设计者的

注意力能够从复杂的实现细节中解脱出来,而只集中在最重要的信息的组织结构和处理模

式上。E-R图由三种符号组成,如图4-2-1所示。“实体”是现实世界中描述客观事物的概念。

“属性”一般指试题具有的某种特性。“联系”可以分为两类:一类是实体没不得联系;另

一类是实体之间的联系。

4-2-1 E-R图组成符号

顾客申请会员

11

n

点餐

n

菜品设置管理员

n

组成

n

菜料

n

设置

nn

n

4-2-2 全局E-R

为了简明图示,属性未在图中标出。各实体的属性分别为:

顾客:(临时编号,IP地址)

会员:(会员编号,会员名称,密码,电话,地址,邮箱)

菜品:(菜品编号,菜品名称,数量,价格,简介)

菜料:(菜料编号,菜料名称,检索码,数量)

酒店餐饮信息系统

管理员:(管理员名称,密码)

2.逻辑结构设计

逻辑结构设计是将概念结构设计阶段完成的概念模型转换成能被选定的数据库管理系统支持

的数据结构模型。数据模型由E-R模型转换而来。数据库的设计采用一库多表式设计。即设计了

一个数据库。把每个独立的餐饮企业设计为独立的应用实体。采用这种设计的好处就是:符合餐

饮企业餐饮供应链环节的处理及时迅速的特点,有利于在餐饮企业内部提高工作效率,降低成本。

4-2 -1Cpb(菜品信息表)

序号 字段名称 字段描述 字段类型 长度 备注

1 Cpid 菜品编号 Varchar 10 非空,主键

2 Cpname 菜品名称 Varchar 50 非空

3 huiyuanjia 会员价 Numeric 10 非空

4 Shichangjia 市场价 Numeric 10 允许空

5 CPsp 菜品小图 Varchar 50 保存路径

6 Kucun 菜品库存 Varchar 10 默认值为100

7 Cplp 菜品大图 Varchar 50 保存路径

8 First 一级分类 Varchar 10 允许空

9 Second 二级分类 Varchar 10 允许空

4-2-1 Ddb(订单表)

序号 字段名称 字段描述 字段类型 长度 备注

1 ID 自动编号 Int 4 主键

2 UrName 用户名 nvarchar 50 非空

3 Tprice 总价 Numeric 10 非空

4 details 特别说明 Varchar 50 允许空

5 Uremail 电子邮件 nvarchar 255 非空

6 room 包厢号 Varchar 10 允许空

4-2-3 Clb(菜料表)

序号 字段名称 字段描述 字段类型 长度 备注

1 ID 自动编号 Int 4 主键

2 Cno 菜料编码 Varchar 10 非空

3 Cname 菜料名称 Varchar 50 非空

4 Amount 数量 Numeric 8 非空

5 计量单位 Varchar 10 非空

6 10 非空 Cpid 关联菜品编号 Varchar

Measurement

4-2-4 Lld(领料表)

序号 字段名称 字段描述 字段类型 长度 备注

酒店餐饮信息系统

1 Lld 领料单编号 Int 4 主键,

2 Cno 菜料编号 Varchar 10 允许空

3 Cname 菜品名称 Varchar 50 允许空

4 Amount 需求数量 Varchar 10 允许空

5 Measurement 计量单位 Varchar 10 默认为g

6 Search 检索码 Varchar 10 菜料首字母

7 Room 包厢号 Varchar 10 可以空

8 Time 订餐时间 Datetime 8 非空

9 number 9 默认为1 菜料处理编码 Numeric

3.物理结构设计

物理结构设计是在逻辑结构设计的基础上进一步设计数据存储模式的一些物理细节。物流结

构设计通常分为两步:确定数据库的物理结构和评价物理结构。数据库的存放在非系统盘的高速

存储硬盘中。数据采用顺序存放的放的方式,由一个数据库下设置多个表,这样可以提高检索的

速度。这样的结构符合酒店餐馆信息系统的需求。

酒店餐饮信息系统

五、系统开发

(一)系统主要功能及界面

1.登陆界面

2.订餐页面

5-1 订餐页面

酒店餐饮信息系统

2.预定管理页面

5-2 预定管理页面

3.快餐外卖页面

5-3 快餐外卖页面

酒店餐饮信息系统

4.餐饮快速开单界面

酒店餐饮信息系统

六、主要程序代码

public frmMain()

{

InitializeComponent();

();

(listViewHall);

(listViewGeneral);

(listViewLuxury);

CurrentListView = (ListView)ArrayListView[0];

}

public void GetUpToDate()

{

Ud = CanU = Book = StopU = Dirty = 0;

DataTable EatRoom = Program.DataOfEatRoom();

= ;

();

();

();

int i, count = , EatRoomClass = 0;

SumDeskAccount = count;

for (i = 0; i < count; i++)

{

switch ([i]["餐台状态"].ToString())

{

ca "可供":

酒店餐饮信息系统

Dirty++;

break;

}

switch ([i]["房间类型"].ToString())

{

ca "大厅":

("a", [i]["餐台号"].ToString(),

EatRoomClass);

break;

ca "普通包间":

("a", [i]["餐台号"].ToString(),

EatRoomClass);

break;

ca "豪华包间":

("a", [i]["餐台号"].ToString(),

EatRoomClass);

//(

break;

}

餐台总数.Text = ng();

当前占用.Text = ng();

当前可供.Text = ng();

当前预订.Text = ng();

当前停用.Text = ng();

上座率.Text = Math.Round(((float)Ud / (float)SumDeskAccount) * 100, 1) + "%";

}

}

private void frmMain_Load(object nder, EventArgs e)

{

GetUpToDate();

Color col = Color.FromArgb(234, 244, 219);

= pictureBox;

on = new Point(30, 7);

最低消费.BackColor = col;

计费标准.BackColor = col;

进店时间.BackColor = col;

已用时间.BackColor = col;

消费金额.BackColor = col;

餐台总数.BackColor = col;

当前占用.BackColor = col;

当前可供.BackColor = col;

当前预订.BackColor = col;

当前停用.BackColor = col;

上座率.BackColor = col;

酒店餐饮信息系统

}

private void frmMain_FormClosing(object nder, FormClosingEventArgs e)

{

Program.onnection();

Environment.Exit(1);

}

private void tabControl1_SelectedIndexChanged(object nder, EventArgs e)

{

CurrentSelect = edIndex;

CurrentListView = (ListView)ArrayListView[CurrentSelect];

= ;

//(ng());

}

private void 大图标ToolStripMenuItem_Click(object nder, EventArgs e)

{

= View.LargeIcon;

}

private void 小图标ToolStripMenuItem_Click(object nder, EventArgs e)

{

= View.SmallIcon;

}

private void 列表ToolStripMenuItem_Click(object nder, EventArgs e)

{

= View.List;

}

酒店餐饮信息系统

ListViewItem p = edItems[0];

CurrentNo = ;

CurrentStatus = Program.tus(CurrentNo);

// (status);

if (CurrentStatus == "停用" || CurrentStatus == "脏台")

{

MessageBox.Show("非可供状态");

return;

}

if (CurrentStatus == "可供" || CurrentStatus == "预订")

new frmOpen(CurrentNo,true).Show();

el

new frmAdd(CurrentNo, true).Show();

}

private void Reresh_Click(object nder, EventArgs e)

{

}

private void GetCurrentSum(DataGridView g)

{

//try

CurrentSum = 0;

for (int i = 0; i < - 1; i++)

CurrentSum += Convert.ToSingle([i].Cells["金额"].Value);

// catch (Exception ex) { (e); }

}

private void GetCount(DataGridView g)

{

CurrentAccount = 0;

for (int i = 0; i < - 1; i++)

if (![i].Cells["金额"].ng().Contains("-"))

CurrentAccount++;

}

#region 计时间

private void GetMargin(DateTime t1)

{

int shour, sminute;

int year1, month1, day1, hour1, minute1;

int year2, month2, day2, hour2, minute2;

int y, m, d, h;

DateTime t2;

t2 = DateTime.Now;

year1 = ;

酒店餐饮信息系统

month1 = ;

day1 = ;

hour1 = ;

minute1 = ;

//cond1=;

year2 = ;

month2 = ;

day2 = ;

hour2 = ;

minute2 = ;

//cond2=;

if (minute2 - minute1 < 0)

{

hour2--;

sminute = 60 - minute1 + minute2;

}

el

sminute = minute2 - minute1;

y = year2 - year1;

m = month2 - month1;

d = day2 - day1;

h = hour2 - hour1;

shour = y * 12 * 30 * 24 + m * 30 * 24 + d * 24 + h;

已用时间.Text = shour + "小时" + sminute + "";

}

#endregion

private void GetInfoFromEatRoomNo(string no)

{

// (no);

//if(

InfoData = Program.oFromEatRoomNo(no);

DataTable InfoT = [0];

酒店餐饮信息系统

return;

}

// (CurrentStatus);

DateTime.TryPar([0]["进店时间"].ToString(), out InTime);

进店时间.Text = + ":" + + ":" + ;

消费金额.Text = ng();

GetMargin(InTime);

//("abc");

}

private void ListView_SelectedIndexChanged(object nder, EventArgs e)

{

try

{

string no = edItems[0].Text;

CurrentNo = no;

CurrentStatus = Program.tus(CurrentNo);

t = Program.Info(CurrentNo);

urce = [0].DefaultView;

GetCurrentSum(dataGridView);

GetCount(dataGridView);

= CurrentNo + " 餐台";

= "消费数量" + ng();

= "消费总额" + ng();

GetInfoFromEatRoomNo(CurrentNo);

}

catch (Exception ex)

{

if (t != null)

[0].Clear();

}

}

private void toolStripButton1_Click(object nder, EventArgs e)

{

new frmManagement().Show();

}

酒店餐饮信息系统

if (CurrentStatus != "占用")

{

MessageBox.Show("请选择要结帐的餐台!");

return;

}

string no = edItems[0].Text;

DataSet t = Program.Info(no);

new frmCheckOut(CurrentNo, CurrentSum,ng()).Show();

}

catch (Exception ex)

{

MessageBox.Show(e);

}

}

private void ThreadTimer_Tick(object nder, EventArgs e)

{

= DateTime.ng();

}

private void contextMenuStrip_Opening(object nder, CancelEventArgs e)

{

try

{

string no = edItems[0].Text;

if (CurrentStatus == "可供" || CurrentStatus == "预订")

{

结帐d = fal;

增加消费d = fal;

开单d = true;

修改登记d = fal;

餐台状态d = true;

宾客预订d = true;

}

el

{

结帐d = true;

增加消费d = true;

开单d = fal;

修改登记d = true;

餐台状态d = true;

宾客预订d = true;

}

酒店餐饮信息系统

}

private void 结帐ToolStripMenuItem_Click(object nder, EventArgs e)

{

toolStripButton2_Click(nder, e);

}

private void 增加消费ToolStripMenuItem_Click(object nder, EventArgs e)

{

ListView_ItemActive(nder, e);

}

private void 开单ToolStripMenuItem_Click(object nder, EventArgs e)

{

ListView_ItemActive(nder, e);

}

private void 修改登记ToolStripMenuItem_Click(object nder, EventArgs e)

{

new frmOpen(CurrentNo, fal).Show();

}

private void 餐台状态ToolStripMenuItem_Click(object nder, EventArgs e)

{

new frmChangeStatus(CurrentNo, CurrentStatus).ShowDialog();

}

酒店餐饮信息系统

}

private void toolStripButton7_Click(object nder, EventArgs e)

{

new 餐饮快速开单().Show();

}

}

}

酒店餐饮信息系统

七、总

在这次毕业设计(论文)的操作过程中,综合运用了本科阶段所学习的知识,让我们更加明

确了本专业的定位,然后把我们所学到的理论知识转化为生产力。在开发的过程中,更好地体会

到了团队合作的精神,以及如何与团队成员有效快速沟通。能够用更加广阔的视角才审视本科阶

段所学知识的价值,为以后的工作与生活提供了更加完善的解决思路启迪。

在论文撰写过程中,综合运用了信息管理与信息系统专业的相关知识,力求最大限度地化所

学为所用。在系统后期完善过程中,团队的成员们陆续提出了许多更细的功能需求。但是从经济

学的角度来讲,适用才是最好的,一个系统只要能满足客户提出的需求,并能为其管理提供方便,

就达到了设计开发的目的。毕竟完美是无止境的。但是这种从客户使用最大化角度追求卓越的精

神是值得借鉴的。

参考文献

[1] 黄明.餐饮管理信息系统的研究与设计[J].微处理机,200410

[2] 范立南,刘天慧.SqlServer实用教程[M].北京:清华大学出版社,2007

[3] 向阳.信息系统分析与设计[M].北京:机械工业出版社,2009

[4] 黄梯云.管理信息系统(3版)[M].北京:高等教育出版社,2009

[5] 吕杨波.ASP从入门到精通[M].北京:清华大学出版社,2008

[14] 薛小龙.ASP模块开发大全[M].北京:电子工业出版社,2008

伫立拼音-市场营销策划书

餐饮管理信息系统分析与设计

本文发布于:2023-11-03 13:04:57,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/1698987897227523.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:餐饮管理信息系统分析与设计.doc

本文 PDF 下载地址:餐饮管理信息系统分析与设计.pdf

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|