餐饮管理系统实训报告.doc
《餐饮管理系统实训报告.doc》由会员分享,可在线阅读,更多相关《餐饮管理系统实训报告.doc(16页珍藏版)》请在冰豆网上搜索。
餐饮管理系统
1、绪论
近年来,随着人们生活水平的不断提高,餐饮业的消费持续增长,竞争越来越激烈。
然而,传统餐饮企业的日常运作是靠人工管理,从原材料入库到客人点单,再到结账基本上由人工完场记录,这样不仅耗费人力资源而且容易导致记录丢失或重复等错误,造成管理水平低下。
2、需求分析
本系统应用计算机对餐饮企业信息进行管理,具有手工管理所无法比拟多的优点,极大地提高了信息管理的效率。
本系统运用MicrosoftSQLServer2005为后台数据库,以C#为前台开发工具,系统实现了前台管理、食物类型管理、食物管理、桌台管理、开台信息、点菜、结账的功能。
餐厅管理部分:
实现菜单类别管理、菜式管理、桌台管理和预订管理。
菜单类别管理:
实现食物类别的添加和删除,删除时要将此食物类别下的食物一并删除(给出用户提示);
菜式管理:
实现菜式的添加和删除;
3、设计
3.1数据库设计
数据表设计
用户表
W_user表:
列名:
类型
说明
备注
Userid
Nvarchar(50)
用户ID
主键
Username
Nvarchar(50)
用户名
Useridentity
Nvarchar(50)
身份证
User_birthday
Date
生日
Phone
Nvarchar(50)
电话
Gender
Int
性别
Useraddress
Nvarchar(50)
地址
Usertype
Int
用户类型
0为普通用户,1为超级管理员
Pwd
Nvarchar(50)
用户密码
16
用户信息
W_user
用户ID
地址
用户名
性别
电话
用户类型
用户密码
身份证
生日
桌子表
W_table表
列名:
类型
说明
备注
Tid
Nvarchar(50)
桌子编号
主键
Tname
Nvarchar(50)
餐桌名
Position
Nvarchar(100)
餐桌位置
Describe
Nvarchar(500)
描述
Status
int
1正在使用,0为空闲
桌子信息w_table
桌子编号
餐桌名
餐桌位置
餐桌状态
描述
开台记录(用餐记录)
W_orders表
列名:
类型
说明
备注
Ordered
Int
订单ID
主键
_time
Nvarchar(50)
用餐时间或者预定用餐时间
Numbers
Int
用餐人数
Tid
Nvarchar(50)
外键,来自w_table
Userid
Nvarchar(50)
接待人员
外键,来自W_USER
Amount
Decimal(18,2)
实收金额
开台记录W_orders
用餐时间
用餐人数
订单ID
实收金额
接待人员
桌台号
客户用餐明细
W_guestfood表
列名:
类型
说明
备注
Id
Int
自增
主键
Foodid
Int
外键,来自w_food
Number
int
数量
Remark
Nvarchar(50)
备注
Ordered
int
订单ID
Lineprice
Decimal(18,2)
行计算价
Userid
Nvarchar(50)
服务人员
客户用餐明细信息
W_guestfood
食物编号
系统编号
数量
订单号
备注
服务人员
行计价
食物类型
W_foodtype表
列名:
类型
说明
备注
Typeid
Int
食物类别ID
主键
Foodtype
Nvarchar(50)
食物类别名
食物类别信息表w_foodtype
类别名
食物类别
餐厅食物
W_food表
列名:
类型
说明
备注
Foodid
Int
食物ID
主键
Typeid
Int
食物类别ID
Foodname
Nvarchar(50)
名称
Foodprice
Nvarchar(50)
价格
Unite
Nvarchar(50)
单位
餐厅食物
W_food
食物ID
单位
食物类别IDI
名称
价格
超级用户
进入主窗体
系统登录
结束
图1业务流程图
餐饮管理系统
订餐管理
用户管理
退出
退出
桌台管理
食物管理
食物类型管理
图2餐饮管理系统功能结构图
3.2前台设计
3.2.1登陆界面:
功能:
用户可以通过此界面登陆系统
图3.1登陆界面
3.2.2main界面的实现
功能:
前台管理,实现各种界面管理,可以通过图片信息查看桌子是否已使用,也可选中图标单击右键选择相应业务
图3.2主界面
3.2.3食物类型管理
功能:
可自动添加食物类别,删除食物类别的同时也删除该类别下的食物
图3.3食物类型管理
3.2.4食物管理
功能:
可添加删除食物
图3.4食物管理
3.2.5桌台信息
功能:
可查看桌子的具体信息及使用状态(0为空闲,1为使用)
图3.5桌台管理
3.2.6开台
功能:
此界面可也选择用餐人数及服务员和用餐时间
图3.6开台界面
3.2.7点菜
功能:
单击左边菜谱,输入数量选择服务人员,注明备注单击保存即完成点菜功能
图3.7点菜界面
3.2.8结账
功能:
根据订单号结账
图3.8结账界面
4、具体实现
前台程序设计
4.1Cdb类:
实现C#与数据库连接,调用相应存储过程
publicclassCdb
{
privatestringappsettingk1=System.Configuration.ConfigurationManager.AppSettings["k1"];
privateSqlConnectionconn=null;
publicCdb()
{
conn=newSqlConnection(appsettingk1);
}
publicDataSetgetDataset(Stringstorename,SqlParameter[]parameters)
{
SqlCommandcmd=newSqlCommand(storename,conn);
cmd.CommandType=CommandType.StoredProcedure;
SqlDataAdapterad=newSqlDataAdapter(cmd);
DataSetds=newDataSet();
if(parameters!
=null)
{
for(inti=0;i{
cmd.Parameters.Add(parameters[i]);
}
}
ad.Fill(ds);
returnds;
}
publicintExcuteStore(Stringstorename,SqlParameter[]parameters)
{
conn.Open();
SqlCommandcmd=newSqlCommand(storename,conn);
cmd.CommandType=CommandType.StoredProcedure;
if(parameters!
=null)
{
for(inti=0;i{
cmd.Parameters.Add(parameters[i]);
}
}
try
{
cmd.ExecuteNonQuery();
return0;
}
catch(Exceptionk)
{
stringm=k.Message;
return-1;
}
finally
{
conn.Close();
}
}
}
4.2登陆界面:
publiclogin()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textUid.Text==""||textPwd.Text=="")
{
MessageBox.Show("请输入用户名和密码");
return;
}
Business.CtablesAdmindb=new_1217.Business.CtablesAdmin();
if(db.login(textUid.Text,textPwd.Text)==1)
{
MessageBox.Show("超级用户");
this.Hide();