7.6 KiB
7.6 KiB
电商模块 (ruoyi-mall)
模块简介
ruoyi-mall 是 PoJie 项目的电商核心业务模块,提供完整的电商功能,包括商品管理、购物车、订单管理、支付集成等。
模块结构
根据模块结构规划,ruoyi-mall 采用子模块拆分的方式,包含以下子模块:
ruoyi-mall-product- 商品中心 (SPU, SKU, 分类, 品牌, 属性)ruoyi-mall-trade- 交易中心 (购物车, 订单, 售后)ruoyi-mall-promotion- 营销中心 (活动, 拼团, 秒杀, 砍价)ruoyi-mall-coupon- 优惠券中心 (独立拆分,便于复用)ruoyi-mall-statistics- 统计中心 (交易分析, 会员分析)
各子模块详细说明请参考对应的 README.md 文件。
功能特性
1. 商品管理
- ✅ 商品CRUD操作
- ✅ 商品上架/下架
- ✅ 商品浏览量和销量统计
- ✅ 商品详情管理
2. SKU管理
- ✅ SKU CRUD操作
- ✅ 库存管理
- ✅ 库存扣减和恢复
- ✅ 规格属性管理
3. 购物车管理
- ✅ 添加/删除购物车
- ✅ 购物车数量修改
- ✅ 购物车选中状态管理
- ✅ 购物车详情查询(包含商品和SKU信息)
4. 订单管理
- ✅ 订单创建
- ✅ 订单查询(列表、详情)
- ✅ 订单取消
- ✅ 订单状态管理
- ✅ 订单支付集成
5. 支付集成
- ✅ 与支付中心(ruoyi-pay)集成
- ✅ 支付回调处理
- ✅ 支付状态同步
数据库表
商品中心 (ruoyi-mall-product)
mall_product- 商品表mall_sku- SKU表mall_category- 商品分类表mall_brand- 品牌表
交易中心 (ruoyi-mall-trade)
mall_cart- 购物车表mall_order- 订单表mall_order_item- 订单明细表mall_after_sale- 售后申请表mall_order_evaluate- 订单评价表mall_order_coupon- 订单优惠券使用记录表
详细表结构请参考:script/sql/ry_mall.sql
配置说明
在 application.yml 中添加以下配置:
ruoyi:
mall:
pay-app-id: 1 # 支付应用ID
pay-notify-url: https://your-domain.com/app/mall/pay/notify # 支付回调地址
API接口
移动端接口
商品接口
GET /app/mall/product/list- 查询商品列表GET /app/mall/product/{id}- 查询商品详情GET /app/mall/product/{productId}/skus- 查询商品SKU列表
商品分类接口
GET /app/mall/product/category/tree- 查询商品分类树形列表(仅启用分类)
品牌接口
GET /app/mall/product/brand/list- 查询品牌列表(仅启用品牌)
购物车接口
GET /app/mall/cart/list- 查询购物车列表GET /app/mall/cart/detail/list- 查询购物车详情列表(包含商品信息)POST /app/mall/cart- 添加购物车PUT /app/mall/cart- 修改购物车DELETE /app/mall/cart/{ids}- 删除购物车DELETE /app/mall/cart/clear- 清空购物车PUT /app/mall/cart/selected/{id}- 更新选中状态PUT /app/mall/cart/selected/batch- 批量更新选中状态
订单接口
POST /app/mall/order/submit- 提交订单并发起支付GET /app/mall/order/list- 查询订单列表GET /app/mall/order/{id}- 查询订单详情PUT /app/mall/order/cancel/{id}- 取消订单POST /app/mall/order/pay/notify- 支付回调(由支付中心调用)
优惠券接口
GET /app/mall/coupon/available/list- 查询可领取的优惠券列表GET /app/mall/coupon/{id}- 获取优惠券详情GET /app/mall/coupon/user/list- 查询用户优惠券列表GET /app/mall/coupon/user/available/list- 查询用户可用优惠券列表GET /app/mall/coupon/user/{id}- 获取用户优惠券详情POST /app/mall/coupon/user/receive/{couponId}- 领取优惠券
管理端接口
商品管理
GET /mall/product/list- 查询商品列表GET /mall/product/{id}- 查询商品详情POST /mall/product- 新增商品PUT /mall/product- 修改商品DELETE /mall/product/{ids}- 删除商品PUT /mall/product/status/{id}- 上架/下架商品
商品分类管理
GET /mall/product/category/list- 查询商品分类列表(分页)GET /mall/product/category/tree- 查询商品分类树形列表GET /mall/product/category/{id}- 获取商品分类详情POST /mall/product/category- 新增商品分类PUT /mall/product/category- 修改商品分类DELETE /mall/product/category/{ids}- 删除商品分类
优惠券管理
GET /mall/coupon/list- 查询优惠券列表(分页)GET /mall/coupon/{id}- 获取优惠券详情POST /mall/coupon- 新增优惠券PUT /mall/coupon- 修改优惠券DELETE /mall/coupon/{ids}- 删除优惠券POST /mall/coupon/export- 导出优惠券列表PUT /mall/coupon/changeStatus/{id}- 启用/禁用优惠券
用户优惠券管理
GET /mall/coupon/user/list- 查询用户优惠券列表(分页)GET /mall/coupon/user/{id}- 获取用户优惠券详情DELETE /mall/coupon/user/{ids}- 删除用户优惠券POST /mall/coupon/user/export- 导出用户优惠券列表POST /mall/product/category/export- 导出商品分类列表
品牌管理
GET /mall/product/brand/list- 查询品牌列表(分页)GET /mall/product/brand/{id}- 获取品牌详情POST /mall/product/brand- 新增品牌PUT /mall/product/brand- 修改品牌DELETE /mall/product/brand/{ids}- 删除品牌POST /mall/product/brand/export- 导出品牌列表
SKU管理
GET /mall/sku/list- 查询SKU列表GET /mall/sku/{id}- 查询SKU详情GET /mall/sku/product/{productId}- 根据商品ID查询SKU列表POST /mall/sku- 新增SKUPUT /mall/sku- 修改SKUDELETE /mall/sku/{ids}- 删除SKU
订单管理
GET /mall/order/list- 查询订单列表GET /mall/order/{id}- 查询订单详情PUT /mall/order- 修改订单DELETE /mall/order/{ids}- 删除订单PUT /mall/order/delivery/{id}- 订单发货
业务流程
订单提交流程
- 用户选择商品(从购物车或直接购买)
- 调用
/app/mall/order/submit提交订单 - 系统创建订单和订单明细
- 调用支付中心创建支付单
- 返回支付参数给前端
- 前端调起支付
- 支付成功后,支付中心回调
/app/mall/order/pay/notify - 系统更新订单状态并扣减库存
购物车流程
- 用户浏览商品,选择SKU
- 调用
/app/mall/cart添加到购物车 - 如果购物车中已存在该SKU,则更新数量
- 用户可以在购物车中修改数量、选中状态
- 提交订单时,从购物车获取商品信息
- 订单创建成功后,删除购物车中的商品
依赖模块
ruoyi-pay- 支付中心模块ruoyi-common-*- 通用工具模块
注意事项
- 库存管理:订单支付成功后才扣减库存,避免超卖
- 幂等性:支付回调需要保证幂等处理
- 地址管理:当前版本地址信息简化处理,后续可扩展地址表
- 订单号生成:使用时间戳+随机字符串生成唯一订单号
待完善功能
商品中心
- 商品属性管理
- 商品规格模板
- 商品搜索功能
交易中心
- ✅ 订单评价功能
- ✅ 售后管理功能(退款、退货、换货)
- 地址管理模块(可考虑集成到会员模块)
- 订单优惠券使用记录
营销中心
- 营销活动管理
- 拼团功能
- 秒杀功能
- 砍价功能
优惠券中心
- 优惠券管理
- 用户优惠券功能
- 优惠券统计
统计中心
- 交易分析
- 会员分析
- 商品分析
- 营销分析