随着社会的发展,餐饮行业的竞争更加激励,餐厅管理是餐厅日常最为重要的工作,它的管理好坏决定餐厅能够持久的走下去。良好的管理不但能够提升餐厅的服务质量,吸引客源,传统的餐厅管理模式已不能适应当前餐厅发展的潮流,随着互联网技术的发展,网上订餐等成为人们的就餐习惯,并通过客户的订餐习惯为用户推荐喜爱的菜品,可以提升用户订餐体验,因此基于推荐算法实现餐厅管理系统很有必要。
基于推荐算法的餐厅管理系统基于B/S模式,利用java网页技术以及springboot框架实现,采用MySQL 数据库存储餐厅管理系统数据。本系统主要实现系统前台用户注册并登录之后,进行菜品放入购物并购买等操作,系统通过推荐算法可向用户进行菜品信息推荐,用户可进行在线充值,并对菜品进行查看等。系统后台供应商实现食材管理以及食材采购单查看;管理员可进行用户、菜品分类、菜品、供应商、食材类型、食材订单、就餐成本等基本信息管理,并对食材信息可以查看,对菜品订单可以进行消单以及查看删除等。
课题研究的背景
随着人们的生活水平不断的提高,餐饮行业[1]的发展范围已经从传统的吃饭向交友、享受等方面进行发展。在人们的日常生活中,比如婚宴、生日聚会、婚庆消费等等已经成为餐饮行业的主流。近年来随着大大小的餐饮商户[2]的注册,出现了许多各式各样的餐厅,使得餐饮行业的竞争力剧增,如何提高餐厅的服务质量[3],控制餐厅经营成本是餐厅管理人员迫切需要解决的问题。随着计算机技术以及互联网的发展,通过网上订餐购物已经成为人们生活中不可缺少的部分,因此为了提高餐厅管理的效率[4],掌握餐厅菜品订餐、食材采购以及客户菜品评价等反馈,并根据客人的喜欢及时向客人推荐其喜爱的菜品,利用计算技术建立一套基于推荐算法的餐厅管理系统很有必要。 近年来,关于市面出现的餐厅管理系统不少,如常见的点菜宝、电视点餐、互联网点餐等各个系统层次不穷,这些系统功能非常强大,但是在菜品推荐方面仍然不足,并且它们并不适合中小餐厅的实际情况,基于此结合市面现有的餐厅管理系统以及中小餐厅的实际需求进行搭建该系统。
主要研究工作
本文主要基于推荐算法,完成餐厅管理系统,基于springboot框架搭建该系统,其具体主要研究以下内容:
(1)研究springboot框架[5]的使用方法,搭建餐厅管理系统基本框架,完成餐厅管理系统中菜品订购、食材订购、菜品评价等基本功能。
(2)研究推荐算法,实现根据用户订购菜品类型,自主向用户推荐其喜欢的菜品。
(3)研究Web系统具体实现,根据餐厅管理系统的实际需求完成本系统功能,为餐厅管理提供帮助。
推荐算法介绍
随着互联网技术的发展,推荐算法经过多年的演变,也出现了集中常见的算法,其中主要有4中常见的推荐算法,他们分别如下:
(1)基于流行度算法[15],该算法的核心点是围绕内容的访问或者点击量等展开排序进行推荐。它的特点是简单,对新注册用户来说该算法效果最好。本文采用的是基于流行度等喜好进行推荐。
(2)协同过滤算法[16],它是购物平台常用的一种推荐算法,它可以基于用户也可以基于物品的协同过滤推荐。
(3)基于内容的算法[17],该算法是一款最早的推荐算法,它主要通过推荐内容聚类等方法来完成推荐,它不受内容热度的影响,只和具体内容有关系。
(4)基于模型算法[18],可以采用决策树、贝叶斯分类等模型算法对内容进行推荐。
需求分析
基于推荐算法的餐厅管理系统通过浏览器/服务端方式实现,主要面向用户、管理员以及供应商等用户下面对其用户需求等进行介绍。
3.2.1 用户需求分析
一、用户前台:
1.登录,用户通过账号密码登录。
2.注册,用户通过用户账号、姓名、头像、性别、手机号码、邮箱、身份证号进行注册。
3.菜品信息,通过菜品名称、价格、菜品分类查询菜品信息。
4.购物车,用户对自己喜欢的菜品放入购物车
5.菜品信息推荐,按照用户购买菜品类型进行推荐菜品信息。
6.会员充值,通过输入充值金额选择充值方式完成会员充值.
7.菜品订单管理,用户实现菜品下单、菜品退款、菜品退货、菜品评价等操作。其中菜品下单选择菜品填写备注并支付下单。菜品退款,对尚未核销的菜品可以选择退款。菜品退货,对核销的菜品可以选择退货。菜品评价,对菜品填写内容进行评价。
8.我要收藏,对自己喜欢的菜品进行收藏。
9.个人中心,对个人信息进行修改。
10.公告查看,查看后台发布的关于菜品的公告进行查看。
二、管理后台:
(一)管理员需求:
1.用户管理,对用户可进行新增,并对所有用户可查看、修改、以及删除。主要围绕用户的用户账号、姓名、头像、性别、手机号码、邮箱、身份证号等信息进行管理.
2.菜品分类管理,菜品分类可进行新增,并对所有菜品分类可查看、修改、以及删除。
3.菜品信息管理,对菜品名称、菜品分类、图片、口味、推荐指数、价格、菜品详细等信息可进行新增,并对所有菜品信息可查看、修改、以及删除。
4.供应商信息管理,对供应商账号、供应商名称、负责人、联系电话、供应商地址等信息可进行新增,并对所有供应商信息可查看、修改、以及删除。
5.食材信息查看,对食材名称、食材图片、食材类型、规格、价格、数量、供应商账号、供应商名称等信息可以查看。
6食材类型管理,食材类型可进行新增,并对所有食材类型可查看、修改、以及删除。
7.食材订单管理,实现食材购买、出库,其中食材购买,管理员选择供应商发布的食材,填写数量、购买时间等进行提交购买,食材购买之后食材的数量会增加。食材出库,选择供应商发布的食材,填写数量、出库时间等进行提交出库,食材出库之后食材的数量会减少。
食材订单信息包括订单编号、食材名称、食材类型、规格、价格、数量、订单金额、购买时间、供应商账号、供应商名称。
8.就餐成本管理,实现登记日期、出库金额、就餐人数、就餐成本、备注等就餐成本信息的新增,删除、修改、查看。
9.菜品订单管理,进行菜品订单消单、并对订单信息进行按照状态查看,删除。订单信息包括订单编号、商品名称、商品图片、购买数量、价格、折扣价格、总价格、折扣总价格、支付类型、状态、备注、商品类型、下单时间等。
10.个人信息修改。
11.公告管理。
(二)供应商需求:
1.食材信息管理,实现食材名称、食材图片、食材类型、规格、价格、数量、供应商账号、供应商名称等信息增删改查。
2.食材订单查看,对自己相关的食材订单信息进行查看。
3.个人信息修改。
《基于springboot推荐算法的餐厅管理系统》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程等
软件开发环境及开发工具:
开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql 5.7
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.3.9
浏览器:谷歌浏览器