docs(admin): document creator operation workflow
This commit is contained in:
parent
c3c7cee3aa
commit
f89167e6cf
@ -3,6 +3,11 @@
|
||||
> 当前共 5 个接口:OPS-01 ~ OPS-05
|
||||
> 本文档用于定义“后台直建创作者”“后台为创作者上传媒体”“后台为创作者代发动态”的正式后台能力。
|
||||
> 本模块不再复用客户端申请/发布接口,不依赖目标用户或创作者 token。
|
||||
>
|
||||
> **2026-04-11 联调结论:**
|
||||
> 1. `OPS-01 ~ OPS-05` 已完成本地真实 HTTP 冒烟验证;
|
||||
> 2. 视频上传链路在测试环境实测 `mp4` 可正常上传并完成转码;
|
||||
> 3. `webm` 是否可用取决于第三方媒体库实际支持,测试环境曾返回“不支持的文件类型”,联调阶段建议优先使用 `mp4`。
|
||||
|
||||
---
|
||||
|
||||
@ -102,7 +107,7 @@
|
||||
| bio | string | 否 | 创作者简介 |
|
||||
| avatarMediaId | string | 否 | 头像媒体 ID |
|
||||
| bannerMediaId | string | 否 | Banner 媒体 ID |
|
||||
| status | string | 否 | 默认 `active` |
|
||||
| status | string | 否 | 默认 `active`,当前实现支持 `active/banned` |
|
||||
|
||||
### 响应数据
|
||||
|
||||
@ -157,7 +162,8 @@
|
||||
|
||||
### 响应数据
|
||||
|
||||
> 复用现有 client 图片上传响应结构。
|
||||
> 当前实现复用现有 client 图片上传的字段结构;<br>
|
||||
> 但为了便于后台页面直接预览,`url/thumbnailUrl` 返回的是**后台可直接访问的内部预览地址**,不是 C 端图片加密 `.bnc` 地址。
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
@ -280,18 +286,19 @@
|
||||
1. 校验管理员权限
|
||||
2. 校验 `creatorId` 存在且角色为创作者
|
||||
3. 校验所有 `mediaIds` 和 `coverMediaId` 都归属该创作者
|
||||
4. 复用现有内容发布规则:
|
||||
4. 复用现有内容发布规则中的核心校验:
|
||||
- 标签校验
|
||||
- mentions 校验
|
||||
- visibility 档位校验
|
||||
- 视频封面校验
|
||||
- highlights 校验
|
||||
5. 根据 `submitMode` 写入不同状态:
|
||||
- 媒体归属与处理状态校验
|
||||
5. 当前首版实现对 `visibility` 做**枚举值校验**,未额外复用 client 侧“订阅档位是否启用”的校验
|
||||
6. 根据 `submitMode` 写入不同状态:
|
||||
- `draft` -> 草稿
|
||||
- `reviewing` -> 待审核
|
||||
- `published` -> 直接发布
|
||||
6. 写入 `admin_operation_log`
|
||||
7. 在日志 detail 中记录:
|
||||
7. 写入 `admin_operation_log`
|
||||
8. 在日志 detail 中记录:
|
||||
- `createdSource=admin`
|
||||
- `createdByAdminId`
|
||||
|
||||
@ -308,12 +315,12 @@
|
||||
| title | string | 否 | 标题 |
|
||||
| content | string | 是 | 正文 |
|
||||
| type | string | 是 | `post` / `video` |
|
||||
| mediaIds | int64[] | 是 | 媒体 ID 数组 |
|
||||
| mediaIds | int64[] | 否 | 媒体 ID 数组;`type=video` 时至少需要 1 个 |
|
||||
| coverMediaId | string | 否 | 视频封面图媒体 ID,`type=video` 时必填 |
|
||||
| tags | object[] | 是 | 标签列表 |
|
||||
| tags | object[] | 否 | 标签列表,支持 `id` / `name` 二选一 |
|
||||
| mentions | string[] | 否 | 被 @ 用户列表 |
|
||||
| location | object | 否 | 地点信息 |
|
||||
| visibility | string | 是 | `free/junior/basic/senior/supreme` |
|
||||
| visibility | string | 是 | `free/subscriber/ppv` |
|
||||
| highlights | array | 否 | 视频章节打点 |
|
||||
| submitMode | string | 是 | `draft/reviewing/published` |
|
||||
|
||||
@ -322,8 +329,8 @@
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| contentId | string | 内容 ID |
|
||||
| creatorId | string | 创作者 ID |
|
||||
| status | string | `draft/reviewing/published` |
|
||||
| submitMode | string | 提交模式回显 |
|
||||
| createdAt | timestamp | 创建时间 |
|
||||
|
||||
### 错误场景
|
||||
@ -334,7 +341,6 @@
|
||||
| 40301 | 媒体不属于该创作者 |
|
||||
| 40401 | 创作者不存在、媒体不存在、被 @ 用户不存在 |
|
||||
| 40901 | 目标用户不是创作者 |
|
||||
| 42201 | 可见性档位未启用 |
|
||||
|
||||
---
|
||||
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
# 糖心Fans v2.0 — 运营后台产品需求文档(PRD)
|
||||
|
||||
> **版本:** v1.0
|
||||
> **更新日期:** 2026-03-31
|
||||
> **版本:** v1.1
|
||||
> **更新日期:** 2026-04-11
|
||||
> **文档状态:** 可评审
|
||||
> **编写依据:** 糖心-PRD-产品需求.md、糖心-产品架构文档.md、API-运营后台接口文档-产品视角.md、运营后台API技术文档(52个接口)
|
||||
> **编写依据:** 糖心-PRD-产品需求.md、糖心-产品架构文档.md、API-运营后台接口文档-产品视角.md、运营后台API技术文档(73个接口)
|
||||
> **关联文档:** [C端PRD](糖心-PRD-产品需求.md) · [产品架构](糖心-产品架构文档.md) · [运营后台API(产品视角)](API-运营后台接口文档-产品视角.md) · [运营后台API(技术视角)](../dev/admin-api/README.md)
|
||||
|
||||
---
|
||||
@ -327,6 +327,19 @@ M2 基建期(Week 1-4) P1 扩展期(Week 5-7)
|
||||
| 展示信息 | 基本信息 + 订阅档位设置 + 收入明细(订阅/PPV/打赏分项) + 粉丝增长趋势 + 内容列表 |
|
||||
| 操作入口 | 封禁、查看聊天记录 |
|
||||
|
||||
#### 4.4.7 创作者代运营
|
||||
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| 功能目标 | 让运营团队在无创作者端参与的情况下,直接完成创作者账号搭建、素材准备与内容代发 |
|
||||
| 使用角色 | 超级管理员、运营专员(首版实际实现先限制为超级管理员) |
|
||||
| 能力范围 | ①后台直建创作者 ②为指定创作者上传图片/视频素材 ③为指定创作者新建图文/视频动态 |
|
||||
| 使用入口 | 基于现有“创作者列表 / 创作者详情 / 内容管理”扩展,不新增一级导航 |
|
||||
| 核心流程 | 先选择或创建创作者,再上传归属该创作者的媒体,最后以该创作者身份代发动态 |
|
||||
| 提交模式 | 支持 `draft / reviewing / published` 三种模式;`published` 代表后台直发,直接写发布时间 |
|
||||
| 关键规则 | ①后台直建创作者不走创作者申请审核链路 ②上传媒体必须绑定 `ownerCreatorId`,确保媒体归属正确 ③视频动态必须传封面图 ④代发内容的作者、统计、展示、审计都归属目标创作者 |
|
||||
| 联调约束 | 视频上传联调建议优先使用 `mp4`;`webm` 是否可用取决于第三方媒体库实际支持 |
|
||||
|
||||
---
|
||||
|
||||
### 4.5 财务管理
|
||||
@ -806,7 +819,7 @@ M2 基建期(Week 1-4) P1 扩展期(Week 5-7)
|
||||
│
|
||||
├── 用户管理 [运营专员/客服]
|
||||
│ ├── 用户列表 → 用户详情
|
||||
│ └── 创作者列表 → 创作者详情
|
||||
│ └── 创作者列表 → 创作者详情 / 代运营操作
|
||||
│
|
||||
├── 财务管理 [财务审核员]
|
||||
│ ├── 提现审核
|
||||
@ -966,9 +979,10 @@ P1-Phase1(Week 5-6) P1-Phase2(Week 6-7)
|
||||
| 内容审核 | 7 | 3 | 内容审核 + 头像审核 + 创作者申请审核 |
|
||||
| 举报处理 | 2 | 1 | 举报列表(含处理操作) |
|
||||
| 用户管理 | 6 | 4 | 用户列表/详情 + 创作者列表/详情 |
|
||||
| 创作者代运营 | 5 | 0 | 依附创作者列表/详情扩展,支持直建创作者、上传媒体、代发动态 |
|
||||
| 提现审核 | 4 | 1 | 提现审核列表(含通过/拒绝/确认打款) |
|
||||
| 退款处理 | 3 | 2 | 退款处理 + 退款记录 |
|
||||
| **合计** | **27** | **13** | |
|
||||
| **合计** | **32** | **13** | |
|
||||
|
||||
### 9.3 Phase2 核心交付物(Week 6-7)
|
||||
|
||||
@ -1060,7 +1074,7 @@ P1-Phase1(Week 5-6) P1-Phase2(Week 6-7)
|
||||
|
||||
| 风险 | 影响 | 缓解措施 |
|
||||
|------|------|---------|
|
||||
| P1排期紧张 | 52个接口+34个页面,2-3周交付压力大 | 分3个Phase交付,Phase1优先保证日常运营 |
|
||||
| P1排期紧张 | 核心范围已扩展到57个接口+34个页面,2-3周交付压力大 | 分3个Phase交付,Phase1优先保证日常运营,并把创作者代运营收敛为“依附现有页面的扩展能力” |
|
||||
| 审核员并发冲突 | 多人同时审核导致重复操作 | 乐观锁机制(审核时校验当前状态) |
|
||||
| 财务操作安全 | 提现/退款涉及真金白银 | 全部需审计日志 + 原子操作 + 二次确认 |
|
||||
| 数据统计性能 | 聚合查询在数据量大时可能慢 | 后期引入预聚合/缓存机制 |
|
||||
|
||||
Loading…
Reference in New Issue
Block a user