/mall-system-backend

在线商城后端

Primary LanguageJava

商城系统

关于

一个基于 SpringBoot + MySQL 的具有客户、商家、管理员三种模式的商城系统。

数据库文件已经更新。

这里是后端部分,前端部分以及界面示例请前往:https://github.com/Hacker-C/mall-system

(back to top)

技术栈

项目后端所使用的技术栈。

  • SpringBoot
  • MySQL

(back to top)

开发环境

本项目环境由 pom.xml 统一管理,部分环境版本如下。

  • SpringBoot:v2.3.7
  • jdk:v1.8
  • Mybatis:v2.1.4
  • MySQL:v5.7

功能实现

顾客模块

  • 登陆网站
  • 浏览网站内容
  • 注册成此网站会员
    • 编辑自己基本信息
    • 修改密码
    • 重置账户金额
  • 将选中的商品加入购物车
    • 对购物车进行管理
      • 删除购物车中商品
      • 将购物车商品一起购买
  • 购买商品(管理订单)
    • 提交订单
    • 对订单进行付款
    • 删除订单
    • 取消订单
  • 对购买后的商品进行评价
    • 评价商品
    • 删除自己的评论
  • 收藏夹
    • 添加商品到收藏集
    • 删除收藏夹中内容

(back to top)

商家模块

  • 注册申请开店
  • 对自己的店进行管理
    • 上传商品图片
    • 对商品进行介绍
    • 编辑商品价格、剩余量、折扣等基本信息
  • 统计店内商品销售情况
    • 查看总体收入情况
    • 查看各类商品销售量、总收入
  • 管理订单
    • 查看订单信息
      • 查看订单总金额、下单时间
      • 对订单中的商品进行发货操作
    • 编辑订单状态
      • 取消订单
      • 对订单进行发货

(back to top)

管理员模块

  • 对商家进行管理
    • 查看、删除该商家下的所有商品
    • 编辑商家和店铺的相关信息
  • 对系统进行维护管理
  • 管理所有用户
    • 管理顾客、商家基本信息
    • 重置顾客、商家登录密码
    • 拉黑顾客、商家(拉黑后无法登录)
    • 管理用户身份角色 例如将某顾客身份改为商家,活着将其升级为管理员
    • 查看所有用户组成(管理员、顾客、商家)
  • 管理系统
    • 管理首页限时折扣倒计时时间
    • 管理首页商品分类功能
      • 编辑商品分类名称
      • 删除商品分类
      • 添加新的商品分类
    • 管理系统的公告
      • 编辑公告内容

接口文档

1. 统一接口文档

后端统一返回格式:demo例子。

{
	"code": "0",
  "msg": "登录成功",
  "data": null
}
  • code:"0"代表操作成功,"1"或者"2"等代表其他

  • msg:返回信息

  • data:返回数据

2. RESTful 接口风格

接口设计原则:请求 = 动词 + 宾语 增删改查:

  • 增:POST

  • 删:DELETE

  • 改(全部修改):PUT

  • 改(部分修改):PATCH

  • 查:GET

3. 相关接口

  1. /user

    • 获取所有用户:GET
    • 登录验证:/loginPOST
    • 前端传入和参数: {"username": "user", "password": "user1234"}
    • /registerPOST
    • 前端传入和参数: {"username": "test", "password": "test123"}
    • 后端返回数据,登录成功: {"code": "0", "msg": "登录成功", "data": null}
    • 后端返回数据,登录成功: {code: "1", msg: "登录失败", "data": null}
  2. /product

    • /product/allGET 请求,获取所有商品
    • /product/{id}GET 请求,根据商品ID获取商品信息及
    • /product/shopPOST 请求,根据店铺id获取店内所有商品
    • /productPUT 请求,更新商品信息
    • /productPOSTPOST请求,添加商品
    • /product/searchGET 请求,首页搜索
    • /product/{productIdDELETE 请求,删除商品
  3. /order

    • /order/masterPOST 请求,添加订单
    • /order/detailPOST 添加订单中的每一天商品信息
    • /order/{buyerId}GET 获取用户的所有订单
  4. /files/upload

    • 文件上传(图片)
  5. /like

    • /like/{userId}GET 请求,获取用户收藏
    • /like/{userId}DELETE 请求,删除用户收藏
    • /likePOST 请求,用户添加收藏
  6. /shop

    • /shopPOSTPOST请求,商家开店
    • /shop/{userId}GET 请求,获取店铺信息