一个基于 SpringBoot + MySQL 的具有客户、商家、管理员三种模式的商城系统。
数据库文件已经更新。
这里是后端部分,前端部分以及界面示例请前往:https://github.com/Hacker-C/mall-system
项目后端所使用的技术栈。
- SpringBoot
- MySQL
本项目环境由 pom.xml
统一管理,部分环境版本如下。
- SpringBoot:v2.3.7
- jdk:v1.8
- Mybatis:v2.1.4
- MySQL:v5.7
- 登陆网站
- 浏览网站内容
- 注册成此网站会员
- 编辑自己基本信息
- 修改密码
- 重置账户金额
- 将选中的商品加入购物车
- 对购物车进行管理
- 删除购物车中商品
- 将购物车商品一起购买
- 对购物车进行管理
- 购买商品(管理订单)
- 提交订单
- 对订单进行付款
- 删除订单
- 取消订单
- 对购买后的商品进行评价
- 评价商品
- 删除自己的评论
- 收藏夹
- 添加商品到收藏集
- 删除收藏夹中内容
- 注册申请开店
- 对自己的店进行管理
- 上传商品图片
- 对商品进行介绍
- 编辑商品价格、剩余量、折扣等基本信息
- 统计店内商品销售情况
- 查看总体收入情况
- 查看各类商品销售量、总收入
- 管理订单
- 查看订单信息
- 查看订单总金额、下单时间
- 对订单中的商品进行发货操作
- 编辑订单状态
- 取消订单
- 对订单进行发货
- 查看订单信息
- 对商家进行管理
- 查看、删除该商家下的所有商品
- 编辑商家和店铺的相关信息
- 对系统进行维护管理
- 管理所有用户
- 管理顾客、商家基本信息
- 重置顾客、商家登录密码
- 拉黑顾客、商家(拉黑后无法登录)
- 管理用户身份角色 例如将某顾客身份改为商家,活着将其升级为管理员
- 查看所有用户组成(管理员、顾客、商家)
- 管理系统
- 管理首页限时折扣倒计时时间
- 管理首页商品分类功能
- 编辑商品分类名称
- 删除商品分类
- 添加新的商品分类
- 管理系统的公告
- 编辑公告内容
后端统一返回格式:demo例子。
{
"code": "0",
"msg": "登录成功",
"data": null
}
-
code:"0"代表操作成功,"1"或者"2"等代表其他
-
msg:返回信息
-
data:返回数据
接口设计原则:请求 = 动词 + 宾语 增删改查:
-
增:POST
-
删:DELETE
-
改(全部修改):PUT
-
改(部分修改):PATCH
-
查:GET
-
/user
- 获取所有用户:
GET
: - 登录验证:
/login
(POST
) - 前端传入和参数:
{"username": "user", "password": "user1234"}
/register
(POST
)- 前端传入和参数:
{"username": "test", "password": "test123"}
- 后端返回数据,登录成功:
{"code": "0", "msg": "登录成功", "data": null}
- 后端返回数据,登录成功:
{code: "1", msg: "登录失败", "data": null}
- 获取所有用户:
-
/product
/product/all
:GET
请求,获取所有商品/product/{id}
:GET
请求,根据商品ID获取商品信息及/product/shop
:POST
请求,根据店铺id获取店内所有商品/product
:PUT
请求,更新商品信息/product
:POST
:POST
请求,添加商品/product/search
:GET
请求,首页搜索/product/{productId
:DELETE
请求,删除商品
-
/order
/order/master
:POST
请求,添加订单/order/detail
:POST
添加订单中的每一天商品信息/order/{buyerId}
:GET
获取用户的所有订单
-
/files/upload
- 文件上传(图片)
-
/like
/like/{userId}
:GET
请求,获取用户收藏/like/{userId}
:DELETE
请求,删除用户收藏/like
:POST
请求,用户添加收藏
-
/shop
/shop
:POST
:POST
请求,商家开店/shop/{userId}
:GET
请求,获取店铺信息