zhibo/Zhibo/zhibo-h/礼物分成配置快速指南.md
2025-12-29 15:12:12 +08:00

292 lines
5.3 KiB
Markdown
Raw Permalink 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.

# 礼物分成配置快速指南
## 🚀 5分钟快速上手
### 步骤1初始化默认配置
```bash
POST /api/admin/gift/share-config/init-default
```
这将创建默认配置主播70%平台30%
### 步骤2查看配置列表
```bash
GET /api/admin/gift/share-config/list
```
### 步骤3创建自定义配置
**为VIP主播设置80%分成**:
```json
POST /api/admin/gift/share-config/create
{
"configName": "VIP主播分成",
"configType": 2,
"userLevel": 5,
"streamerRatio": 80.00,
"platformRatio": 20.00,
"status": 1
}
```
**为签约主播设置85%分成**:
```json
POST /api/admin/gift/share-config/create
{
"configName": "签约主播分成",
"configType": 3,
"userId": 1001,
"streamerRatio": 85.00,
"platformRatio": 15.00,
"status": 1
}
```
---
## 📊 配置类型对照表
| 类型 | config_type | 必填字段 | 示例 |
|------|-------------|---------|------|
| 全局默认 | 1 | - | 所有主播默认70% |
| 主播等级 | 2 | userLevel | 等级5主播80% |
| 特定主播 | 3 | userId | 主播1001获得85% |
---
## ⚡ 常用操作
### 修改全局默认分成
```json
PUT /api/admin/gift/share-config/update
{
"id": 1,
"configName": "全局默认分成配置",
"configType": 1,
"streamerRatio": 75.00,
"platformRatio": 25.00
}
```
### 禁用某个配置
```bash
PUT /api/admin/gift/share-config/1/status?status=0
```
### 启用某个配置
```bash
PUT /api/admin/gift/share-config/1/status?status=1
```
### 删除配置
```bash
DELETE /api/admin/gift/share-config/2
```
注意:全局默认配置不能删除
---
## 🔍 查询配置
### 查询所有配置
```bash
GET /api/admin/gift/share-config/list?pageNum=1&pageSize=20
```
### 只查询启用的配置
```bash
GET /api/admin/gift/share-config/list?status=1
```
### 只查询等级配置
```bash
GET /api/admin/gift/share-config/list?configType=2
```
### 查询单个配置详情
```bash
GET /api/admin/gift/share-config/1
```
---
## 💡 最佳实践
### 1. 推荐的分成体系
```
新手主播等级1-2: 60% / 40%
普通主播等级3-5: 70% / 30%
高级主播等级6-8: 80% / 20%
顶级主播等级9-10: 85% / 15%
签约主播(特定): 90% / 10%
```
### 2. 优先级设置建议
```
全局默认: priority = 0
等级配置: priority = 5-20
特定主播: priority = 100+
```
### 3. 配置命名规范
```
全局默认: "全局默认分成配置"
等级配置: "等级{X}主播分成配置"
特定主播: "{主播昵称}专属分成配置"
```
---
## ❌ 常见错误
### 错误1分成比例不等于100%
```json
{
"code": 500,
"message": "主播分成比例和平台分成比例之和必须等于100%"
}
```
**解决**: 确保 `streamerRatio + platformRatio = 100`
### 错误2缺少必填字段
```json
{
"code": 500,
"message": "主播等级配置必须指定用户等级"
}
```
**解决**:
- type=2时必须填写`userLevel`
- type=3时必须填写`userId`
### 错误3重复创建配置
```json
{
"code": 500,
"message": "该配置已存在,请勿重复创建"
}
```
**解决**: 使用更新接口而不是创建接口
---
## 🧪 测试验证
### 1. 验证配置生效
```bash
# 赠送礼物
POST /api/front/gift/send
{
"roomId": 1,
"streamerId": 100,
"giftId": 1,
"count": 10
}
# 查看后端日志
礼物分成 - 总金额:100, 主播收益:70, 平台收益:30
```
### 2. 验证优先级
```sql
-- 查询主播的分成配置
SELECT * FROM eb_gift_share_config
WHERE status = 1 AND is_deleted = 0
AND (
(config_type = 3 AND user_id = 100) OR
(config_type = 2 AND user_level = 5) OR
(config_type = 1)
)
ORDER BY priority DESC, config_type DESC
LIMIT 1;
```
---
## 📱 前端集成示例
### 显示分成比例
```javascript
// 获取配置列表
fetch('/api/admin/gift/share-config/list')
.then(res => res.json())
.then(data => {
data.data.list.forEach(config => {
console.log(`${config.configName}: 主播${config.streamerRatio}% 平台${config.platformRatio}%`);
});
});
```
### 创建配置表单
```html
<form id="configForm">
<input name="configName" placeholder="配置名称" required>
<select name="configType" required>
<option value="1">全局默认</option>
<option value="2">主播等级</option>
<option value="3">特定主播</option>
</select>
<input name="streamerRatio" type="number" placeholder="主播分成%" required>
<input name="platformRatio" type="number" placeholder="平台分成%" required>
<button type="submit">创建</button>
</form>
```
---
## 🎯 快速参考
### 接口列表
| 接口 | 方法 | 说明 |
|------|------|------|
| `/list` | GET | 获取配置列表 |
| `/{id}` | GET | 获取配置详情 |
| `/create` | POST | 创建配置 |
| `/update` | PUT | 更新配置 |
| `/{id}` | DELETE | 删除配置 |
| `/{id}/status` | PUT | 启用/禁用 |
| `/init-default` | POST | 初始化默认配置 |
### 字段说明
| 字段 | 类型 | 必填 | 说明 |
|------|------|------|------|
| configName | String | ✅ | 配置名称 |
| configType | Integer | ✅ | 1/2/3 |
| userId | Integer | ⚠️ | type=3时必填 |
| userLevel | Integer | ⚠️ | type=2时必填 |
| streamerRatio | Decimal | ✅ | 0-100 |
| platformRatio | Decimal | ✅ | 0-100 |
| status | Integer | ❌ | 默认1 |
| priority | Integer | ❌ | 默认0 |
---
**创建时间**: 2024-12-29
**适用版本**: v1.0