4.2 KiB
4.2 KiB
优惠券中心模块 (ruoyi-mall-coupon)
模块简介
ruoyi-mall-coupon 是商城系统的优惠券中心模块,提供独立的优惠券服务,支持发券、核销、过期处理等功能。
功能特性
1. 优惠券管理 ✅
- ✅ 优惠券CRUD操作
- ✅ 优惠券类型管理(满减、折扣、现金)
- ✅ 优惠券发放规则配置
- ✅ 优惠券有效期管理
- ✅ 优惠券状态管理(启用/禁用)
- ✅ 优惠券导出功能
2. 用户优惠券 ✅
- ✅ 用户领券
- ✅ 用户优惠券列表查询
- ✅ 优惠券使用(订单结算时调用)
- ✅ 优惠券退还(订单取消时调用)
- ✅ 优惠券过期处理(定时任务)✅
3. 优惠券统计
- 发放统计(可在管理端通过列表查询实现)
- 使用统计(可在管理端通过列表查询实现)
- 核销统计(可在管理端通过列表查询实现)
数据库表
mall_coupon- 优惠券表mall_coupon_user- 用户优惠券表
详细表结构请参考:script/sql/ry_mall.sql
模块结构
org.dromara.mall.coupon
├── controller
│ ├── admin // 管理端API
│ │ ├── AdminMallCouponController.java
│ │ └── AdminMallCouponUserController.java
│ └── app // 用户端API
│ ├── AppMallCouponController.java
│ └── AppMallCouponUserController.java
├── domain
│ ├── MallCoupon.java
│ ├── MallCouponUser.java
│ ├── bo // 业务对象
│ │ ├── MallCouponBo.java
│ │ └── MallCouponUserBo.java
│ └── vo // 视图对象
│ ├── MallCouponVo.java
│ └── MallCouponUserVo.java
├── mapper
│ ├── MallCouponMapper.java
│ └── MallCouponUserMapper.java
├── service
│ ├── MallCouponService.java
│ ├── MallCouponUserService.java
│ └── impl
│ ├── MallCouponServiceImpl.java
│ └── MallCouponUserServiceImpl.java
├── job // 定时任务
│ └── MallCouponJob.java
└── config
└── MallCouponAutoConfiguration.java
API接口
管理端接口
优惠券管理 (/mall/coupon)
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}- 启用/禁用优惠券
用户优惠券管理 (/mall/coupon/user)
GET /mall/coupon/user/list- 查询用户优惠券列表(分页)GET /mall/coupon/user/{id}- 获取用户优惠券详情DELETE /mall/coupon/user/{ids}- 删除用户优惠券POST /mall/coupon/user/export- 导出用户优惠券列表
移动端接口
优惠券 (/app/mall/coupon)
GET /app/mall/coupon/available/list- 查询可领取的优惠券列表GET /app/mall/coupon/{id}- 获取优惠券详情
用户优惠券 (/app/mall/coupon/user)
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}- 领取优惠券
优惠券类型说明
- 0 - 满减券: 需要设置优惠金额和使用门槛
- 1 - 折扣券: 需要设置折扣率(百分比)和使用门槛
- 2 - 现金券: 需要设置优惠金额,无使用门槛
依赖模块
ruoyi-common-*- 通用工具模块ruoyi-common-excel- Excel导出功能ruoyi-common-satoken- 用户身份认证
待实现功能
- 优惠券统计功能(可在管理端通过列表查询和筛选实现)
使用说明
订单结算时使用优惠券
在订单提交时,可以调用 MallCouponUserService.useCoupon(couponUserId, orderId) 来使用优惠券。
订单取消时退还优惠券
在订单取消时,可以调用 MallCouponUserService.returnCoupon(couponUserId) 来退还优惠券。