# 统计中心模块 (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,可选 **注意**:如果不指定日期范围,统计的是全部数据;如果指定了日期范围,则只统计该范围内的数据。