first commit

This commit is contained in:
dev
2026-02-22 12:12:02 +08:00
commit b236048a24
1467 changed files with 160403 additions and 0 deletions
@@ -0,0 +1,109 @@
# 统计中心模块 (ruoyi-mall-statistics)
## 模块简介
`ruoyi-mall-statistics` 是商城系统的统计中心模块,提供交易分析、会员分析等数据统计功能。
## 功能特性
### 1. 交易分析 ✅
- ✅ 订单统计(总订单数、已支付订单数)
- ✅ 销售额统计(总销售额、已支付金额、退款金额)
- ✅ 今日统计(今日订单数、今日销售额)
- ✅ 商品销售排行(按销售金额排序)
- ✅ 交易趋势分析(按日期统计)
### 2. 会员分析 ⏳
- ⏳ 会员增长统计(需会员模块支持)
- ⏳ 会员消费统计(需会员模块支持)
- ⏳ 会员活跃度分析(需会员模块支持)
### 3. 商品分析 ⏳
- ⏳ 商品销售统计(可通过交易统计的商品排行实现)
- ⏳ 商品浏览统计(需商品模块支持浏览统计)
- ⏳ 商品转化率分析(需商品模块支持)
### 4. 营销分析 ⏳
- ⏳ 活动效果统计(需营销模块支持)
- ⏳ 优惠券使用统计(需优惠券模块支持)
- ⏳ 营销ROI分析(需营销模块支持)
## 数据库表
统计模块主要基于现有业务表进行数据分析和统计,可根据需要创建统计汇总表。
## 模块结构
```
org.dromara.mall.statistics
├── controller
│ ├── admin // 管理端API
│ └── app // 用户端API(可选)
├── domain
│ ├── bo // 业务对象
│ └── vo // 视图对象
├── mapper // MyBatis Mapper
├── service // 业务逻辑层
│ └── impl
├── enums // 枚举类
└── config // 配置类
```
## 依赖模块
- `ruoyi-mall-product` - 商品中心模块
- `ruoyi-mall-trade` - 交易中心模块
- `ruoyi-common-*` - 通用工具模块
## API接口
### 管理端接口
#### 统计数据 (`/mall/statistics`)
- `GET /mall/statistics/transaction` - 获取交易统计数据
- 支持按日期范围查询(startDate, endDate
- 支持设置商品销售排行数量限制(limit,默认10)
- 返回数据包括:总订单数、总销售额、已支付订单数、已支付金额、退款金额、今日统计、趋势数据、商品销售排行
- `GET /mall/statistics/member` - 获取会员统计数据
- 支持按日期范围查询(startDate, endDate
- 返回数据包括:总会员数、今日新增会员数、活跃会员数、增长趋势、消费统计
- ⚠️ 注意:会员统计功能需要会员模块支持,当前返回基础结构
## 待实现功能
- [x] 交易统计分析 ✅
- [x] 订单统计 ✅
- [x] 销售额统计 ✅
- [x] 商品销售排行 ✅
- [x] 交易趋势分析 ✅
- [ ] 会员统计分析(需会员模块支持)
- [ ] 商品统计分析(部分功能可通过交易统计实现)
- [ ] 营销效果分析(需营销模块支持)
- [ ] 数据报表导出
## 使用说明
### 交易统计
交易统计基于 `mall_order``mall_order_item` 表进行数据聚合分析:
1. **订单统计**:统计指定时间范围内的订单总数和总金额
2. **已支付统计**:统计已支付(pay_status=1)的订单数和金额
3. **退款统计**:统计已完成的退款金额(基于 `mall_after_sale` 表,status=5
4. **今日统计**:当未指定日期范围时,自动计算今日的订单和销售额
5. **趋势数据**:按日期分组统计订单数和销售额
6. **商品销售排行**:按销售金额排序,支持限制返回数量
### 查询参数
- `startDate`: 开始日期(格式:yyyy-MM-dd),可选
- `endDate`: 结束日期(格式:yyyy-MM-dd),可选
- `limit`: 商品销售排行数量限制,默认10,可选
**注意**:如果不指定日期范围,统计的是全部数据;如果指定了日期范围,则只统计该范围内的数据。