精彩专栏推荐订阅:在下方主页👇🏻👇🏻👇🏻👇🏻
💖🔥作者主页:计算机毕设木哥🔥 💖
一、项目介绍
随着现代科技的发展和人们生活水平的提高,餐饮业的市场竞争越来越激烈。传统的餐厅运营模式已经无法满足现代社会的需求。为了提高餐厅运营效率,方便用户点餐和商家管理,同时满足现代人对餐饮服务的高效、快捷、方便的需求,本文设计了一个餐厅点餐系统。在为用户、商家和管理员提供一个方便、高效、快捷的餐饮服务平台。通过该系统,用户可以随时随地浏览餐厅信息、查看菜单、点餐、支付,并可以对购买的商品进行评价和收藏。商家可以发布和管理自己的商品信息、广告信息,对用户评价进行管理,并可以通过系统提供的论坛模块与用户进行互动交流。管理员可以对系统进行全面管理,包括用户、商家、商品、订单等的管理。
二、项目功能介绍
管理员其功能概述如下:
1)个人中心:管理自身的账户信息,如修改密码、个人信息等。
2)店家管理:添加、编辑、删除店家信息,对店家进行分类和权限分配。
3)用户管理:管理用户账户,如修改密码、删除账户等。
4)商品管理:添加、编辑、删除商品信息,对商品进行分类和定价。
5)商品评价管理:查看、修改、删除用户对商品的评论和评分。
6)商品收藏管理:查看、修改、删除用户对商品的收藏信息。
7)商品订单管理:查看、修改、删除用户的订单信息。
8)广告管理:添加、编辑、删除系统广告信息。
9)基础数据管理:管理系统的基本数据和参数。
10)论坛管理:管理论坛板块,对论坛帖子进行审核、删除等操作。
11)公告信息管理:发布、编辑、删除系统公告信息。
用户其功能概述如下:
1)注册:用户注册新账户,填写个人信息。
2)登录:用户登录系统,进入个人中心。
3)论坛:浏览论坛帖子,发表评论和点赞。
4)广告:浏览系统广告信息。
5)菜品资讯:查看餐厅菜品信息,包括价格、简介等。
6)浏览筛选店家进行菜品点单购买:浏览店家信息,选择菜品并购买。
7)商品信息:查看商品详细信息,包括价格、库存等。
8)商品评价:对已购买的商品进行评价和评分。
9)商品收藏:收藏感兴趣的商品。
10)商品订单:查看订单状态,取消或修改订单。
商家其功能概述如下:
1)个人中心:管理自身的账户信息和商品信息等。
2)商品管理:添加、编辑、删除自家的商品信息,对商品进行分类和定价等操作。
3)商品评价管理:查看、修改、删除用户对自家商品的评论和评分等操作。
4)商品收藏管理:查看、修改、删除用户对自家商品的收藏信息等操作。
5)商品订单管理:查看、修改、删除用户对自家商品的订单信息等操作。
6)广告管理:添加、编辑、删除自家的广告信息等操作。
7)论坛管理:管理自家的论坛板块,对论坛帖子进行审核和删除等操作。
8)公告信息管理:发布、编辑、删除自家的公告信息等操作。
三、开发环境
- 开发语言:Java
- 数据库:MySQL
- 系统架构:B/S
- 后端:springboot
- 前端:vue
- 工具:IDEA或者Eclipse、JDK1.8、Maven
四、系统展示
登录模块:
首页模块:
管理员模块:
商家模块:
五、代码展示
public MsgVo list(
@RequestParam(value = "order_id",defaultValue = "0")Long order_id,
@RequestParam(value = "table_id",defaultValue = "0")Long table_id,
@RequestParam(value = "page",defaultValue = "1")Integer page,
@RequestParam(value = "pageSize",defaultValue = "20")Integer pageSize,
HttpServletRequest request){
MsgVo msgVo =new MsgVo();
Consumer consumer = (Consumer) request.getAttribute("user");
Criteria<Orders> criteria = new Criteria<>();
if(order_id > 0){
criteria.add(Restrictions.eq("id",order_id));
}
criteria.add(Restrictions.eq("createdUser",consumer.getUser()));
if(consumer.getWxOpenId().equals("-1")){//临时的只能查看3小时内的最后一单
pageSize = 1;
if(table_id <= 0){//临时的必须指定桌号
msgVo.setCode(40001);
msgVo.setMsg("餐桌id不能为空");
return msgVo;
}
// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar beforeTime = Calendar.getInstance();
beforeTime.add(Calendar.HOUR, -3);// 3小时之前的时间
Date beforeD = beforeTime.getTime();
criteria.add(Restrictions.or(Restrictions.gte("createTime",beforeD),Restrictions.eq("payStatus",1)));//未支付或者3小时前的订单
}
if(table_id > 0){
Tables tables = tablesRepository.findById(table_id).orElse(null);
if(tables == null && tables.getStore().getId() != consumer.getStore().getId()){
msgVo.setCode(40002);
msgVo.setMsg("餐桌不存在");
return msgVo;
}
criteria.add(Restrictions.eq("tableNumber",tables.getNumber()));
}
Sort sort = new Sort(Sort.Direction.DESC, "id");
Pageable pageable = new PageRequest(page-1, pageSize, sort);
Page<Orders> orders = ordersRepository.findAll(criteria,pageable);
if(order_id > 0 && orders.getContent() != null && orders.getContent().size() > 0){//订单详情,获取菜品信息
Orders orders1 = orders.getContent().get(0);
Criteria<OrderGoods> goodsCriteria = new Criteria<>();
goodsCriteria.add(Restrictions.eq("orders",orders1));
goodsCriteria.add(Restrictions.eq("isDelete",false));
List<OrderGoods> orderGoods = orderGoodsRepository.findAll(goodsCriteria);
msgVo.getData().put("orderGoods",orderGoods);
msgVo.getData().put("order",orders1);
}else{
msgVo.getData().put("orders",orders);
}
msgVo.setMsg("获取成功");
return msgVo;
}
六、项目总结
餐厅点餐系统是一个集用户、商家和管理员于一体的智能餐厅管理平台。该系统采用了先进的计算机技术,针对餐厅行业的特点,为用户、商家和管理员提供了一个全面、高效、便捷的解决方案。本系统的设计目标是提高餐厅的运营效率和服务质量,同时方便用户进行点餐操作。对于商家而言,本系统不仅可以帮助他们快速发布和管理商品信息,同时还能对用户订单进行处理,缩短点餐时间,提高服务质量。商家还能通过系统提供的论坛模块与用户进行互动交流,及时获取用户反馈信息,从而改进服务质量。此外,系统还为商家提供了数据分析和挖掘工具,帮助他们更好地了解市场需求和消费者喜好,为商家的经营和发展提供数据支持和参考。对于用户而言,本系统提供了多种点餐方式,包括线上浏览菜单、在线支付、到店扫码点餐等选择,使用户可以根据自己的需求选择最方便的点餐方式。同时,系统还支持用户对购买的商品进行评价和收藏,以及对商家的匿名评价和反馈,从而帮助商家提升服务质量。