Files
1818web-hoduan/docs/user-balance-log-description-enhancement.md
2025-11-14 17:41:15 +08:00

113 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 用户余额记录描述增强说明
## 概述
本次修改增强了 `user_balance_log` 表中 `description` 字段的详细程度,让用户更清楚地了解余额变动的具体原因和来源。
## 修改内容
### 1. 工作流收益描述增强
**修改文件**: `src/main/java/com/dora/service/impl/ContentRevenueStageServiceImpl.java`
**原描述格式**:
```
工作流用户使用奖励 - 工作流:%s, 奖励:%s元
```
**新描述格式**:
```
【工作流收益】%s 获得新用户使用奖励 - 每个用户首次使用获得%.2f元收益
```
**改进说明**:
- 添加了明确的收益类型标识 `【工作流收益】`
- 包含具体的工作流名称
- 解释了触发条件(新用户首次使用)
- 使用更精确的数字格式显示
### 2. 视频收益描述增强
**修改文件**: `src/main/java/com/dora/service/impl/ContentRevenueStageServiceImpl.java`
**原描述格式**:
```
视频收益阶段达成 - %s, 观看数:%d, 奖励:%s元
```
**新描述格式**:
```
【视频收益】%s 达到%s阶段奖励 - 观看次数达到%d次获得%.2f元收益
```
**改进说明**:
- 添加了明确的收益类型标识 `【视频收益】`
- 包含具体的视频标题(从数据库查询获取)
- 详细说明了达成的阶段和具体观看次数
- 明确标示奖励金额
### 3. 推广收益描述增强
**修改文件**: `src/main/java/com/dora/service/impl/PromotionCommissionServiceImpl.java`
**原描述格式**:
```
推广分成收益 - 订单:%d, 金额:%s
```
**新描述格式**:
```
【推广收益】粉丝 %s 购买会员获得Lv%d推广分成 - 订单金额%.2f元,分成%.2f元(%.1f%%)
```
**改进说明**:
- 添加了明确的收益类型标识 `【推广收益】`
- 包含具体的粉丝用户名
- 显示推广等级信息
- 详细显示订单金额、分成金额和分成比例
## 技术实现细节
### 1. 新增依赖注入
`ContentRevenueStageServiceImpl` 中添加了 `VideoMapper` 依赖,用于查询视频详细信息:
```java
private final VideoMapper videoMapper;
```
### 2. 动态获取内容名称
- **视频收益**: 通过 `videoMapper.selectById(videoId)` 获取视频标题
- **工作流收益**: 直接使用已有的 `workflow.getName()`
- **推广收益**: 通过 `userMapper.selectById(commission.getFanId())` 获取粉丝用户名
### 3. 数字格式统一
所有金额显示统一使用 `%.2f` 格式,确保显示两位小数
## 用户体验改进
### 原来的描述示例
```
推广分成收益 - 订单:12345, 金额:11.70
视频收益阶段达成 - 视频等级1, 观看数:1000, 奖励:50.00元
工作流用户使用奖励 - 工作流:AI图像生成, 奖励:1.00元
```
### 改进后的描述示例
```
【推广收益】粉丝 用户张三 购买会员获得Lv1推广分成 - 订单金额39.00元分成11.70元(30.0%)
【视频收益】AI基础教程 达到视频等级1阶段奖励 - 观看次数达到1000次获得50.00元收益
【工作流收益】AI图像生成 获得新用户使用奖励 - 每个用户首次使用获得1.00元收益
```
## 兼容性说明
- ✅ 不破坏现有数据结构
- ✅ 不影响现有业务逻辑
- ✅ 向后兼容,老数据正常显示
- ✅ 新数据使用增强的描述格式
## 测试建议
1. 创建新的工作流使用记录,验证描述格式
2. 触发视频观看阶段奖励,验证视频名称显示
3. 产生推广分成,验证粉丝信息和分成比例显示
4. 查看用户余额明细接口 `/user/balance/income-detail`,确认描述显示正确
## 注意事项
- 如果关联的视频或用户信息不存在,会显示默认值(如"未知视频"、"未知用户"
- 所有数据库查询都有异常处理,不会影响主业务流程
- 新的描述格式更长,需确保 `description` 字段长度255字符足够使用