项目二:堂食外卖点餐小程序

一、项目介绍

我做的项目叫堂食外卖点餐小程序。
他是一个这个外卖点餐小程序。这个项目是我在校期间参加这个蓝桥杯比赛,的一个项目,我们团队大概是8个人,两个人是这个后端写这个

本项目为用户提供方便快捷的用餐体验,同时涵盖了堂食点餐、外送点餐、排队、自我评价,取号、会员充值、积分商城、订单、优惠券、消息等功能。

这个项目架构采用的是这个微服务架构。

Spring全家桶技术。
+Dubbo远程调用(框架 RPC)
MybatisPlus提高开发效率,优化性能的ORM框架。
redis数据库技术;
ElasticSearc全文搜索等

这个项目分为两端,前端和后端,前端是用户使用的端,后端是商家使用的端

前台是指用户使用的小程序界面,主要负责调用各个后端服务提供的API接口,响应用户的操作。
主要功能包括:
堂食点餐:提供菜品列表、详情、口味选项等,计算价格、下单等功能;
外送点餐:提供桌面选择、外卖地址选项、支付等功能;
排队:提供排队功能、预估等待时间、叫号等功能;
取号:提供预约取号服务,允许用户提前在小程序中预约取号;
自我评价:提供用户对用餐环境、菜品、服务等的评价;
会员充值:提供充值、充值记录、优惠券等功能;
积分商城:提供兑换积分、积分记录等功能;
订单:提供订单查询、修改、删除等功能;
优惠券:提供优惠券领取、使用等功能;
消息:提供系统消息、订单消息、优惠券消息等功能;
后台是指提供各个服务的后端,主要使用Spring Boot + Spring Cloud等技术栈进行开发。根据功能需求,后端端可以分为如下几个服务端:
订单服务端:提供订单管理、订单状态更新等功能;
菜品服务端:提供菜品管理、菜品类别管理等功能;
餐桌服务端:提供餐桌管理、排队人数统计等功能;
用户服务端:提供用户管理、购买记录查询等功能;
支付服务端:提供支付宝、微信支付等支付功能实现;
优惠券服务端:提供优惠券管理功能;
消息服务端:提供消息推送功能;
积分服务端:提供积分服务功能;
充值服务端:提供会员充值、会员充值记录查询等功能;

我个人在该项目负责哪些功能:

在后台中添加套餐以及菜品:

新增菜品,其实就是将新增页面录入的菜品信息插入到dish表,如果添加了口味做法,还需要向dish_flavor表插入数据。所以在新增菜品时,涉及到两个表:
菜品表和这个套餐表

在前台中**

搜索餐品以及历史功能的开发:

使用 elasticsearch 搜索食品以及联想,

并将搜索历史存储到 Mongdb

用户下单模块的开发 :

将数据储存,防止餐品售空,使用 redis 分布式锁。
用户下单业务对应的数据表为orders表和order_detail表(一对多关系,一个订单关联多个订单明细):

表名 含义 说明
orders 订单表 主要存储订单的基本信息(如: 订单号、状态、金额、支付方式、下单用户、收件地址等)
order_detail 订单明细表 主要存储订单详情信息(如: 该订单关联的套餐及菜品的信息)

要往订单表orders中插入一条记录,并且需要往order_detail中插入一条或多条记录。

用户点击去支付,此时我们保存订单状态.
1待付款,2待派送,3已派送,4已完成,5已取消

1.微信支付,2.支付宝

调用 统一下单接口 和 调用查询订单api
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_47360129/article/details/129893676