一个完整的外卖系统

flash-waimai

  • 一个简单的外卖系统,包括手机端,后台管理,api
  • 基于spring boot和vue的前后端分离的外卖系统
  • 包含手机端,后台管理功能
  • 本项目主要供交流学习,不建议商用。

技术选型

  • 核心框架:Spring Boot
  • 数据库层:Spring data jpa/Spring data mongodb
  • 数据库连接池:Druid
  • 缓存:Ehcache
  • 前端:Vue.js
  • 数据库:mysql5.5以上,Mongodb建议4.0(不要使用4.2及其已上版本,否则有部分api需要自行调整)

模块

  • flash-waimai-mobile 手机端站点
  • flash-waimai-manage后台管理系统
  • flash-waimai-api java接口服务
  • flash-waimai-core 底层核心模块
  • flash-waimai-generate 代码生成模块

快速开始

  • 文档:https://microapp.gitee.io/flash-waimai/

  • 数据存储采用了mysql和mongodb,其中基础管理配置功能数据使用mysql,业务数据使用mongodb存储。

  • 创建mysql数据库

CREATE DATABASE IF NOT EXISTS waimai DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 
CREATE USER 'waimai'@'%' IDENTIFIED BY 'waiMAI@123';
GRANT ALL privileges ON waimai.* TO 'waimai'@'%';
flush privileges;
  • mysql数据库创建好了之后,启动flash-waimai-api服务,会自动初始化数据,无需开发人员自己手动初始化数据

  • 安装mongodb并创建数据库:flash-waimai 使用mongorestore命令 导入mongodb数据,由于测试数据量较大,打包放在了百度云盘:链接:https://pan.baidu.com/s/1mfO7yckFL7lMb_O0BPsviw 提取码:apgd 下载后将文件解压到d:\elm,如下命令导入数据:

mongorestore.exe -d flash-waimai d:\\elm

先创建数据库

接着导入数据

  • 下载项目测试数据的图片(商家和食品图片): 链接:https://pan.baidu.com/s/15uiA8hUCwdZv6Bycn1y_yg 提取码:cvas ,将图片存放到t_sys_cfg表中system.file.upload.path配置的目录下

  • 启动api服务:

    • 进入flash-waimai-api模块
    • 直接运行ApiApplication主类启动api服务
  • 启动管理平台:

    • 进入flash-waimai-manage目录:
    • 运行 npm install --registry=https://registry.npm.taobao.org
    • 运行npm run dev
    • 启动成功后访问 http://localhost:9528 ,登录,用户名密码:admin/admin
  • 启动手机端:

    • 进入flash-waimai-mobile目录:
    • 运行 npm install --registry=https://registry.npm.taobao.org
    • 运行npm run dev
    • 启动成功后访问 http://localhost:8000

启动成功截图

Api模块启动成功截图

手机端启动成功截图

管理平台启动成功截图

运行效果图

管理平台

手机端

仓库地址

https://gitee.com/microapp/flash-waimai

  • 62
    点赞
  • 246
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
一个完整外卖系统,包括手机端,后台管理,api 基于spring boot和vue的前后端分离的外卖系统 包含完整的手机端,后台管理功能 技术选型 核心框架:Spring Boot 数据库层:Spring data jpa/Spring data mongodb 数据库连接池:Druid 缓存:Ehcache 前端:Vue.js 数据库:mysql5.5以上,Mongodb4.0(不要使用最新版4.2) 模块 flash-waimai-mobile 手机端站点 flash-waimai-manage后台管理系统 flash-waimai-api java接口服务 flash-waimai-core 底层核心模块 flash-waimai-generate 代码生成模块 快速开始 数据存储采用了mysql和mongodb,其中基础管理配置功能数据使用mysql,业务数据使用mongodb存储。 创建mysql数据库 CREATE DATABASE IF NOT EXISTS waimai DEFAULT CHARSET utf8 COLLATE utf8_general_ci; CREATE USER 'waimai'@'%' IDENTIFIED BY 'waimai123'; GRANT ALL privileges ON waimai.* TO 'waimai'@'%'; flush privileges; mysql数据库创建好了之后,启动flash-waimai-api服务,会自动初始化数据,无需开发人员自己手动初始化数据 安装mongodb并创建数据库:flash-waimai 使用mongorestore命令 导入mongodb数据,由于测试数据量较大,打包放在了百度云盘:链接:https://pan.baidu.com/s/1mfO7yckFL7lMb_O0BPsviw 提取码:apgd 下载后将文件解压到d:\elm,如下命令导入数据: mongorestore.exe -d flash-waimai d:\\elm 下载项目测试数据的图片(商家和食品图片):链接:https://pan.baidu.com/s/1rvZDspoapWa6rEq2D_5kzw 提取码:urzw ,将图片存放到t_sys_cfg表中system.file.upload.path配置的目录下 启动管理平台:进入flash-waimai-manage目录:运行 npm install --registry=https://registry.npm.taobao.org运行npm run dev启动成功后访问 http://localhost:9528 ,登录,用户名密码:admin/admin 启动手机端:进入flash-waimai-mobile目录:运行 npm install --registry=https://registry.npm.taobao.org运行npm run local启动成功后访问 http://localhost:8000
好的,我可以给你提供一个简单的外卖系统的实现思路,但由于外卖系统的复杂性和具体需求不同,实现方式可能会有所不同。 首先,我们需要定义外卖系统的基本功能和流程: 1. 用户注册和登录 2. 用户浏览菜单和下单 3. 商家接单和配送 4. 用户确认收货 5. 用户评价订单 接下来,我们可以按照这些流程来设计外卖系统的数据结构和功能实现。 1. 用户注册和登录 用户注册和登录是外卖系统的基本操作,我们可以定义一个 User 类来表示用户,其中包含用户名、密码等基本信息。为了方便起见,可以将用户信息保存在本地文件中,例如一个 user.txt 文件,每一行代表一个用户的信息。 2. 用户浏览菜单和下单 为了实现这一功能,我们需要定义一个 Food 类来表示菜品,其中包含菜品名称、价格、描述等基本信息。可以将菜单信息保存在本地文件中,例如一个 food.txt 文件,每一行代表一个菜品的信息。 当用户登录后,系统将读取 food.txt 文件并将菜单信息呈现给用户。用户可以选择菜品并下单,系统将保存订单信息到一个 order.txt 文件中,每一行代表一个订单信息。 3. 商家接单和配送 商家登录后可以查看所有未接单的订单,并选择接单。当商家接单后,系统会将相应的订单状态从未处理改为已接单。商家可以在完成配送后将订单状态从已接单改为已完成。 4. 用户确认收货 当用户收到外卖后,在确认无误后可以将订单状态从已完成改为已收货。 5. 用户评价订单 为了让用户对订单进行评价,我们可以在 order.txt 文件中添加一个评价字段,用户完成订单并确认收货后可以对订单进行评价。评价信息保存在文件中,并可以在用户下次登录时查看。 以上是一个简单的外卖系统的实现思路,可以根据具体需求和功能进行完善。在实现过程中,除了定义类和文件读写操作外,还需要考虑如何进行数据验证、异常处理等方面的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值