﻿# 搞搞副业后台管理系统 MVP 信息架构与 PRD

> 版本：V0.1  
> 文档范围：内部运营后台 MVP 版本  
> 对应达人端：搞搞副业达人端 MVP 原型  
> 更新时间：2026-09-02

---

## 1. 产品定位与边界

### 1.1 后台定位

搞搞副业后台管理系统用于支撑平台内部运营、审核风控、财务结算和系统管理员完成项目投放、达人参与、推广数据结算、提现处理等业务管理工作。

平台业务连接广告主与达人/KOC。达人通过抖音、快手、小红书、视频号等平台发布推广内容，完成小说、短剧、漫剧、网盘资源、游戏、婚恋等项目推广，并通过 CPA、CPS、充值分佣等方式获得收益。

### 1.2 MVP 边界

第一版后台只做 **内部运营后台**，不做广告主独立后台。

广告主侧处理的事项不在本后台直接审核：

- 关键词审核由广告主处理，平台后台只查看与同步审核结果。
- 群申请处理由广告主/项目方接口处理，平台后台只记录申请结果与异常。
- 广告主对账、合同、发票、回款、商务报价第一版不做。

### 1.3 MVP 主链路

```text
广告主档案
→ 项目创建与平台运营手动上线
→ 达人参与项目
→ 拉群 / 关键词推广对象生成
→ 作品回填记录
→ 暖暖 API 推送推广数据
→ 系统自动生成结算数据
→ 结算批次人工确认
→ 达人钱包可提现金额增加
→ 达人发起提现
→ 后台处理提现
```

### 1.4 第一版不做事项

| 模块 | 暂不支持 |
|---|---|
| 广告主后台 | 不做广告主登录、广告主审核后台 |
| 合同财务 | 不做合同、商务报价、账期、发票、回款管理 |
| 关键词 | 不做平台人工审核关键词；不做手动重试提交 / 拉取结果 |
| 群 | 不做后台人工创建群、补录二维码、重试创建 |
| 作品回填 | 不做智能识别回填；不做作品审核通过 / 驳回；不做违规标记 |
| 推广数据 | 不做 Excel 导入；前期数据来源为暖暖 API 主动推送 |
| 达人余额 | 第一版不支持后台人工调账 |
| 预算控制 | 项目预算、消耗预警先预留，不作为 MVP 强依赖 |
| 素材教程活动 | 留入口，不做完整内容管理 |

---

## 2. 角色与权限

### 2.1 后台角色

| 角色 | 主要职责 |
|---|---|
| 平台运营 | 广告主管理、项目创建、项目上线/暂停/下架、查看推广数据、查看回填记录 |
| 审核 / 风控 | 查看达人、作品回填、异常数据、违规记录维护 |
| 财务 | 查看收益订单、确认结算批次、处理提现申请 |
| 管理员 | 账号权限、系统配置、操作日志查看 |

### 2.2 权限原则

- 所有核心操作需要记录操作日志。
- 项目上线、暂停、下架、结算确认、提现处理属于高风险操作，需要记录操作人、操作时间、操作前后状态。
- 财务类数据允许按角色控制查看范围。
- 删除类操作第一版建议使用软删除，不做物理删除。

### 2.3 权限矩阵

| 功能 | 平台运营 | 审核/风控 | 财务 | 管理员 |
|---|---:|---:|---:|---:|
| 工作台查看 | ✅ | ✅ | ✅ | ✅ |
| 广告主档案管理 | ✅ | 查看 | 查看 | ✅ |
| 项目创建/编辑 | ✅ | 查看 | 查看 | ✅ |
| 项目上线/暂停/下架 | ✅ | - | - | ✅ |
| 达人查看 | ✅ | ✅ | 查看 | ✅ |
| 达人启用/禁用 | ✅ | ✅ | - | ✅ |
| 关键词记录查看 | ✅ | ✅ | 查看 | ✅ |
| 群记录查看 | ✅ | ✅ | 查看 | ✅ |
| 作品回填查看/导出 | ✅ | ✅ | 查看 | ✅ |
| 推广数据查看 | ✅ | ✅ | ✅ | ✅ |
| 结算批次确认 | - | - | ✅ | ✅ |
| 提现处理 | - | - | ✅ | ✅ |
| 消息通知配置 | ✅ | 查看 | 查看 | ✅ |
| 系统账号权限 | - | - | - | ✅ |

### 2.4 后台页面交互框架

- 后台采用多页面标签页工作区。点击左侧菜单或顶部消息/设置入口时，若页面未打开则新增标签页，若已打开则切换到该标签页。
- 标签页支持左键切换页面，切换时保留已打开页面的筛选、分页和弹窗状态。
- 标签页支持右键操作：刷新、关闭、关闭其他、关闭全部。
- 工作台作为默认入口页；执行“关闭全部”后保留工作台标签并切回工作台。
- 刷新标签页用于重置当前页面筛选、弹窗和局部状态，不触发真实接口刷新。

### 2.5 新建与编辑交互规则

- 所有新建、编辑类操作统一使用居中模态窗口。
- 新建/编辑广告主、新建/编辑项目、新建消息、新增/编辑后台账号均在模态窗口内完成。
- 详情查看、提现处理等非新建/编辑操作可按业务复杂度使用抽屉或模态窗口。
- 长表单在模态窗口内部滚动，底部操作区固定在弹窗底部。

---

## 3. 全局业务状态与规则

### 3.0 通用名词口径

| 名词 | 口径 |
|---|---|
| 关键词/别名 | **别名和关键词是同一个概念**，均指达人为小说、短剧等内容设置的推广识别词，是统计拉新、拉活、拉旧、订单量或充值分佣等数据的重要凭证。 |
| 回填 | 达人发布推广作品后，将作品链接等信息填写到对应群或关键词/别名下的操作，用于平台记录、合规查看、广告主数据分析及推广数据结算核对。 |

说明：后续产品、接口、后台字段可根据项目方习惯展示“关键词”或“别名”，但数据模型按同一对象处理，不拆成两个独立字段。

### 3.1 项目状态

```text
草稿 → 待上线 → 投放中 → 已暂停 → 已下架
```

| 状态 | 说明 | 达人端影响 |
|---|---|---|
| 草稿 | 项目未配置完成，只后台可见 | 不展示 |
| 待上线 | 配置完成，等待平台运营上线 | 不展示 |
| 投放中 | 项目可正常参与和推广 | 首页展示，可参与、新增群/关键词/别名、回填 |
| 已暂停 | 临时停止投放 | 首页不展示；我的项目保留历史，不允许新增和回填 |
| 已下架 | 项目结束 | 首页不展示；我的项目保留历史，不允许新增和回填 |

首页只展示 **投放中** 的广告项目。

### 3.2 达人账号状态

| 状态 | 说明 | 业务限制 |
|---|---|---|
| 正常 | 可正常使用 | 无限制 |
| 禁用 | 因违规、风控或运营原因禁用 | 可登录和查看历史，不可参与项目、不可新增群/关键词/别名、不可回填、不可提现 |

禁用后不影响达人查看历史项目、历史数据、历史收益。

### 3.3 关键词状态

```text
待提交 / 已提交 / 审核中 / 审核通过 / 已驳回 / 提交失败 / 同步失败 / 删除
```

说明：

- 关键词/别名由达人提交，二者为同一业务概念。
- 关键词/别名是达人唯一的推广识别词，用于广告主识别搜索、点击、转化和订单数据。
- 广告主审核关键词/别名。
- 平台后台不直接修改审核结果。
- 平台后台用于查看记录、查看同步状态、查看驳回原因。

### 3.4 群状态

```text
创建中 / 创建成功 / 创建失败 / 创建超时 / 已失效 / 删除
```

说明：

- 达人端调用项目方接口申请企业微信群。
- 项目方接口返回群二维码后，达人端展示二维码。
- 后台只查看记录、状态、二维码和失败原因。

### 3.5 收益订单状态

```text
预估 / 待结算 / 已结算 / 无效
```

| 状态 | 说明 |
|---|---|
| 预估 | 根据推广数据初步计算，仅供展示，不可提现 |
| 待结算 | 已进入结算批次，等待财务/运营确认 |
| 已结算 | 批次确认后进入达人钱包可提现金额 |
| 无效 | 数据异常、广告主不认可或风控判定无效 |

### 3.6 结算批次状态

```text
待确认 / 已确认 / 已驳回 / 处理失败
```

规则：

- 推广数据入库后系统自动生成收益订单和结算批次。
- 未确认前可在达人端展示为预估或待结算，但不能提现。
- 批次确认后，收益进入达人钱包可提现金额。
- 批次驳回后不在原批次重算；等待广告主重新推送或后续重新生成新批次。

### 3.7 提现状态

```text
待处理 → 打款中 → 打款成功
待处理 → 已驳回
打款中 → 打款失败
```

说明：

- 第一版后台由财务人工审核提现申请，并记录第三方打款单号、失败/驳回原因和操作日志。
- 后续接入第三方结算平台回调后，可自动更新打款成功/失败状态。
- 达人端不展示云账户授权信息，云账户等第三方结算能力属于后台结算通道。
---

## 4. 信息架构

```text
后台管理系统
├─ 工作台
├─ 广告主管理
│  ├─ 广告主列表
│  └─ 广告主详情 / 新建 / 编辑
├─ 项目管理
│  ├─ 项目列表
│  ├─ 新建项目
│  ├─ 项目详情
│  ├─ 结算规则
│  ├─ 接口配置入口
│  └─ 素材 / 教程 / 活动入口
├─ 达人管理
│  ├─ 达人列表
│  └─ 达人详情
├─ 项目参与管理
│  ├─ 达人项目关系列表
│  └─ 参与详情
├─ 推广对象管理
│  ├─ 关键词记录
│  └─ 群记录
├─ 作品回填管理
│  ├─ 回填记录列表
│  └─ 作品详情
├─ 推广数据管理
│  ├─ 推广明细
│  ├─ API 接收记录
│  └─ 处理失败记录
├─ 订单结算
│  ├─ 收益订单
│  └─ 结算批次
├─ 钱包提现
│  ├─ 钱包流水
│  └─ 提现申请
├─ 消息通知
│  ├─ 消息模板
│  └─ 系统公告
├─ 运营配置
│  ├─ 项目分类
│  └─ 首页推荐 / 排序配置
└─ 系统管理
   ├─ 后台账号
   ├─ 角色权限
   └─ 操作日志
```

---

## 5. 工作台

### 5.1 页面目标

让运营、财务、风控快速看到需要处理的异常和待办，避免把广告主处理事项误放到平台后台。

### 5.2 核心指标卡

| 指标 | 说明 |
|---|---|
| 投放中项目数 | 当前状态为投放中的项目数量 |
| 今日新增达人 | 今日注册或首次登录达人数量 |
| 今日新增参与 | 今日达人参与项目数量 |
| 今日新增群 | 今日创建成功的群数量 |
| 今日新增关键词 | 今日提交关键词/别名数量 |
| 今日回填作品 | 今日回填作品数量 |
| 今日推广转化 | 今日接收并处理成功的转化量 |
| 待确认结算批次 | 状态为待确认的结算批次数 |
| 待处理提现 | 状态为处理中的提现申请数 |

### 5.3 待办与异常

平台后台工作台展示以下待办：

- 审核结果同步异常
- 群创建异常
- 回填数据异常提示
- 推广数据处理失败
- 结算批次待确认
- 提现申请待处理
- 项目即将到期 / 预算异常（预留）

不展示为平台待办：

- 待审核关键词/别名
- 待处理群申请

以上两类由广告主或项目方处理。

### 5.4 常用入口

- 新建项目
- 新建广告主
- 查看推广数据处理失败记录
- 查看待确认结算批次
- 查看待处理提现

---

## 6. 广告主管理

### 6.1 页面目标

维护广告主基础档案，项目创建时必须关联广告主。

### 6.2 广告主列表

#### 筛选项

- 广告主名称
- 公司主体名称
- 联系人
- 数据回传方式
- 状态
- 创建时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 广告主名称 | 展示名称 |
| 公司主体名称 | 合同或商务主体，仅做档案记录 |
| 联系人 | 广告主联系人 |
| 联系电话 | 联系人手机号 |
| 联系微信 | 联系微信号 |
| 数据回传方式 | 主动推送 / 平台拉取 / 人工导入 |
| 状态 | 启用 / 停用 |
| 创建时间 | 档案创建时间 |
| 操作 | 查看、编辑、启用/停用 |

### 6.3 新建 / 编辑广告主

| 字段 | 必填 | 规则 |
|---|---:|---|
| 广告主名称 | 是 | 2-50 字 |
| 公司主体名称 | 否 | 2-100 字 |
| 联系人 | 否 | 2-20 字 |
| 联系电话 | 否 | 手机号格式 |
| 联系微信 | 否 | 50 字以内 |
| 数据回传方式 | 是 | 主动推送 / 平台拉取 / 人工导入 |
| 数据对接备注 | 否 | 500 字以内 |
| 结算备注 | 否 | 500 字以内 |
| 状态 | 是 | 启用 / 停用 |

### 6.4 广告主详情

展示：

- 基础信息
- 关联项目列表
- 数据回传说明
- 结算备注
- 操作日志

---

## 7. 项目管理

### 7.1 页面目标

平台运营通过模板化方式创建广告项目，完成配置后手动上线。第一版支持拉群类项目和关键字类项目。

### 7.2 项目列表

#### 筛选项

- 项目名称
- 广告主
- 项目类型
- 项目分类
- 项目状态
- 是否推荐
- 创建时间
- 上线时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 项目名称 | 如 AI 红娘暖暖、红果短剧、番茄小说 |
| 广告主 | 关联广告主 |
| 项目类型 | 拉群类 / 关键字类 |
| 项目分类 | 婚恋、小说、短剧、漫剧、网盘、AI、泛应用、游戏、知识 |
| 首页标签 | 由价格规则标签与运营选择标签共同组成 |
| 是否推荐 | 是 / 否 |
| 排序权重 | 数值越大越靠前 |
| 状态 | 草稿 / 待上线 / 投放中 / 已暂停 / 已下架 |
| 接口配置 | 已配置 / 未配置 |
| 素材配置 | 已配置 / 未配置 |
| 教程配置 | 已配置 / 未配置 |
| 创建时间 | 创建时间 |
| 操作 | 查看、编辑、接口配置、素材库、教程/活动、复制、上线、暂停、下架 |

### 7.3 新建项目

#### 交互原则

- 新建项目为一个长表单分区。
- 支持保存草稿。
- 必须选择项目模板：拉群类项目 / 关键字类项目。
- 项目上线由平台运营手动触发。
- 草稿状态不展示到达人端。

#### 表单分区

##### A. 基础信息

| 字段 | 必填 | 说明 |
|---|---:|---|
| 项目名称 | 是 | 展示给达人，作为项目详情标题 |
| 关联广告主 | 是 | 从广告主档案选择 |
| 项目类型 | 是 | 拉群类 / 关键字类 |
| 项目分类 | 是 | 婚恋、小说、短剧、漫剧、网盘、AI、泛应用、游戏、知识 |
| 项目 Icon | 是 | 达人端列表展示 |
| 项目简介 | 是 | 首页或详情页展示短描述 |
| 项目说明 | 是 | 富文本编辑器，配置达人端项目详情说明，支持是否展示开关 |
| 状态 | 是 | 默认草稿 |

##### B. 首页展示配置

| 字段 | 必填 | 说明 |
|---|---:|---|
| 项目标签 | 否 | 从标签字典中选择，不支持随意填写 |
| 是否推荐 | 否 | 后台标记为推荐的项目展示在首页推荐分类 |
| 分类排序权重 | 否 | 数值越大越靠前 |
| 推荐排序权重 | 否 | 推荐分类内排序 |
| 展示开始时间 | 否 | 预留 |
| 展示结束时间 | 否 | 预留 |


#### 标签生成规则

- 达人端项目标签由两类来源共同组成：
  - 价格规则标签：价格配置中开启「展示标签」后自动生成，例如“有效拉新量8元”“充值分佣15%”。
  - 运营标签：后台从标签字典中选择，例如“官方直签”“热门项目”“新手推荐”。
- 不支持运营人员随意手填项目标签，避免同义标签、错别字和前端展示不统一。
- 价格配置默认展示 1 行，支持添加行、删除行；上线前至少保留 1 条启用的奖励价格规则。

#### 接口与内容入口

- 接口配置、素材库、教程/活动不放在新建/编辑项目表单内。
- 项目列表增加「接口」「素材」「教程」三列，展示已配置 / 未配置。
- 对应配置入口放在项目列表操作栏中打开。

#### 参与方式与有效口径处理

- 「参与方式」「有效口径」不作为新建/编辑项目的独立表单字段。
- 达人端实际参与动作由项目类型决定：拉群类新增群，关键字类新增关键字。
- 有效结果由广告主 / 项目方回传的推广数据决定；平台基于回传结果生成收益订单，不在项目表单中单独维护有效口径。
- 需要给达人展示的项目玩法、回填要求、订单结算、特别注意，由下方富文本说明配置。

##### C. 参与配置

| 字段 | 必填 | 拉群类 | 关键字类 | 说明 |
|---|---:|---:|---:|---|
| 是否需要加白 | 是 | ✅ | ✅ | 达人参与后是否生成项目推广权限 |
| 是否需要回填 | 是 | ✅ | ✅ | 与回填说明同区配置；选择不需要时，回填说明默认变为“该项目不需要回填”，仍允许编辑 |
| 回填说明 | 否 | ✅ | ✅ | 富文本编辑器，配置达人端回填说明，支持是否展示开关 |
| 新增对象名称 | 是 | 新增群 | 新增关键词 | 达人端我的项目底部按钮文案 |
| 项目状态限制 | 是 | ✅ | ✅ | 非投放中不可新增对象和回填 |


> 达人端目前先不做实名认证前置要求；后台保留达人实名状态字段用于查看。

##### D. 拉群类配置

适用于 AI 红娘暖暖等项目。

| 字段 | 必填 | 说明 |
|---|---:|---|
| 群名称规则 | 否 | 达人填写群名称，后台记录 |
| 二维码有效期 | 否 | 预留 |

##### E. 关键字类配置

适用于红果短剧、番茄小说等项目。

| 字段 | 必填 | 说明 |
|---|---:|---|
| 关键词/别名字段模板 | 是 | 使用固定模板字段，不做自定义字段 |
| 关键词/别名审核方 | 是 | 广告主 |
| 审核结果同步方式 | 是 | 广告主接口同步 |


##### F. 价格与奖励规则配置

一个项目支持多条奖励规则。价格配置使用表格维护，默认展示 1 行，运营可添加行、删除行。

| 字段 | 必填 | 说明 |
|---|---:|---|
| 任务要求 | 是 | 如有效拉新量、有效拉活量、有效拉旧量、充值分佣、有效播放、CPL表单 |
| 对接价格 | 是 | 广告主给平台的结算价格或分佣比例 |
| 奖励价格 | 是 | 平台给达人的结算价格或分佣比例 |
| 展示标签 | 是 | 开启后由该条价格规则自动生成达人端标签，如“有效拉新量8元” |
| 是否启用 | 是 | 启用 / 停用 |
| 排序 | 否 | 数值越大越靠前 |

示例：

| 项目 | 奖励规则 |
|---|---|
| AI 红娘暖暖 | 有效拉新量 10 元；红豆充值佣金 15% |
| 普通项目 | 有效拉新量 10 元；有效拉活量 0.9 元；有效拉旧量 5 元 |

##### G. 订单结算说明配置

可配置达人端项目详情内展示的订单结算说明，使用富文本编辑器，支持是否展示开关。以下为示例文案，仅用于原型展示，不作为平台固定规则：

```text
订单更新：T+2~T+5（以此类推日出数据，节假日除外）
基础结算价格：拉新8元，拉旧4元（活动期间价格以上方通知为准）
结算方式：（日出日结，预计2-3天内到账）
特殊情况：节假日不结算，结算价格以首页活动价为准
```

##### H. 风控与特别注意

可配置达人端项目详情内展示的特别注意，使用富文本编辑器，支持是否展示开关。以下为示例文案，仅用于原型展示，不作为平台固定规则：

```text
严禁在其他微信群内炸群，炸群不结算；
禁止地推和刷量行为，地推和私域渠道不被官方认可，无效日活和质量低的用户量会导致官方不结算；
```

##### I. 素材 / 教程 / 活动入口

入口放在项目列表操作栏，不放在新建/编辑项目表单内；第一版只维护配置状态，不做素材、教程、活动的完整内容管理。

##### J. 接口配置入口

入口放在项目列表操作栏，不放在新建/编辑项目表单内；第一版只维护配置状态，不做接口地址、密钥、签名、参数映射等细字段。

### 7.4 项目详情

展示内容：

- 基础信息
- 首页展示配置
- 参与配置
- 拉群 / 关键字配置
- 奖励规则
- 订单结算说明
- 风控说明
- 当前状态
- 关联数据概览：参与人数、群数、关键词数、回填作品数、推广数据量、结算金额
- 操作日志

### 7.5 状态操作

| 操作 | 前置状态 | 目标状态 | 校验 |
|---|---|---|---|
| 保存草稿 | 任意编辑中 | 草稿 | 项目名称、广告主、项目类型可先填即可保存 |
| 提交待上线 | 草稿 | 待上线 | 核心字段完整 |
| 上线 | 待上线 / 已暂停 | 投放中 | 结算规则至少一条启用；首页展示配置完整 |
| 暂停 | 投放中 | 已暂停 | 需要填写暂停原因 |
| 下架 | 投放中 / 已暂停 | 已下架 | 需要填写下架原因 |

已上线项目允许编辑非关键展示信息；价格规则、项目说明、订单结算等关键字段如需修改，需要记录变更日志，并建议向达人发送项目规则变更通知。

---

## 8. 达人管理

### 8.1 页面目标

管理达人基础信息、实名状态、账号状态、参与项目、收益和违规记录。

### 8.2 达人列表

#### 筛选项

- 达人 ID
- 手机号
- 昵称
- 实名状态
- 账号状态
- 注册时间
- 最近登录时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 达人 ID | 唯一编号 |
| 头像/昵称 | 达人基础信息 |
| 手机号 | 脱敏展示 |
| 实名状态 | 未实名 / 已实名 |
| 账号状态 | 正常 / 禁用 |
| 参与项目数 | 参与过的项目数量 |
| 累计收入 | 历史累计收入 |
| 可提现金额 | 当前可提现金额 |
| 注册时间 | 注册时间 |
| 最近登录 | 最近登录时间 |
| 操作 | 查看、启用/禁用 |

### 8.3 达人详情

展示：

- 基础信息：头像、昵称、手机号、达人 ID、注册时间、最近登录
- 实名信息：实名状态、姓名脱敏、身份证号脱敏
- 收款账户：银行卡 / 支付宝 / 微信，脱敏展示
- 参与项目：项目名称、项目状态、参与时间、推广对象数量
- 关键词记录
- 群记录
- 作品回填记录
- 收益订单
- 提现记录
- 违规记录
- 操作日志

### 8.4 禁用 / 启用

#### 禁用

字段：

- 禁用原因（必填）
- 备注（选填）

禁用后达人：

- 可登录。
- 可查看历史项目、历史数据、历史收益。
- 不可参与项目。
- 不可新增群/关键词/别名。
- 不可发布回填。
- 不可发起提现。

#### 启用

字段：

- 启用原因（必填）
- 备注（选填）

---

## 9. 项目参与管理

### 9.1 页面目标

记录达人参与项目的情况，用于判断达人是否拥有指定项目推广权限。

### 9.2 项目参与列表

#### 筛选项

- 达人 ID / 手机号 / 昵称
- 项目名称
- 项目类型
- 项目状态
- 参与状态
- 参与时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 达人信息 | 达人 ID、昵称、手机号 |
| 项目信息 | 项目名称、项目类型、项目分类 |
| 项目状态 | 投放中 / 已暂停 / 已下架等 |
| 参与状态 | 已参与 / 已失效 |
| 是否加白 | 是 / 否 |
| 参与时间 | 达人点击参与项目成功时间 |
| 推广对象数量 | 群数量或关键词/别名数量 |
| 回填作品数 | 该项目下作品回填数量 |
| 操作 | 查看详情 |

### 9.3 参与详情

展示：

- 达人信息
- 项目信息
- 参与时间
- 加白状态
- 群 / 关键词记录
- 回填作品
- 推广明细
- 收益订单

---

## 10. 推广对象管理

推广对象包括：关键词/别名、推广群等。不同项目类型展示不同记录。

### 10.0 关键词/别名与回填规则口径

#### 关键词/别名是什么

- 别名和关键词是同一个概念，均指达人为推广内容设置的唯一搜索词/识别词。
- 对小说推文、短剧推广等关键字类项目，关键词/别名是统计拉新、拉活、拉旧、订单量或充值分佣数据的重要凭证。
- 达人可在推广视频正文、口播、字幕或评论区引导用户下载指定 App，并搜索对应关键词/别名。
- 推广效果依赖达人发布内容、配音、剪辑、评论区引导等实际内容质量。
- 禁止故意使用噱头化、违规或误导性词汇吸引用户；该类内容容易触发平台审核、下架、限流或导致广告主不结算。

#### 回填是什么

- 回填是指达人发布推广作品后，将作品链接等信息填写到对应群或关键词/别名下。
- 回填用于确保推广数据可追溯，平台可将作品、关键词/别名、达人、项目和后续推广数据进行关联展示和辅助核对。
- 回填记录会用于平台记录、合规查看、广告主数据分析，以及后续拉新、拉活、拉旧、订单量和收益计算。
- 作品回填不做前置审核，但发布完推广作品后应及时回填；未回填会影响平台获取作品数据和判断收益归属。
- 平台需要治理乱回填、回填非本人作品、作品内容与关键词/别名不相关等行为；一旦违规，按平台协议和项目规则处理。

#### 关键词/别名选取规则

可以做：

- 关键词/别名长度为 3-18 个字。
- 尽量贴合小说、短剧或推广内容情节，便于用户记忆和搜索。
- 同一篇文章、同一部作品或同一个推广内容，可按项目规则申请多个关键词/别名。

禁止做：

- 不能包含标点符号。
- 不能包含生僻字、繁体字。
- 不能包含耽美、后宫等不符合项目要求的导向。
- 不能以前后缀形式堆叠高频热词。
- 不能使用违禁词、敏感词、擦边词或明显噱头词。
- 不能无脑囤积关键词/别名；运营与广告主可按项目规则限制申请频次、数量和质量。

### 10.1 关键词管理

#### 页面目标

查看达人提交的关键词/别名及广告主审核结果。

#### 筛选项

- 关键词
- 达人 ID / 手机号 / 昵称
- 项目名称
- 广告主
- 审核状态
- 提交时间
- 审核时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 关键词/别名 | 达人提交的推广识别词 |
| 达人信息 | 达人 ID、昵称、手机号 |
| 项目名称 | 所属项目 |
| 项目类型 | 关键字类 |
| 书籍 ID / 内容 ID | 如番茄小说项目需要 |
| 书籍名称 / 内容名称 | 如番茄小说项目需要 |
| 推广视频类型 | 通过固定选项选择 |
| 状态 | 待提交 / 已提交 / 审核中 / 审核通过 / 已驳回 / 提交失败 / 同步失败 / 删除 |
| 审核反馈 | 广告主返回的驳回原因或备注 |
| 创建时间 | 达人创建时间 |
| 预计过期时间 | 如项目要求则展示 |
| 操作 | 查看详情 |

#### 详情字段

- 关键词/别名基础信息
- 达人信息
- 项目信息
- 提交请求记录
- 审核结果同步记录
- 审核反馈
- 关联回填作品
- 关联推广数据

#### 固定模板字段：番茄小说示例

| 字段 | 必填 | 说明 |
|---|---:|---|
| 关键词/别名 | 是 | 推广识别词 |
| 书籍 ID | 是 | 数字或项目方规定格式 |
| 书籍名称 | 是 | 文本 |
| 推广视频类型 | 是 | 通过达人端底部弹窗选择 |
| 备注 | 否 | 选填 |

> 所有下拉选择类交互，达人端统一使用底部弹出浮层选择；后台表单可使用常规选择器。
> 关键词/别名提交前需按 3-18 个字、无标点、无生僻字/繁体字、无违禁词等规则做前端基础校验；广告主审核结果仍以项目方返回为准。

### 10.2 群管理

#### 页面目标

查看达人申请创建的企微群记录、二维码和接口返回状态。

#### 筛选项

- 群名称
- 达人 ID / 手机号 / 昵称
- 项目名称
- 群状态
- 创建时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 群名称 | 达人填写的群名称 |
| 达人信息 | 达人 ID、昵称、手机号 |
| 项目名称 | 如 AI 红娘暖暖 |
| 群 ID | 项目方接口返回 |
| 群二维码 ID | 项目方接口返回，用于广告主识别和数据回传 |
| 群二维码 | 可预览/下载 |
| 状态 | 创建中 / 创建成功 / 创建失败 / 创建超时 / 已失效 / 删除 |
| 失败原因 | 接口返回或系统记录 |
| 创建时间 | 达人提交时间 |
| 操作 | 查看详情、查看二维码 |

#### 详情字段

- 群名称
- 达人信息
- 项目信息
- 群 ID / 群二维码 ID
- 二维码图片
- 创建请求参数摘要
- 接口返回摘要
- 失败原因
- 关联回填作品
- 关联推广数据
- 关联收益订单

### 10.3 删除与回收站

- 达人端我的项目内支持删除关键词/别名 / 群，删除后进入回收站。
- 后台记录状态为“删除”。
- 第一版不支持恢复。
- 删除记录仍保留用于推广数据核对、结算、审计。

---

## 11. 作品回填管理

### 11.1 页面目标

后台第一版作为作品回填台账，记录达人提交的视频链接，便于平台记录、合规查看和后续返回广告主数据分析。

### 11.2 业务规则

- 作品回填不做前置审核。
- 作品链接重复提交时，在达人端提交时拦截。
- 项目状态非投放中时，不允许新增回填。
- 达人账号被禁用时，不允许新增回填。
- 作品回填数据后续需要传给广告主。
- MVP 支持按筛选条件导出 Excel/CSV，线下提供给广告主；后续再做接口推送。

### 11.3 回填记录列表

#### 筛选项

- 作品链接
- 达人 ID / 手机号 / 昵称
- 项目名称
- 推广对象类型：群 / 关键词
- 推广对象名称：群名称 / 关键词
- 平台：抖音 / 快手 / 小红书 / 视频号 / 其他
- 回填时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 作品链接 | 达人提交的视频链接 |
| 作品平台 | 抖音、快手、小红书、视频号等 |
| 达人信息 | 达人 ID、昵称、手机号 |
| 项目名称 | 所属项目 |
| 推广对象类型 | 群 / 关键词 |
| 推广对象名称 | 群名称或关键词/别名 |
| 回填时间 | 达人提交时间 |
| 是否重复 | 正常 / 疑似重复 |
| 导出状态 | 未导出 / 已导出 |
| 操作 | 查看详情 |

### 11.4 作品详情

展示：

- 作品链接
- 作品平台
- 达人信息
- 项目信息
- 关联群 / 关键词
- 回填时间
- 提交 IP / 设备信息（如有）
- 导出记录
- 后续广告主同步记录（预留）

### 11.5 回填表单字段与校验

达人端回填表单建议字段：

| 字段 | 必填 | 校验 |
|---|---:|---|
| 所属项目 | 是 | 从我的项目进入时自动带入 |
| 推广对象 | 是 | 群或关键词，自动带入或选择 |
| 作品平台 | 是 | 抖音 / 快手 / 小红书 / 视频号 / 其他 |
| 作品链接 | 是 | URL 格式；同达人同项目下不可重复提交 |
| 备注 | 否 | 200 字以内 |

---

## 12. 推广数据管理

### 12.1 页面目标

接收、记录并处理广告主/项目方回传的推广结果数据，并根据项目结算规则生成收益订单。

> 重要口径：来源识别、用户归属和有效行为判断由广告主侧完成。平台不做归因计算，只负责接收广告主回传后的推广数据，进行幂等校验、基础字段校验、异常记录、展示、入账和生成收益订单。

### 12.2 MVP 数据来源

第一版不做 Excel 导入，前期推广数据来源为 **暖暖 API 主动推送**。

后续可扩展：

- 广告主主动推送
- 平台按广告主接口定时拉取
- 人工导入

### 12.3 暖暖推广数据处理链路

```text
达人创建群
→ 平台保存群 ID / 群二维码 ID
→ 暖暖 API 回传推广数据
→ 平台校验回传数据中的项目、达人、群记录等关联信息
→ 生成推广明细
→ 按项目结算规则计算收益
→ 自动生成收益订单
→ 自动生成结算批次
```

### 12.4 推广明细列表

#### 筛选项

- 项目名称
- 广告主
- 达人 ID / 手机号 / 昵称
- 群 ID / 群二维码 ID
- 关键词
- 行为类型：拉新 / 拉活 / 拉旧 / 充值
- 处理状态
- 行为发生时间
- 接收时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 推广数据流水号 | 系统生成唯一编号 |
| 来源 | 暖暖 API / 其他广告主 API |
| 项目名称 | 回传数据所属项目 |
| 达人信息 | 广告主回传或平台关联到的达人 |
| 推广对象 | 群、群二维码、关键词或作品等 |
| 行为类型 | 拉新 / 拉活 / 拉旧 / 充值 |
| 原始数量/金额 | API 推送原始值 |
| 结算金额 | 根据项目结算规则计算 |
| 行为发生时间 | 用户有效行为发生时间，由广告主回传 |
| 接收时间 | 平台接收时间 |
| 处理状态 | 成功 / 失败 / 重复 |
| 失败原因 | 关联信息缺失、规则缺失、数据格式异常等 |
| 操作 | 查看详情 |

### 12.5 API 接收记录

记录所有 API 请求：

- 请求来源
- 请求时间
- 请求摘要
- 请求流水号
- 幂等键
- 处理状态
- 失败原因
- 原始报文存储地址或脱敏摘要

### 12.6 处理失败记录

常见失败原因：

- 群 ID / 群二维码 ID 未找到记录
- 推广对象已删除但仍收到推广数据
- 项目不存在或已下架
- 项目结算规则缺失
- 行为类型无法识别
- 重复推送
- 数据格式异常

处理方式：

- 第一版后台只查看失败记录，不做手动修正。
- 后续可扩展补录关联关系、重新处理、人工作废。

### 12.7 幂等规则

推广数据需要支持幂等处理。推荐使用：

```text
广告主流水号 / 来源流水号 + 项目 ID + 行为类型
```

如果广告主无法提供唯一流水号，平台需要根据来源、群二维码 ID、用户标识、行为类型、行为时间等生成去重键。

---

## 13. 订单结算

### 13.1 页面目标

基于广告主回传的推广数据和项目结算规则自动生成收益订单，再由财务/运营确认结算批次，确认后进入达人钱包可提现金额。

### 13.2 收益订单列表

#### 筛选项

- 订单号
- 项目名称
- 广告主
- 达人 ID / 手机号 / 昵称
- 行为类型
- 订单状态
- 行为发生时间
- 生成时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 收益订单号 | 系统生成 |
| 达人信息 | 达人 ID、昵称、手机号 |
| 项目名称 | 所属项目 |
| 推广对象 | 群或关键词 |
| 行为类型 | 拉新 / 拉活 / 拉旧 / 充值 |
| 结算规则 | 匹配的奖励规则 |
| 数量 / 金额 | 原始计量值 |
| 收益金额 | 计算后的达人收益 |
| 状态 | 预估 / 待结算 / 已结算 / 无效 |
| 行为发生时间 | 行为发生时间 |
| 生成时间 | 收益订单生成时间 |
| 结算批次 | 所属批次 |
| 操作 | 查看详情 |

### 13.3 结算批次列表

#### 生成规则

- 系统按照项目、广告主、结算周期自动生成批次。
- 默认可按日生成，也可按广告主数据批次生成。
- 批次生成后状态为待确认。

#### 筛选项

- 批次号
- 项目名称
- 广告主
- 批次状态
- 生成时间
- 确认时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 批次号 | 系统生成 |
| 项目名称 | 所属项目 |
| 广告主 | 关联广告主 |
| 订单数量 | 批次内收益订单数量 |
| 结算人数 | 涉及达人数 |
| 结算金额 | 批次总金额 |
| 状态 | 待确认 / 已确认 / 已驳回 / 处理失败 |
| 生成时间 | 批次生成时间 |
| 确认时间 | 批次确认时间 |
| 操作 | 查看、确认、驳回、导出 |

### 13.4 批次确认

确认前展示：

- 批次汇总
- 明细订单
- 异常提示
- 确认备注输入框

确认后：

- 批次状态改为已确认。
- 批次内订单状态改为已结算。
- 达人钱包可提现金额增加。
- 发送收益结算消息。

### 13.5 批次驳回

驳回字段：

- 驳回原因（必填）
- 备注（选填）

驳回后：

- 批次状态改为已驳回。
- 批次内订单不进入可提现。
- 不在原批次重算。
- 等待广告主重新推送后生成新批次。

---

## 14. 钱包 / 提现管理

### 14.1 钱包规则

达人钱包包含：

- 总收入
- 已提现金额
- 可提现金额
- 提现中金额（如需要展示）

可提现金额只由已确认结算批次增加。

第一版不支持后台人工调整达人余额。

### 14.2 钱包流水

#### 筛选项

- 达人 ID / 手机号 / 昵称
- 流水类型
- 项目名称
- 时间范围

#### 流水类型

- 收益入账
- 提现冻结
- 提现成功扣减
- 提现失败退回

#### 列表字段

| 字段 | 说明 |
|---|---|
| 流水号 | 系统生成 |
| 达人信息 | 达人 ID、昵称、手机号 |
| 流水类型 | 收益入账等 |
| 关联业务单号 | 收益订单 / 结算批次 / 提现单 |
| 变动金额 | 正数或负数 |
| 变动前余额 | 记录快照 |
| 变动后余额 | 记录快照 |
| 创建时间 | 流水时间 |

### 14.3 提现申请列表

#### 筛选项

- 提现单号
- 达人 ID / 手机号 / 昵称
- 提现状态
- 提现账户类型
- 申请时间

#### 列表字段

| 字段 | 说明 |
|---|---|
| 提现单号 | 系统生成 |
| 达人信息 | 达人 ID、昵称、手机号 |
| 提现金额 | 达人申请金额 |
| 提现账户类型 | 银行卡 / 支付宝 / 微信 |
| 提现账户信息 | 脱敏展示 |
| 状态 | 待处理 / 打款中 / 打款成功 / 打款失败 / 已驳回 |
| 申请时间 | 达人发起时间 |
| 处理时间 | 财务处理时间 |
| 第三方打款单号 | 后台录入或第三方返回 |
| 失败 / 驳回原因 | 打款失败或驳回时必填 |
| 操作 | 查看、通过、驳回、标记成功、标记失败 |

### 14.4 提现处理

#### 通过提现

字段：

- 第三方打款单号（选填）
- 处理备注（选填）

结果：

- 提现状态由待处理改为打款中。
- 保持提现冻结金额，等待打款结果。
- 写入操作记录。

#### 驳回提现

字段：

- 驳回原因（必填）

结果：

- 提现状态由待处理改为已驳回。
- 冻结金额退回可提现金额。
- 发送提现驳回消息。

#### 标记打款成功

字段：

- 第三方打款单号（选填）
- 处理备注（选填）

结果：

- 提现状态由打款中改为打款成功。
- 已提现金额增加。
- 提现冻结金额扣减。
- 发送提现成功消息。

#### 标记打款失败

字段：

- 失败原因（必填）
- 处理备注（选填）

结果：

- 提现状态由打款中改为打款失败。
- 冻结金额退回可提现金额。
- 发送提现失败消息。

### 14.5 个税说明

- 达人端提现页保留个税申报说明入口。
- 个税由第三方结算平台处理。
- 后台只记录提现金额、账户、状态和结算通道处理结果。

---

## 15. 消息通知管理

### 15.1 页面目标

管理系统通知、业务状态通知和运营公告。第一版可先做站内消息，不强依赖短信或 App Push。

### 15.2 消息类型

| 类型 | 触发场景 | 接收人 |
|---|---|---|
| 关键词/别名审核通过 | 广告主同步关键词通过 | 达人 |
| 关键词/别名驳回 | 广告主同步关键词/别名驳回 | 达人 |
| 企微群创建成功 | 群接口创建成功 | 达人 |
| 企微群创建失败 | 群接口创建失败或超时 | 达人 |
| 项目暂停 | 达人已参与项目被暂停 | 相关达人 |
| 项目下架 | 达人已参与项目被下架 | 相关达人 |
| 项目规则变更 | 价格规则、项目说明、订单结算等关键规则变更 | 相关达人 |
| 作品回填成功 | 达人提交作品回填成功 | 达人 |
| 作品违规 / 无效提醒 | 后续扩展 | 达人 |
| 收益结算 | 批次确认，收益进入可提现 | 达人 |
| 提现状态变化 | 提现成功或失败 | 达人 |
| 系统公告 | 平台公告 | 全部或指定达人 |
| 活动通知 | 活动项目、临时奖励 | 指定项目达人或全部达人 |
| 合规要求更新 | 规则和风控要求更新 | 全部或指定达人 |

### 15.3 消息模板字段

| 字段 | 必填 | 说明 |
|---|---:|---|
| 模板名称 | 是 | 后台识别 |
| 消息类型 | 是 | 从消息类型中选择 |
| 标题 | 是 | 站内消息标题 |
| 内容 | 是 | 支持变量 |
| 跳转类型 | 否 | 项目详情 / 我的项目 / 数据页 / 提现记录等 |
| 状态 | 是 | 启用 / 停用 |

### 15.4 系统公告

字段：

- 公告标题
- 公告内容
- 接收范围：全部达人 / 指定项目达人 / 指定达人
- 生效时间
- 失效时间
- 状态：草稿 / 已发布 / 已下线

---

## 16. 运营配置

### 16.1 项目分类

默认分类：

- 推荐
- 婚恋
- 小说
- 短剧
- 漫剧
- 网盘
- AI
- 泛应用
- 游戏
- 知识

说明：

- “推荐”不是项目分类字段，而是首页推荐聚合 Tab。
- 后台标记为推荐的项目显示在达人端首页推荐分类。
- 推荐用于前期项目数量较少时填充首页内容，提升展示效果和用户体验。

### 16.2 首页推荐与排序

| 字段 | 说明 |
|---|---|
| 是否推荐 | 是 / 否 |
| 推荐排序权重 | 数值越大越靠前 |
| 分类排序权重 | 数值越大越靠前 |
| 项目状态 | 只有投放中才展示 |

### 16.3 素材 / 教程 / 活动入口

第一版在项目详情中保留入口，不做完整管理。后续可扩展：

- 素材列表
- 视频教程
- 项目活动
- 活动价格
- 新手教程

---

## 17. 系统管理与日志

### 17.1 后台账号

字段：

- 姓名
- 手机号
- 登录账号
- 角色
- 状态：启用 / 停用
- 创建时间
- 最近登录时间

### 17.2 角色权限

- 角色名称
- 权限范围
- 状态
- 备注

### 17.3 操作日志

记录范围：

- 登录 / 退出
- 新建 / 编辑广告主
- 新建 / 编辑项目
- 项目上线 / 暂停 / 下架
- 达人禁用 / 启用
- 结算批次确认 / 驳回
- 提现处理
- 消息发布
- 系统配置变更

日志字段：

| 字段 | 说明 |
|---|---|
| 操作人 | 后台账号 |
| 操作模块 | 项目、结算、提现等 |
| 操作对象 | 对象 ID 和名称 |
| 操作类型 | 新增、编辑、状态变更等 |
| 操作前 | 关键字段快照 |
| 操作后 | 关键字段快照 |
| 操作时间 | 时间戳 |
| IP | 操作 IP |
| 备注 | 操作备注 |

---

## 18. 核心接口与数据来源

### 18.1 接口配置原则

第一版后台在项目中只保留接口配置入口，不做细字段配置。

后续接口配置可扩展：

- 接口地址
- 请求方式
- 鉴权方式
- 密钥
- 签名规则
- 参数映射
- 回调地址
- 测试连接
- 调用日志

### 18.2 暖暖 API 推送推广数据

建议平台接收字段：

| 字段 | 必填 | 说明 |
|---|---:|---|
| source | 是 | 数据来源，如 nuannuan |
| event_id | 是 | 广告主侧唯一事件 ID |
| project_code | 否 | 项目编码，如广告主可提供 |
| group_id | 条件必填 | 群 ID |
| qrcode_id | 条件必填 | 群二维码 ID |
| event_type | 是 | 行为类型：拉新、拉活、拉旧、充值 |
| event_time | 是 | 行为发生时间 |
| quantity | 否 | 数量，默认 1 |
| amount | 否 | 充值金额等 |
| user_hash | 否 | 用户标识脱敏值，用于去重 |
| raw_data | 否 | 原始数据摘要或存储引用 |

### 18.3 API 返回

成功：

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "received": true
  }
}
```

失败：

```json
{
  "code": 400,
  "message": "invalid qrcode_id"
}
```

### 18.4 处理规则

- 先校验数据格式。
- 再做幂等去重。
- 再校验项目、达人、群或关键词等关联字段。
- 再按项目结算规则计算。
- 成功后生成推广明细和收益订单。
- 失败进入处理失败记录。

---

## 19. 表单校验规则

### 19.1 通用校验

| 字段类型 | 校验规则 |
|---|---|
| 手机号 | 中国大陆手机号格式 |
| 金额 | 大于等于 0，最多两位小数 |
| 比例 | 0-100，可保留两位小数 |
| URL | http/https 链接格式 |
| 文本 | 按字段限制长度，去除首尾空格 |
| 排序权重 | 整数，默认 0 |
| 图片 | png/jpg/jpeg，大小限制按技术实现配置 |

### 19.2 项目表单校验

- 项目名称必填，2-50 字。
- 项目必须关联启用状态的广告主。
- 项目上线前必须至少配置一条启用的结算规则。
- 项目上线前必须上传 Icon。
- 首页标签单个不超过 12 字，数量建议不超过 6 个。
- 订单结算说明、特别注意可为空，但建议上线前配置。

### 19.3 奖励规则校验

- CPA 类型必须填写结算单价。
- CPS / 充值分佣必须填写分佣比例。
- 同一项目内奖励名称建议不重复。
- 已产生收益订单的奖励规则修改时，需要记录规则版本。

### 19.4 作品回填校验

- 作品链接必填且格式合法。
- 同达人、同项目、同作品链接不可重复提交。
- 项目非投放中不可提交。
- 达人禁用不可提交。

### 19.5 提现处理校验

- 标记打款失败必须填写失败原因。
- 标记打款成功可填写第三方流水号。
- 提现申请处理后不可重复处理。

---

## 20. MVP 验收场景

### 20.1 项目创建与上线

1. 运营新建广告主档案。
2. 运营新建拉群类项目 AI 红娘暖暖。
3. 配置首页标签、推荐权重、奖励规则和订单结算说明。
4. 保存草稿成功。
5. 提交待上线成功。
6. 手动上线成功。
7. 达人端首页展示该项目。

### 20.2 拉群项目推广数据结算

1. 达人参与 AI 红娘暖暖。
2. 达人填写群名称，申请企微群。
3. 项目方接口返回群 ID / 群二维码 ID / 二维码。
4. 后台群管理可查看群记录。
5. 暖暖 API 推送推广数据。
6. 系统校验群二维码 ID 等关联字段，生成推广明细。
7. 系统按奖励规则生成收益订单。
8. 系统生成待确认结算批次。
9. 财务确认批次。
10. 达人钱包可提现金额增加。

### 20.3 关键词项目审核结果同步

1. 达人参与关键字类项目。
2. 达人提交关键词。
3. 后台关键词列表显示记录。
4. 广告主审核关键词。
5. 审核结果通过接口同步到平台。
6. 后台显示审核通过或已驳回。
7. 达人收到关键词审核消息。

### 20.4 作品回填台账

1. 达人在我的项目内点击发布回填。
2. 填写作品平台和作品链接。
3. 系统校验链接格式和重复提交。
4. 提交成功后后台回填列表可见。
5. 运营可按筛选条件导出 CSV / Excel。

### 20.5 提现处理

1. 达人发起提现。
2. 后台提现申请列表出现处理中记录。
3. 财务标记打款成功。
4. 提现状态更新为打款成功。
5. 达人已提现金额增加，可提现金额扣减。
6. 达人收到提现成功消息。

### 20.6 达人禁用

1. 运营或风控禁用达人。
2. 达人仍可登录查看历史数据。
3. 达人点击参与项目时被拦截。
4. 达人点击新增关键词/群时被拦截。
5. 达人点击发布回填时被拦截。
6. 达人点击提现时被拦截。

---

## 21. 后续待确认事项

以下事项不阻塞 MVP，但上线前建议继续确认：

1. 暖暖 API 推广数据字段的最终协议、签名方式和幂等字段。
2. 群申请接口是实时返回二维码，还是异步创建后回调。
3. 关键词审核结果同步是广告主主动推送，还是平台定时拉取。
4. 禁用达人后，禁用前已产生但未确认的待结算收益是否继续结算。
5. 结算批次按日、按项目、按广告主还是按广告主推送批次生成。
6. 提现打款失败后的再次提现规则。
7. 作品回填数据给广告主的方式：后台导出、接口推送或广告主后台查看。
8. 项目预算、消耗预警和到期提醒是否进入第二版。
9. 素材、教程、活动内容管理的具体字段。
10. 后台是否需要审批流，例如项目上线审批、结算确认复核。

---

## 22. 数据对象草稿

### 22.1 advertiser 广告主

- id
- advertiser_name
- company_name
- contact_name
- contact_phone
- contact_wechat
- data_callback_method
- data_integration_remark
- settlement_remark
- status
- created_at
- updated_at

### 22.2 project 项目

- id
- advertiser_id
- project_name
- project_type
- category
- icon_url
- description
- detail_content
- homepage_tags
- is_recommended
- category_sort
- recommend_sort
- status
- need_whitelist
- need_work_report
- created_at
- updated_at
- online_at
- paused_at
- offline_at

### 22.3 project_reward_rule 奖励规则

- id
- project_id
- reward_name
- settlement_type
- behavior_type
- unit_price
- commission_rate
- unit
- enabled
- sort
- rule_version
- created_at
- updated_at

### 22.4 creator 达人

- id
- nickname
- avatar_url
- phone
- realname_status
- realname_masked
- id_card_masked
- account_status
- total_income
- withdrawn_amount
- available_amount
- created_at
- last_login_at

### 22.5 creator_project 达人项目关系

- id
- creator_id
- project_id
- join_status
- whitelist_status
- joined_at
- invalid_at

### 22.6 keyword_record 关键词记录

- id
- creator_id
- project_id
- keyword
- content_id
- content_name
- video_type
- status
- audit_feedback
- expired_at
- created_at
- updated_at

### 22.7 group_record 群记录

- id
- creator_id
- project_id
- group_name
- group_id
- qrcode_id
- qrcode_url
- status
- fail_reason
- created_at
- updated_at

### 22.8 work_report 作品回填

- id
- creator_id
- project_id
- object_type
- object_id
- platform
- work_url
- remark
- export_status
- created_at

### 22.9 promotion_data_record 推广记录

- id
- source
- source_event_id
- project_id
- creator_id
- object_type
- object_id
- behavior_type
- quantity
- amount
- event_time
- received_at
- process_status
- fail_reason

### 22.10 income_order 收益订单

- id
- order_no
- promotion_data_id
- creator_id
- project_id
- reward_rule_id
- behavior_type
- quantity
- amount
- income_amount
- status
- settlement_batch_id
- created_at

### 22.11 settlement_batch 结算批次

- id
- batch_no
- advertiser_id
- project_id
- order_count
- creator_count
- total_amount
- status
- confirm_user_id
- confirm_remark
- created_at
- confirmed_at

### 22.12 withdraw_order 提现单

- id
- withdraw_no
- creator_id
- amount
- account_type
- account_snapshot
- status
- third_party_no
- fail_reason
- created_at
- processed_at

---

## 23. 页面清单优先级

### P0：MVP 必须有

- 登录
- 工作台
- 广告主列表 / 新建 / 编辑 / 详情
- 项目列表 / 新建 / 编辑 / 详情 / 上线暂停下架
- 达人列表 / 达人详情 / 禁用启用
- 关键词记录列表 / 详情
- 群记录列表 / 详情
- 作品回填列表 / 详情 / 导出
- 推广明细 / API 接收记录 / 处理失败记录
- 收益订单 / 结算批次 / 批次确认驳回
- 钱包流水 / 提现申请 / 提现处理
- 消息模板 / 系统公告
- 后台账号 / 角色权限 / 操作日志

### P1：上线后增强

- 接口配置详细字段
- 素材 / 教程 / 活动完整管理
- 推广数据处理失败手动修正与重新处理
- 第三方结算平台回调自动更新提现状态
- 项目预算与消耗预警
- 审批流
- 广告主后台

---

## 24. 与达人端的对应关系

| 达人端页面/动作 | 后台对应模块 |
|---|---|
| 首页项目列表 | 项目管理、首页推荐配置、项目分类配置 |
| 项目详情 | 项目详情配置、奖励规则、订单结算说明、风控说明 |
| 参与项目 | 项目参与管理、群管理、关键词管理 |
| 创建企微群 | 群管理、接口接收记录 |
| 设置关键词 | 关键词/别名管理、广告主审核结果同步 |
| 我的项目 | 项目参与管理、项目状态、关键词/群记录 |
| 发布回填 | 作品回填管理 |
| 数据页收益 | 推广数据、收益订单、结算批次 |
| 钱包提现 | 钱包流水、提现申请 |
| 实名认证 | 达人管理实名状态 |
| 消息通知 | 消息通知管理 |


## 25. P0 原型补充说明（2026-09-02）

### 25.1 统一列表能力

后台 P0 页面统一补齐搜索、筛选、分页和空状态：

- 搜索：支持按当前表格核心字段模糊搜索。
- 筛选：项目类数据默认支持项目筛选；状态类数据默认支持状态筛选。
- 分页：原型展示总条数、每页条数、上一页 / 下一页。MVP 可先按服务端分页实现。
- 空状态：筛选无结果时展示“暂无数据”。

### 25.2 P0 已覆盖模块

- 登录页：后台账号、密码、验证码登录。
- 项目管理：长表单分区、保存草稿、上线 / 暂停 / 下架、详情抽屉。
- 推广数据：推广明细、API 接收记录、处理失败记录，前期以暖暖 API 推送为主。
- 钱包提现：待处理、打款中、打款成功、打款失败、已驳回；支持通过、驳回、标记成功、标记失败和详情查看。
- 消息通知：系统通知、项目通知、审核通知、结算通知、提现通知。




---

## 26. 后台 P0 验收清单

### 26.1 全局验收标准

| 验收项 | 标准 |
|---|---|
| 页面打开 | `admin-prototype/index.html` 可直接打开，不白屏 |
| 左侧菜单 | 所有一级菜单点击后均可切换页面 |
| 页面风格 | 使用 shadcn/ui 风格，整体为黑白灰后台风格，语义色只用于状态区分 |
| Tab 交互 | 页面内 Tab 可点击切换；超过宽度时换行，不横向滚动 |
| 列表能力 | P0 列表均具备搜索、必要筛选、分页、空状态 |
| 详情能力 | 关键业务对象支持查看详情或详情抽屉 |
| 高风险操作 | 项目上下线、结算确认、提现处理、账号权限变更必须二次确认并记录日志 |
| 数据口径 | 广告主处理事项只展示同步结果，不在平台后台做广告主审核动作 |

### 26.2 页面级验收清单

| 模块 | 页面/功能 | P0 验收点 | 状态 |
|---|---|---|---|
| 登录 | 后台登录页 | 账号/手机号、密码、验证码登录；登录态本地保持，页面刷新不要求重新登录 | 已覆盖 |
| 工作台 | 指标与待办 | 展示核心指标；待办可跳转到对应模块 | 已覆盖 |
| 广告主管理 | 列表/新增/编辑/详情 | 支持搜索、分页、空状态；接口配置留入口 | 已覆盖 |
| 项目管理 | 列表/新建/编辑/详情 | 长表单分区、保存草稿、上线/暂停/下架、详情抽屉 | 已覆盖 |
| 达人管理 | 达人列表/详情 | 展示实名、账号状态、收入、可提现；支持搜索筛选 | 已覆盖 |
| 项目参与 | 达人项目参与记录 | 展示参与状态、项目状态、加白、对象数、回填数 | 已覆盖 |
| 关键词记录 | 关键词/别名记录 | 展示广告主审核结果、反馈、预计过期、回填数 | 已覆盖 |
| 群记录 | 企微群记录 | 展示群申请结果、二维码ID、失败原因；支持下载二维码 | 已覆盖 |
| 作品回填 | 回填记录 | 展示平台、作品链接、达人、项目、推广对象；支持导出入口 | 已覆盖 |
| 推广数据 | 明细/API接收/失败记录 | 展示暖暖 API 推送、幂等事件、处理失败和重新处理入口 | 已覆盖 |
| 收益订单 | 订单列表 | 展示订单号、项目、规则、数量、金额、状态、批次 | 已覆盖 |
| 结算批次 | 批次列表 | 展示批次号、广告主、项目、金额、确认状态 | 已覆盖 |
| 钱包提现 | 提现申请/钱包流水 | 支持待处理、打款中、打款成功、打款失败、已驳回及处理弹窗 | 已覆盖 |
| 消息通知 | 消息列表 | 明确系统通知、项目通知、审核通知、结算通知、提现通知 | 已覆盖 |
| 运营配置 | 分类/Banner/内容入口 | 首页分类、推荐分类、Banner 和内容入口预留 | 已覆盖 |
| 系统管理 | 账号/角色/日志 | 后台账号、角色权限、操作日志入口 | 已覆盖 |

### 26.3 P0 通过条件

P0 版本进入开发评审前，需要满足以下条件：

1. 所有 P0 菜单点击不白屏。
2. 项目、达人、群记录、关键词、作品回填、推广数据、订单、结算、提现均有示例数据。
3. 关键列表具备搜索、筛选、分页和空状态。
4. 项目上线 / 暂停 / 下架、提现处理等操作均有确认反馈。
5. PRD 中已明确广告主处理和平台处理边界。
6. PRD 中已明确提现、推广数据、结算的核心状态流转。

---

## 27. 操作日志规则

### 27.1 记录原则

- 只要会改变业务状态、资金状态、权限状态或对外展示内容，都必须记录操作日志。
- 日志不可由普通后台用户删除或修改。
- 日志至少保留 180 天；财务、提现、结算相关日志建议长期保留。
- 系统自动处理的数据也要记录系统日志，操作人可记为“系统”。

### 27.2 必须记录的动作

| 模块 | 动作 | 操作前后状态 |
|---|---|---|
| 登录 | 登录成功、登录失败、退出登录 | 登录状态、失败原因 |
| 广告主管理 | 新增、编辑、停用/恢复合作 | 广告主状态、数据回传方式 |
| 项目管理 | 新建项目、保存草稿、编辑配置 | 配置变更摘要 |
| 项目管理 | 上线、暂停、下架 | 项目状态：待上线/投放中/已暂停/已下架 |
| 达人管理 | 禁用、恢复、限制提现、解除限制 | 达人账号状态、提现限制状态 |
| 关键词记录 | 同步广告主审核结果、删除/进入回收站 | 关键词状态、审核反馈 |
| 群记录 | 接收创建结果、创建失败、二维码失效 | 群状态、失败原因 |
| 作品回填 | 新增回填、导出回填记录 | 回填记录ID、导出条件 |
| 推广数据 | API 接收、生成订单、处理失败、重新处理 | 处理状态、失败原因 |
| 收益订单 | 订单生成、订单作废、进入批次 | 订单状态、批次号 |
| 结算批次 | 生成批次、确认入账、驳回批次 | 批次状态、金额 |
| 钱包提现 | 通过提现、驳回提现、标记成功、标记失败 | 提现状态、第三方单号、原因 |
| 消息通知 | 新建、编辑、发送、撤回 | 消息状态、发送范围 |
| 系统管理 | 新增账号、停用账号、修改角色权限 | 账号状态、权限范围 |

### 27.3 日志字段

| 字段 | 说明 |
|---|---|
| 日志ID | 系统生成唯一ID |
| 操作人ID | 后台账号ID；系统任务记为 system |
| 操作人姓名 | 后台显示名称 |
| 操作角色 | 平台运营 / 审核风控 / 财务 / 管理员 |
| 操作模块 | 项目管理、提现管理等 |
| 操作动作 | 上线项目、通过提现等 |
| 操作对象类型 | project / creator / withdrawal / settlement 等 |
| 操作对象ID | 对应业务主键 |
| 操作前状态 | 可为空；涉及状态变更时必填 |
| 操作后状态 | 可为空；涉及状态变更时必填 |
| 操作备注 | 驳回原因、失败原因、处理说明等 |
| IP | 操作来源IP |
| User Agent | 浏览器和设备信息 |
| 操作时间 | 精确到秒 |

### 27.4 日志查询

P0 至少支持：

- 按操作人查询。
- 按模块查询。
- 按动作查询。
- 按对象ID查询。
- 按时间范围查询。

---

## 28. 权限控制与风控校验规则

### 28.1 角色权限收口

| 角色 | 可操作 | 不可操作 |
|---|---|---|
| 平台运营 | 广告主档案、项目配置、项目上线/暂停/下架、运营配置、查看推广数据 | 不可处理提现、不可确认财务结算、不可修改系统权限 |
| 审核/风控 | 查看达人、项目参与、关键词、群记录、作品回填、推广数据异常；可限制达人账号或提现 | 不可处理提现打款、不可确认结算批次、不可上线项目 |
| 财务 | 查看收益订单、结算批次、钱包流水、提现申请；可确认结算和处理提现 | 不可编辑项目配置、不可修改运营首页配置、不可修改系统权限 |
| 管理员 | 全部后台权限、账号角色权限管理 | 不建议直接执行日常财务操作，需保留操作日志 |

### 28.2 权限校验位置

- 菜单访问：无权限的菜单不展示或展示后不可进入。
- 页面按钮：无权限的操作按钮不展示或置灰。
- 接口层：所有新增、编辑、状态变更、导出、打款处理接口必须二次校验权限。
- 数据范围：财务类、达人隐私类数据按角色控制可见字段和导出范围。

### 28.3 提现风控校验

达人发起提现和后台处理提现时，P0 至少校验：

| 校验项 | 规则 |
|---|---|
| 可提现余额 | 提现金额不得大于当前可提现金额 |
| 最低提现门槛 | 低于平台配置的最低提现金额时不可提交 |
| 实名状态 | 未实名不可提现 |
| 收款账户 | 必须选择已绑定的银行卡 / 支付宝 / 微信账户 |
| 账户实名一致 | 收款账户实名应与达人实名一致；不一致可打款失败或后台驳回 |
| 达人状态 | 禁用、限制提现状态不可提现 |
| 重复提现 | 同一达人存在待处理或打款中提现单时，不允许重复发起，或按配置限制 |
| 单日限制 | 可配置单日提现次数、单日提现金额上限 |
| 金额精度 | 提现金额保留到分，不允许负数、0 或非法字符 |
| 个税说明 | 达人端提现页保留个税申报说明入口 |

### 28.4 推广数据异常校验

推广数据入库时，P0 至少校验：

| 异常 | 处理方式 |
|---|---|
| eventId 重复 | 按广告主 + 项目 + eventId 做幂等，不重复生成订单 |
| 缺少项目ID | 标记处理失败，记录失败原因 |
| 找不到达人 | 标记处理失败，不生成订单 |
| 找不到群或关键词/别名 | 标记处理失败，不生成订单 |
| 项目非投放中 | 可记录推广数据，但默认不生成有效收益订单，进入异常列表 |
| 推广对象已删除 | 进入异常列表，由运营查看 |
| 金额或数量异常 | 金额为负、数量为0或格式错误时处理失败 |
| 字段格式错误 | API 接收记录保留原始请求摘要，便于排查 |

### 28.5 结算风控校验

- 只有有效推广数据生成的收益订单可进入结算批次。
- 同一收益订单不可重复进入多个有效批次。
- 批次确认前需校验订单数量、订单金额、达人数量、广告主和项目归属。
- 批次确认后生成达人钱包入账流水。
- 批次驳回后不直接入账，需记录驳回原因。
- 已确认入账批次原则上不可删除，只能通过后续调整单或冲正流程处理；调整单 P0 可先不做。

---

## 29. 达人端动作与后台数据链路

本章节用于开发联调时核对：达人端每一个关键动作，会在后台产生或更新哪些业务数据。P0 不做广告主后台，广告主处理结果通过接口或人工同步后在平台后台展示。

### 29.1 链路总览

| 达人端动作 | 前置条件 | 后台产生/更新数据 | 处理方 | 后台查看位置 |
|---|---|---|---|---|
| 达人手机号注册 | 手机号和密码提交并校验通过 | 达人账号、注册记录 | 平台系统 | 达人管理 / 系统日志 |
| 达人手机号密码登录 | 手机号与密码校验通过 | 达人登录记录 | 平台系统 | 达人管理 / 系统日志 |
| 达人手机号验证码登录 | 手机号与验证码校验通过 | 达人登录记录 | 平台系统 | 达人管理 / 系统日志 |
| 点击参与拉群类项目 | 项目为投放中 | 参与关系、群申请记录 | 平台创建项目参与记录；广告主/项目方接口创建群 | 项目参与 / 群记录 |
| 暖暖填写群名称并提交 | 项目为投放中 | 群记录：创建中/已创建/创建失败、二维码ID | 暖暖 API 实时返回 | 群记录 |
| 点击参与关键词/别名类项目 | 项目为投放中 | 参与关系、关键词记录 | 广告主审核关键词 | 项目参与 / 关键词记录 |
| 提交关键词/别名 | 字段校验通过 | 关键词记录：审核中 | 广告主处理审核 | 关键词记录 |
| 广告主返回关键词审核结果 | 存在关键词记录 | 关键词状态：审核通过/已驳回、审核反馈、预计过期时间 | 广告主接口或平台同步 | 关键词记录 |
| 达人发布回填作品链接 | 项目要求回填；作品链接格式通过 | 作品回填记录、推广对象回填数 | 平台记录，不做前置审核 | 作品回填 / 关键词记录 / 群记录 |
| 暖暖 API 推送有效转化 | eventId 未重复；群记录关联字段有效 | API 接收记录、推广明细、收益订单 | 平台系统自动处理 | 推广数据 / 收益订单 |
| 关键字类项目 API 推送推广数据 | eventId 未重复；关键词/别名关联字段有效 | API 接收记录、推广明细、收益订单 | 平台系统自动处理 | 推广数据 / 收益订单 |
| 推广数据处理失败 | 项目、达人、群/关键词/别名关联字段缺失、金额数量异常等 | 推广数据处理失败记录，不生成收益订单 | 平台运营/技术排查 | 推广数据 - 处理失败记录 |
| 生成结算批次 | 存在待结算订单 | 结算批次、批次明细 | 平台财务/系统 | 结算批次 |
| 广告主确认或平台确认入账 | 批次金额确认 | 收益订单状态、达人钱包入账流水 | 财务 | 结算批次 / 钱包流水 |
| 达人申请提现 | 已实名、有收款账户、余额满足、无提现限制 | 提现申请、钱包冻结流水 | 达人提交；财务处理 | 钱包提现 |
| 财务通过提现 | 风控校验通过 | 提现状态：打款中、操作日志 | 财务 | 钱包提现 / 操作日志 |
| 第三方打款成功/失败 | 存在打款中提现单 | 提现状态、钱包流水、失败原因 | 财务或系统回调 | 钱包提现 / 钱包流水 |

### 29.2 拉群类项目链路：AI红娘暖暖

1. 达人在首页进入 AI红娘暖暖项目详情。
2. 点击参与项目，进入填写群名称页面。
3. 提交后平台创建项目参与记录，并调用暖暖接口申请企微群。
4. 暖暖接口实时返回群二维码时，后台新增群记录并标记为“已创建”。
5. 如果接口超时或失败，群记录标记为“创建失败”，记录失败原因。
6. 达人保存二维码后发布推广视频；如项目要求回填，则达人在对应群卡片上提交作品链接。
7. 用户进群后，在群内小程序完善资料即计为有效。
8. 暖暖 API 推送有效拉新、红豆充值佣金等推广数据事件。
9. 平台按 eventId 幂等校验，并根据广告主回传的关联字段生成收益订单。
10. 后续进入结算批次和达人钱包。

### 29.3 关键字类项目链路：红果短剧 / 番茄小说

1. 达人在首页进入项目详情。
2. 点击参与项目，提交关键词/别名；番茄小说需填写书籍 ID、书籍名称、推广视频类型等项目特定字段。
3. 后台新增关键词记录，状态为“审核中”。
4. 关键词审核由广告主处理，平台后台只展示广告主同步的审核结果。
5. 审核通过后达人获得对应关键词的推广权限。
6. 达人发布视频后及时回填作品链接。
7. 广告主按关键词/别名识别搜索、点击或转化，并向平台推送推广数据或由平台按接口拉取。
8. 平台完成幂等、项目状态、达人、关键词、金额数量等校验后生成收益订单。
9. 后续进入结算批次和达人钱包。

### 29.4 后台原型新增可视化点

| 模块 | 新增内容 | 目的 |
|---|---|---|
| 推广数据 | 新增“异常规则”页签 | 让开发明确推广数据入库失败、幂等和不生成订单的判断口径 |
| 钱包提现 | 新增提现风控校验卡片；提现详情内同步展示校验结果 | 让财务处理动作前可以看到实名、余额、收款账户、重复提现、限制提现等检查 |
| 系统管理 | 新增“权限矩阵”页签 | 用后台页面形式承接 PRD 角色权限边界 |
| 系统管理 | 操作日志增加操作人、模块、动作、时间、对象ID筛选，并展示操作前/后状态 | 满足 P0 操作追溯和高风险动作审计需求 |

### 29.5 开发联调注意事项

- 广告主审核关键词、广告主/项目方创建群，不在平台后台做人工审核动作。
- 平台后台应能查看广告主同步结果、失败原因和处理状态。
- 项目只有“投放中”才在达人端首页展示。
- 项目状态影响达人端新增群/新增关键词入口可用性。
- 回填不做前置审核，但需要记录达人、项目、推广对象、平台、作品链接、提交时间。
- 推广数据必须先落 API 接收记录，再处理为推广明细和收益订单。
- 提现状态变更、项目上下线、权限调整、结算确认必须写操作日志。

---

## 30. P0 数据字段口径表

> 说明：本章节用于开发建表、接口返回和后台列表字段对齐。字段类型为产品口径建议，实际数据库类型可由开发根据技术方案调整。

### 30.1 广告主表 advertiser

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| advertiser_id | string | 是 | 广告主唯一ID | A001 |
| advertiser_name | string | 是 | 广告主名称 | 暖暖科技 |
| contact_name | string | 否 | 商务/运营联系人 | 张悦 |
| contact_phone | string | 否 | 联系人手机号 | 18600001111 |
| data_callback_method | enum | 是 | 数据回传方式：API推送、平台拉取、人工导入预留 | API推送 |
| cooperation_status | enum | 是 | 合作中、待联调、暂停合作 | 合作中 |
| interface_config_id | string | 否 | 接口配置ID；P0 只留入口 | IFC001 |
| remark | string | 否 | 合作、结算、接口备注 | - |
| created_at | datetime | 是 | 创建时间 | 2026-09-02 09:00 |
| updated_at | datetime | 是 | 更新时间 | 2026-09-02 09:20 |

### 30.2 项目表 project

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| project_id | string | 是 | 项目唯一ID | P1001 |
| project_name | string | 是 | 项目名称 | AI红娘暖暖 |
| advertiser_id | string | 是 | 所属广告主ID | A001 |
| advertiser_name | string | 是 | 所属广告主名称，冗余用于列表展示 | 暖暖科技 |
| task_type | enum | 是 | 拉群类、关键字类 | 拉群类 |
| category | enum | 是 | 推荐、婚恋、小说、短剧、漫剧、网盘、AI、泛应用、游戏、知识 | 婚恋 |
| project_tags | array | 否 | 运营选择标签；价格标签由 price_rules 自动生成 | 官方直签、新手推荐 |
| is_recommended | boolean | 是 | 是否进入首页推荐分类 | true |
| sort_weight | number | 是 | 排序权重，越大越靠前 | 98 |
| project_status | enum | 是 | 草稿、待上线、投放中、已暂停、已下架 | 投放中 |
| need_report | boolean | 是 | 是否要求作品回填 | true |
| project_desc | richtext | 是 | 项目说明 | 用户进群后完善资料计为有效 |
| project_desc_visible | boolean | 是 | 项目说明是否在达人端展示 | true |
| report_desc | richtext | 否 | 回填说明；不需要回填时默认“该项目不需要回填” | 发布视频后及时回填作品链接 |
| report_desc_visible | boolean | 是 | 回填说明是否在达人端展示 | true |
| price_rules | array | 是 | 表格维护；任务要求、对接价格、奖励价格、展示标签开关 | 有效拉新量 / 对接10元 / 奖励8元 / 展示 |
| settlement_desc | richtext | 是 | 订单结算说明 | 日出日结，预计2-3天内到账 |
| settlement_desc_visible | boolean | 是 | 订单结算说明是否在达人端展示 | true |
| risk_notice | richtext | 否 | 特别注意说明 | 禁止炸群、地推和刷量 |
| risk_notice_visible | boolean | 是 | 特别注意说明是否在达人端展示 | true |
| api_config_status | enum | 是 | 接口配置状态：已配置、未配置 | 已配置 |
| material_config_status | enum | 是 | 素材配置状态：已配置、未配置 | 已配置 |
| tutorial_config_status | enum | 是 | 教程配置状态：已配置、未配置 | 未配置 |
| created_by | string | 是 | 创建后台账号ID | ADM001 |
| created_at | datetime | 是 | 创建时间 | 2026-09-01 18:30 |
| updated_at | datetime | 是 | 更新时间 | 2026-09-02 10:15 |

### 30.3 达人表 creator

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| creator_id | string | 是 | 达人唯一ID | U10001 |
| nickname | string | 是 | 达人昵称 | 小鹿剪辑 |
| phone | string | 是 | 登录手机号 | 15700000914 |
| avatar_url | string | 否 | 头像地址 | - |
| real_status | enum | 是 | 未实名、已实名 | 已实名 |
| real_name_masked | string | 否 | 脱敏姓名，用于后台展示 | 张* |
| id_card_masked | string | 否 | 脱敏身份证号 | 110***********1234 |
| account_status | enum | 是 | 正常、禁用、限制提现 | 正常 |
| joined_project_count | number | 是 | 已参与项目数 | 3 |
| total_income | decimal | 是 | 总收入 | 18420.80 |
| withdrawn_amount | decimal | 是 | 已提现金额 | 14211.50 |
| available_amount | decimal | 是 | 可提现金额 | 4209.30 |
| last_login_at | datetime | 否 | 最近登录时间 | 2026-09-02 10:21 |
| created_at | datetime | 是 | 注册时间 | 2026-08-20 12:00 |

### 30.4 达人项目参与表 creator_project_relation

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| relation_id | string | 是 | 项目参与ID | J1001 |
| creator_id | string | 是 | 达人ID | U10001 |
| project_id | string | 是 | 项目ID | P1001 |
| task_type | enum | 是 | 拉群类、关键字类 | 拉群类 |
| project_status | enum | 是 | 冗余项目状态，用于列表展示 | 投放中 |
| join_status | enum | 是 | 待投放、已参与、已暂停、已失效 | 已参与 |
| whitelist_status | enum | 是 | 未加白、审核中、已加白、加白失败 | 已加白 |
| object_count | number | 是 | 群数量或关键词/别名数量 | 2 |
| report_count | number | 是 | 回填作品数量 | 6 |
| joined_at | datetime | 是 | 参与时间 | 2026-08-25 12:20 |

### 30.5 群记录表 group_record

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| group_record_id | string | 是 | 群记录ID | G1001 |
| creator_id | string | 是 | 达人ID | U10001 |
| project_id | string | 是 | 项目ID | P1001 |
| group_name | string | 是 | 达人填写的群名称 | AI红娘暖暖推广群-小鹿01 |
| advertiser_group_id | string | 否 | 广告主/项目方返回群ID | WXG20260902001 |
| qr_code_id | string | 否 | 群二维码ID | QR20260902001 |
| qr_code_url | string | 否 | 群二维码图片地址 | - |
| group_status | enum | 是 | 创建中、已创建、创建失败、删除 | 已创建 |
| fail_reason | string | 否 | 创建失败原因 | 广告主接口返回超时 |
| report_count | number | 是 | 该群回填作品数量 | 4 |
| deleted_at | datetime | 否 | 进入回收站时间 | - |
| created_at | datetime | 是 | 创建时间 | 2026-09-02 09:40 |

### 30.6 关键词记录表 keyword_record

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| keyword_id | string | 是 | 关键词记录ID | K1001 |
| creator_id | string | 是 | 达人ID | U10001 |
| project_id | string | 是 | 项目ID | P1002 |
| keyword | string | 是 | 关键词/别名 | 离婚后遇见真爱 |
| content_id | string | 否 | 书籍ID、剧集ID或资源ID | HG7788 |
| content_name | string | 否 | 书籍名称、剧集名称或资源名称 | 重启人生 |
| video_type | string | 否 | 推广视频类型 | 混剪解说 |
| audit_status | enum | 是 | 审核中、审核通过、已驳回、删除 | 审核通过 |
| audit_feedback | string | 否 | 广告主审核反馈 | 关键词与资源描述不一致 |
| expected_expired_at | date | 否 | 预计过期时间 | 2026-10-01 |
| report_count | number | 是 | 该关键词回填作品数量 | 3 |
| deleted_at | datetime | 否 | 进入回收站时间 | - |
| created_at | datetime | 是 | 创建时间 | 2026-08-27 09:20 |

### 30.7 作品回填表 work_report

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| report_id | string | 是 | 回填记录ID | R1001 |
| creator_id | string | 是 | 达人ID | U10001 |
| project_id | string | 是 | 项目ID | P1001 |
| object_type | enum | 是 | group、keyword | group |
| object_id | string | 是 | 关联群记录ID或关键词ID | G1001 |
| platform | enum | 是 | 抖音、快手、小红书、视频号、其他 | 抖音 |
| work_url | string | 是 | 作品链接 | https://v.douyin.com/abc001 |
| report_status | enum | 是 | 有效、无效、已同步广告主 | 有效 |
| exported_status | enum | 是 | 是否已导出或同步广告主 | 否 |
| remark | string | 否 | 备注 | 视频链接有效 |
| created_at | datetime | 是 | 回填时间 | 2026-09-02 11:01 |

### 30.8 推广数据表 promotion_data_record

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| promotion_data_id | string | 是 | 推广记录ID | AT202609020001 |
| source | string | 是 | 数据来源 | 暖暖 API |
| advertiser_id | string | 是 | 广告主ID | A001 |
| project_id | string | 是 | 项目ID | P1001 |
| event_id | string | 是 | 广告主侧事件ID，用于幂等 | EVT988001 |
| creator_id | string | 是 | 达人ID | U10001 |
| object_type | enum | 是 | group、keyword | group |
| object_id | string | 是 | 群记录ID或关键词/别名ID | G1001 |
| behavior_type | string | 是 | 有效拉新、有效拉活、有效拉旧、充值分佣等 | 有效拉新 |
| quantity | number | 是 | 数量 | 3 |
| amount | decimal | 是 | 推广金额 | 30.00 |
| process_status | enum | 是 | 接收成功、已生成订单、处理失败、幂等拦截 | 已生成订单 |
| fail_reason | string | 否 | 失败原因 | 群记录关联失败 |
| received_at | datetime | 是 | 接收时间 | 2026-09-02 09:01 |

### 30.9 收益订单表 income_order

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| order_id | string | 是 | 收益订单ID | SO20260902001 |
| promotion_data_id | string | 是 | 来源推广数据ID | AT202609020001 |
| creator_id | string | 是 | 达人ID | U10001 |
| project_id | string | 是 | 项目ID | P1001 |
| reward_rule_name | string | 是 | 奖励规则名称 | 有效拉新量10元 |
| quantity | number | 是 | 计费数量 | 3 |
| amount | decimal | 是 | 订单金额 | 30.00 |
| order_status | enum | 是 | 待结算、已入批次、已结算、已作废 | 待结算 |
| settlement_batch_id | string | 否 | 结算批次ID | B20260902001 |
| created_at | datetime | 是 | 订单生成时间 | 2026-09-02 09:03 |

### 30.10 结算批次表 settlement_batch

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| batch_id | string | 是 | 结算批次ID | B20260902001 |
| advertiser_id | string | 是 | 广告主ID | A001 |
| project_id | string | 否 | 项目ID；跨项目批次可为空 | P1001 |
| order_count | number | 是 | 订单数量 | 2 |
| creator_count | number | 是 | 达人数 | 1 |
| total_amount | decimal | 是 | 批次金额 | 45.00 |
| batch_status | enum | 是 | 待确认、已入账、已驳回 | 待确认 |
| confirmed_at | datetime | 否 | 确认时间 | - |
| created_at | datetime | 是 | 创建时间 | 2026-09-02 10:00 |

### 30.11 钱包流水表 wallet_ledger

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| ledger_id | string | 是 | 流水ID | FL20260902001 |
| creator_id | string | 是 | 达人ID | U10001 |
| ledger_type | enum | 是 | 结算入账、提现冻结、提现成功、提现失败解冻、调整 | 结算入账 |
| amount | decimal | 是 | 正数入账，负数扣减或冻结 | +45.00 |
| balance_after | decimal | 是 | 流水后余额 | 4209.30 |
| related_type | string | 否 | 关联业务类型 | settlement_batch |
| related_id | string | 否 | 关联业务ID | B20260902001 |
| created_at | datetime | 是 | 流水时间 | 2026-09-02 10:20 |

### 30.12 提现申请表 withdrawal_order

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| withdrawal_id | string | 是 | 提现单号 | WO20260902001 |
| creator_id | string | 是 | 达人ID | U10001 |
| creator_phone | string | 是 | 达人手机号，后台展示脱敏 | 157****0914 |
| account_type | enum | 是 | 银行卡、支付宝、微信 | 支付宝 |
| account_masked | string | 是 | 脱敏收款账户 | 支付宝 157****0914 |
| amount | decimal | 是 | 提现金额 | 1200.00 |
| fee_amount | decimal | 是 | 手续费 | 0.00 |
| withdrawal_status | enum | 是 | 待处理、打款中、打款成功、打款失败、已驳回 | 待处理 |
| third_trade_no | string | 否 | 第三方打款单号 | YZH202609010009 |
| fail_reason | string | 否 | 失败或驳回原因 | 收款账户实名信息不一致 |
| applied_at | datetime | 是 | 申请时间 | 2026-09-02 09:40 |
| processed_at | datetime | 否 | 处理时间 | - |

### 30.13 操作日志表 operation_log

| 字段 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| log_id | string | 是 | 日志ID | LOG202609020001 |
| operator_id | string | 是 | 操作人ID；系统任务为 system | ADM002 |
| operator_name | string | 是 | 操作人姓名 | 运营小王 |
| operator_role | string | 是 | 操作角色 | 平台运营 |
| module | string | 是 | 操作模块 | 项目管理 |
| action | string | 是 | 操作动作 | 上线项目 |
| object_type | string | 是 | 操作对象类型 | project |
| object_id | string | 是 | 操作对象ID | P1002 |
| before_status | string | 否 | 操作前状态 | 待上线 |
| after_status | string | 否 | 操作后状态 | 投放中 |
| remark | string | 否 | 操作备注 | - |
| ip | string | 否 | IP 或 API 来源 | 121.36.10.8 |
| user_agent | string | 否 | 浏览器/设备信息 | Chrome |
| created_at | datetime | 是 | 操作时间 | 2026-09-02 10:15 |

---

## 31. P0 接口清单

> 说明：本章节只定义接口边界和用途，不展开请求响应的完整字段。详细接口文档可在技术评审后由前后端补充。

### 31.1 达人端接口

| 模块 | 接口 | 方法 | 用途 | P0 说明 |
|---|---|---|---|---|
| 登录/注册 | `/api/app/auth/register` | POST | 手机号密码注册 | 请求 phone、password；返回 token 和达人基础信息 |
| 登录/注册 | `/api/app/auth/login` | POST | 手机号密码登录 | 请求 phone、password；返回 token 和达人基础信息 |
| 登录/注册 | `/api/app/auth/send-code` | POST | 发送登录验证码 | 请求 phone、scene=login；用于验证码登录 |
| 登录/注册 | `/api/app/auth/login-code` | POST | 手机号验证码登录 | 请求 phone、code；返回 token 和达人基础信息 |
| 首页 | `/api/app/projects` | GET | 获取首页项目列表 | 支持分类、推荐、分页 |
| 首页 | `/api/app/projects/{projectId}` | GET | 项目详情 | 返回项目说明、奖励规则、项目状态 |
| 参与项目 | `/api/app/projects/{projectId}/join` | POST | 创建项目参与记录 | 项目必须投放中 |
| 拉群 | `/api/app/projects/{projectId}/groups` | POST | 新增群申请 | 调用广告主/暖暖接口创建群 |
| 拉群 | `/api/app/groups/{groupId}` | GET | 查看群详情和二维码 | 用于创建成功页和我的项目 |
| 关键词/别名 | `/api/app/projects/{projectId}/keywords` | POST | 新增关键词/别名 | 提交后进入审核中 |
| 我的项目 | `/api/app/my/projects` | GET | 我的项目列表 | 展示项目状态、对象数量 |
| 我的项目 | `/api/app/my/objects` | GET | 群/关键词/别名列表 | 支持项目、状态、搜索、排序 |
| 回填 | `/api/app/work-reports` | POST | 提交作品回填 | 不做前置审核 |
| 回填 | `/api/app/work-reports` | GET | 作品列表 | 按项目、群/关键词/别名查看 |
| 数据 | `/api/app/data/summary` | GET | 收益统计 | 年度、今日结算、昨日预估 |
| 数据 | `/api/app/data/monthly` | GET | 月度明细 | 年月级联选择 |
| 我的 | `/api/app/me` | GET | 当前达人信息 | 未登录返回未登录状态 |
| 实名 | `/api/app/real-name` | POST | 提交实名认证 | P0 只做身份证号正则，不接验真 |
| 钱包 | `/api/app/wallet` | GET | 钱包信息 | 总收入、已提现、可提现 |
| 收款账户 | `/api/app/payment-accounts` | GET | 收款账户列表 | 提现页选择账户 |
| 收款账户 | `/api/app/payment-accounts` | POST | 新增收款账户 | 银行卡/支付宝/微信 |
| 提现 | `/api/app/withdrawals` | POST | 发起提现 | 校验实名、余额、账户、限制状态 |
| 提现 | `/api/app/withdrawals` | GET | 提现记录 | 展示金额、时间、状态、账户 |
| 消息 | `/api/app/messages` | GET | 消息列表 | 系统/项目/审核/结算/提现通知 |
| 设置 | `/api/app/about` | GET | 关于我们信息 | logo、版本、协议、隐私 |

### 31.1.1 达人端登录注册口径

- 注册：使用手机号注册，注册页需填写密码和确认密码。
- 登录：支持两种方式：手机号 + 密码登录；手机号 + 验证码登录。
- 校验：手机号使用 `^1\d{10}$`；密码 MVP 按 6-20 位校验；验证码 MVP 按 4-6 位数字校验；注册时确认密码需与设置密码一致。
- 注册不使用验证码注册一体流程；验证码仅作为登录方式之一。

### 31.2 后台接口

| 模块 | 接口 | 方法 | 用途 | P0 说明 |
|---|---|---|---|---|
| 登录 | `/api/admin/auth/login` | POST | 后台登录 | 账号/手机号、密码、验证码；前端保存登录态，刷新页面保持登录 |
| 工作台 | `/api/admin/dashboard` | GET | 核心指标与待办 | 运营首页 |
| 广告主 | `/api/admin/advertisers` | GET | 广告主列表 | 搜索、筛选、分页 |
| 广告主 | `/api/admin/advertisers` | POST | 新增广告主 | 接口配置只留入口 |
| 广告主 | `/api/admin/advertisers/{id}` | PUT | 编辑广告主 | 记录操作日志 |
| 项目 | `/api/admin/projects` | GET | 项目列表 | 支持状态筛选、搜索 |
| 项目 | `/api/admin/projects` | POST | 新建项目 | 可保存草稿 |
| 项目 | `/api/admin/projects/{id}` | PUT | 编辑项目 | 长表单分区 |
| 项目 | `/api/admin/projects/{id}/status` | POST | 上线/暂停/下架 | 高风险操作，二次确认，写日志 |
| 达人 | `/api/admin/creators` | GET | 达人列表 | 展示实名、状态、钱包数据 |
| 达人 | `/api/admin/creators/{id}` | GET | 达人详情 | 可查看参与和钱包概览 |
| 项目参与 | `/api/admin/participations` | GET | 达人项目参与记录 | 查看加白、对象数、回填数 |
| 关键词 | `/api/admin/keywords` | GET | 关键词记录 | 只看广告主审核结果 |
| 群记录 | `/api/admin/groups` | GET | 群记录 | 查看创建结果和二维码 |
| 群记录 | `/api/admin/groups/{id}/qrcode` | GET | 下载群二维码 | 后台下载入口 |
| 作品回填 | `/api/admin/work-reports` | GET | 回填列表 | 平台、项目、达人、对象筛选 |
| 作品回填 | `/api/admin/work-reports/export` | POST | 导出回填记录 | 写操作日志，按权限脱敏 |
| 推广数据 | `/api/admin/promotion-data` | GET | 推广明细 | 查看订单生成状态 |
| 推广数据 | `/api/admin/api-receives` | GET | API 接收记录 | 查看原始接收摘要和处理状态 |
| 推广数据 | `/api/admin/promotion-data/{id}/retry` | POST | 重新处理失败推广数据 | 写操作日志 |
| 收益订单 | `/api/admin/income-orders` | GET | 收益订单列表 | 筛选项目、达人、状态 |
| 结算批次 | `/api/admin/settlement-batches` | GET | 批次列表 | 查看待确认、已入账 |
| 结算批次 | `/api/admin/settlement-batches` | POST | 生成批次 | 从待结算订单生成 |
| 结算批次 | `/api/admin/settlement-batches/{id}/confirm` | POST | 确认入账 | 生成钱包入账流水 |
| 钱包流水 | `/api/admin/wallet-ledgers` | GET | 钱包流水列表 | 财务查看 |
| 提现 | `/api/admin/withdrawals` | GET | 提现申请列表 | 状态筛选、搜索 |
| 提现 | `/api/admin/withdrawals/{id}/approve` | POST | 通过提现 | 状态转打款中 |
| 提现 | `/api/admin/withdrawals/{id}/reject` | POST | 驳回提现 | 必填原因，解冻金额 |
| 提现 | `/api/admin/withdrawals/{id}/success` | POST | 标记打款成功 | 记录第三方单号 |
| 提现 | `/api/admin/withdrawals/{id}/fail` | POST | 标记打款失败 | 必填失败原因，按规则处理余额 |
| 消息 | `/api/admin/messages` | GET | 消息列表 | 类型、状态筛选 |
| 消息 | `/api/admin/messages` | POST | 新建消息 | 支持草稿 |
| 消息 | `/api/admin/messages/{id}/send` | POST | 发送消息 | 写操作日志 |
| 运营配置 | `/api/admin/operation/categories` | GET/PUT | 首页分类配置 | 推荐分类、各内容分类 |
| 运营配置 | `/api/admin/operation/banners` | GET/POST/PUT | Banner 配置 | 预留运营 Banner |
| 系统 | `/api/admin/users` | GET/POST/PUT | 后台账号 | 管理员权限 |
| 系统 | `/api/admin/roles` | GET/PUT | 角色权限 | 权限矩阵 |
| 系统 | `/api/admin/operation-logs` | GET | 操作日志 | 操作人、模块、动作、时间筛选 |

### 31.3 外部接口

| 对接方 | 接口方向 | 用途 | P0 说明 |
|---|---|---|---|
| 暖暖 | 平台 → 暖暖 | 创建企微群 | 达人提交群名称后实时申请，返回二维码或失败原因 |
| 暖暖 | 暖暖 → 平台 | 推送有效转化 | 用户进群后在群内小程序完善资料，推送有效拉新等事件 |
| 暖暖 | 暖暖 → 平台 | 推送充值佣金 | 红豆充值佣金 15% 等分佣数据 |
| 其他广告主 | 广告主 → 平台 | 关键词推广数据推送 | P0 先按 API 推送预留，不做 Excel 导入 |
| 其他广告主 | 平台 → 广告主 | 关键词审核结果同步/查询 | 具体方式按广告主能力确定 |
| 第三方打款/云账户 | 后台服务 → 第三方 | 打款或结算 | App 内无云账户授权感知；后台服务处理打款与个税能力 |

---

## 32. P0 状态流转表

### 32.1 项目状态

| 当前状态 | 可流转到 | 触发方 | 说明 |
|---|---|---|---|
| 草稿 | 待上线 | 平台运营 | 项目基础配置补全后提交 |
| 待上线 | 投放中 | 平台运营 | 手动上线后达人端首页可见 |
| 投放中 | 已暂停 | 平台运营 | 暂停后达人端不可新增群/关键词/别名，可保留历史数据 |
| 投放中 | 已下架 | 平台运营 | 下架后达人端首页不展示 |
| 已暂停 | 投放中 | 平台运营 | 恢复投放 |
| 已暂停 | 已下架 | 平台运营 | 停止项目 |
| 已下架 | - | 平台运营 | P0 不支持恢复，需新建或复制项目 |

### 32.2 关键词状态

| 当前状态 | 可流转到 | 触发方 | 说明 |
|---|---|---|---|
| 审核中 | 审核通过 | 广告主 | 审核通过后达人可推广 |
| 审核中 | 已驳回 | 广告主 | 需返回审核反馈 |
| 审核通过 | 删除 | 达人/平台 | 进入回收站，不物理删除 |
| 已驳回 | 删除 | 达人/平台 | 进入回收站 |
| 删除 | - | - | P0 不支持恢复 |

### 32.3 群记录状态

| 当前状态 | 可流转到 | 触发方 | 说明 |
|---|---|---|---|
| 创建中 | 已创建 | 暖暖 API | 返回群ID和二维码 |
| 创建中 | 创建失败 | 暖暖 API/系统 | 返回失败原因或超时 |
| 已创建 | 删除 | 达人/平台 | 进入回收站，不物理删除 |
| 创建失败 | 删除 | 达人/平台 | 进入回收站 |
| 删除 | - | - | P0 不支持恢复 |

### 32.4 作品回填状态

| 当前状态 | 可流转到 | 触发方 | 说明 |
|---|---|---|---|
| 已回填 | 有效 | 系统/运营 | 链接格式可访问，P0 可默认有效 |
| 已回填 | 无效 | 系统/运营 | 链接不可访问或明显不合规 |
| 有效 | 已同步广告主 | 系统/运营 | 导出或接口同步后更新 |
| 无效 | - | - | P0 不做复杂审核流程 |

### 32.5 处理状态

| 当前状态 | 可流转到 | 触发方 | 说明 |
|---|---|---|---|
| 接收成功 | 已生成订单 | 系统 | 校验通过后生成收益订单 |
| 接收成功 | 处理失败 | 系统 | 缺项目、缺达人、缺对象、金额数量异常等 |
| 接收成功 | 幂等拦截 | 系统 | eventId 重复，不重复生成订单 |
| 处理失败 | 已生成订单 | 运营/系统 | 修复关联关系后重新处理 |

### 32.6 收益订单状态

| 当前状态 | 可流转到 | 触发方 | 说明 |
|---|---|---|---|
| 待结算 | 已入批次 | 系统/财务 | 进入结算批次 |
| 已入批次 | 已结算 | 财务 | 批次确认后入账 |
| 待结算 | 已作废 | 财务/风控 | 异常订单作废，必须写原因 |
| 已入批次 | 已作废 | 财务/风控 | 批次确认前可作废，确认后 P0 不支持直接作废 |

### 32.7 结算批次状态

| 当前状态 | 可流转到 | 触发方 | 说明 |
|---|---|---|---|
| 待确认 | 已入账 | 财务 | 确认后生成达人钱包入账流水 |
| 待确认 | 已驳回 | 财务/广告主 | 必须填写驳回原因 |
| 已入账 | - | - | P0 不支持删除 |
| 已驳回 | - | - | 需重新生成批次 |

### 32.8 提现状态

| 当前状态 | 可流转到 | 触发方 | 说明 |
|---|---|---|---|
| 待处理 | 打款中 | 财务 | 审核通过，提交第三方打款 |
| 待处理 | 已驳回 | 财务 | 必填驳回原因，解冻余额 |
| 打款中 | 打款成功 | 财务/系统回调 | 扣减冻结金额，生成提现成功流水 |
| 打款中 | 打款失败 | 财务/系统回调 | 必填失败原因，按规则解冻或重试 |
| 打款失败 | 打款中 | 财务 | P0 可通过重新提交打款处理，需写日志 |
| 打款成功 | - | - | 终态 |
| 已驳回 | - | - | 终态 |

---

## 33. P0 表单校验规则

### 33.1 项目表单

| 字段 | 校验规则 |
|---|---|
| 项目名称 | 必填，2-30 个字符，同广告主下不建议重复 |
| 广告主 | 必选，只能选择合作中或待联调广告主；上线前必须为合作中 |
| 项目分类 | 必选，取运营配置中的启用分类 |
| 任务类型 | 必选：拉群类、关键字类 |
| 项目标签 | 非必填，从标签字典选择，建议不超过 6 个标签；达人端标签同时包含开启展示的价格规则标签 |
| 推荐展示 | 必选：是/否；影响首页推荐分类 |
| 排序权重 | 必填，数字，0-999，越大越靠前 |
| 奖励规则 | 上线前必填，至少 1 条启用规则；需填写任务要求、对接价格、奖励价格、展示标签开关 |
| 订单结算说明 | 上线前必填，富文本内容不能为空，需明确订单更新周期和到账预估 |
| 特别注意说明 | 非必填，富文本内容；涉及禁止行为时必须填写 |
| 是否需要回填 | 必选：需要/不需要；影响我的项目内回填入口 |
| 接口配置 | P0 只校验是否已留配置入口；上线前人工确认 |
| 草稿保存 | 草稿允许字段不完整，只校验项目名称或广告主至少填写一项 |
| 上线操作 | 必须校验必填项完整、广告主合作状态、至少 1 条启用奖励规则、项目说明、订单结算说明 |

### 33.2 新增群表单

| 字段 | 校验规则 |
|---|---|
| 群名称 | 必填，2-30 个字符 |
| 项目ID | 必填，项目必须为投放中 |
| 达人ID | 必填，达人必须已登录 |
| 重复群名 | 同一达人同一项目下不允许完全重复群名称 |
| 接口结果 | 暖暖接口返回群ID和二维码则创建成功；超时或失败则记录失败原因 |

### 33.3 新增关键词表单

| 字段 | 校验规则 |
|---|---|
| 关键词/别名 | 必填，3-18 个字；不允许标点符号、生僻字、繁体字；不允许耽美/后宫导向；不允许高频热词前后缀；不允许违禁词；不允许无脑囤积 |
| 项目ID | 必填，项目必须为投放中 |
| 达人ID | 必填，达人必须已登录 |
| 内容ID | 按项目配置决定是否必填；番茄小说需填写书籍ID |
| 内容名称 | 按项目配置决定是否必填；番茄小说需填写书籍名称 |
| 推广视频类型 | 按项目配置决定是否必填；选择交互为底部弹窗选择 |
| 重复关键词/别名 | 同一达人同一项目下不允许重复关键词/别名；是否跨达人去重按广告主要求配置 |
| 提交结果 | 提交后状态为审核中，等待广告主审核结果 |

### 33.4 作品回填表单

| 字段 | 校验规则 |
|---|---|
| 项目ID | 必填，项目必须存在 |
| 推广对象 | 必填，必须绑定到某个群或关键词/别名 |
| 平台 | 必选：抖音、快手、小红书、视频号、其他 |
| 作品链接 | 必填，必须为合法 URL |
| 链接重复 | 同一达人同一项目下不允许重复回填同一作品链接 |
| 回填状态 | 提交成功后默认已回填/有效，P0 不做智能回填和前置审核 |
| 同步状态 | 导出或接口同步广告主后更新为已同步广告主 |

### 33.5 提现表单

| 字段 | 校验规则 |
|---|---|
| 提现金额 | 必填，数字，大于 0，最多两位小数 |
| 可提现余额 | 提现金额不能超过可提现金额 |
| 最低提现门槛 | 低于平台配置最低提现金额不可提交 |
| 收款账户 | 必选，银行卡/支付宝/微信之一 |
| 实名状态 | 未实名不可提现 |
| 达人状态 | 禁用、限制提现状态不可提现 |
| 重复提现 | 同一达人存在待处理或打款中提现单时不可重复发起，或按平台配置限制 |
| 个税说明 | 提现页保留个税申报说明入口 |

### 33.6 后台处理表单

| 场景 | 校验规则 |
|---|---|
| 项目上线/暂停/下架 | 必须二次确认，写操作日志 |
| 提现通过 | 校验实名、余额、收款账户、账号状态、重复提现 |
| 提现驳回 | 驳回原因必填，写操作日志 |
| 标记打款失败 | 失败原因必填，写操作日志 |
| 结算确认 | 校验订单数量、金额、达人数量、项目归属，写操作日志 |
| 导出数据 | 校验导出权限、导出范围和脱敏规则，写操作日志 |

---

## 34. 权限拦截与无权限说明

### 34.1 权限控制层级

| 层级 | 规则 |
|---|---|
| 菜单权限 | 无菜单权限时默认不展示对应菜单 |
| 页面访问权限 | 通过 URL 或前端状态直接访问页面时，接口仍需校验权限 |
| 按钮权限 | 有页面查看权限但无操作权限时，按钮隐藏或置灰 |
| 数据权限 | 按角色限制敏感字段、导出范围和可查看数据范围 |
| 接口权限 | 所有新增、编辑、状态流转、导出、打款、权限变更接口必须后端二次校验 |

### 34.2 无权限页面/状态

| 场景 | 前端表现 | 后端表现 |
|---|---|---|
| 无菜单权限 | 不展示菜单 | 接口返回无权限 |
| 有菜单无页面权限 | 展示空状态：暂无权限，请联系管理员 | 403 |
| 有查看无操作权限 | 操作按钮隐藏或置灰 | 操作接口返回 403 |
| 数据字段无权限 | 字段脱敏或不返回 | 返回脱敏字段或剔除字段 |
| 登录失效 | 跳转后台登录页 | 401 |

### 34.3 P0 角色边界

| 角色 | P0 权限重点 |
|---|---|
| 管理员 | 全部菜单、账号、角色、权限、日志；可查看和配置所有模块 |
| 平台运营 | 广告主、项目、运营配置、推广数据查看；不能处理提现和权限 |
| 风控/审核 | 达人、项目参与、关键词、群、回填、推广数据异常查看；可限制账号或提现 |
| 财务 | 收益订单、结算批次、钱包流水、提现处理；不能编辑项目和运营配置 |

---

## 35. 消息通知触发规则

### 35.1 消息类型

| 类型 | 用途 |
|---|---|
| 系统通知 | 平台公告、协议、提现个税说明、版本更新等 |
| 项目通知 | 项目上线、暂停、下架、奖励规则调整、群创建结果等 |
| 审核通知 | 关键词/别名审核通过、关键词/别名驳回等 |
| 结算通知 | 收益订单生成、结算入账、结算异常等 |
| 提现通知 | 提现提交、打款成功、打款失败、提现驳回等 |

### 35.2 触发场景

| 触发场景 | 消息类型 | 接收对象 | 是否必须 |
|---|---|---|---|
| 关键词/别名审核通过 | 审核通知 | 提交该关键词的达人 | 是 |
| 关键词/别名已驳回 | 审核通知 | 提交该关键词的达人 | 是 |
| 群创建成功 | 项目通知 | 提交该群申请的达人 | 是 |
| 群创建失败 | 项目通知 | 提交该群申请的达人 | 是 |
| 项目暂停 | 项目通知 | 已参与该项目的达人 | 是 |
| 项目下架 | 项目通知 | 已参与该项目的达人 | 是 |
| 项目奖励规则调整 | 项目通知 | 已参与或收藏该项目的达人 | 是 |
| 作品回填成功 | 项目通知 | 提交回填的达人 | 可选 |
| 收益订单生成 | 结算通知 | 产生收益的达人 | 可选，P0 可只在数据页体现 |
| 结算入账 | 结算通知 | 入账达人 | 是 |
| 提现申请提交 | 提现通知 | 提现达人 | 可选 |
| 提现打款成功 | 提现通知 | 提现达人 | 是 |
| 提现打款失败 | 提现通知 | 提现达人 | 是 |
| 提现驳回 | 提现通知 | 提现达人 | 是 |
| 平台公告 | 系统通知 | 全部或指定达人 | 按运营需要 |

### 35.3 消息字段

| 字段 | 说明 |
|---|---|
| message_id | 消息ID |
| message_type | 系统通知、项目通知、审核通知、结算通知、提现通知 |
| title | 消息标题 |
| content | 消息内容 |
| target_type | 全部达人、指定达人、指定项目达人 |
| target_id | 指定达人ID或项目ID，可为空 |
| related_type | 关联业务类型，如 project、keyword、withdrawal |
| related_id | 关联业务ID |
| send_status | 草稿、已发送、已撤回 |
| sent_at | 发送时间 |
| created_at | 创建时间 |

---

## 36. 导出与脱敏规则

### 36.1 导出权限

| 模块 | 可导出角色 | P0 说明 |
|---|---|---|
| 达人管理 | 管理员、风控/审核 | 默认手机号脱敏，身份证号不导出 |
| 项目参与 | 管理员、平台运营、风控/审核 | 可导出项目、达人、参与状态、对象数 |
| 关键词记录 | 管理员、平台运营、风控/审核 | 可导出关键词、审核状态、反馈、回填数 |
| 群记录 | 管理员、平台运营、风控/审核 | 可导出群名称、群ID、二维码ID、状态；二维码图片按权限下载 |
| 作品回填 | 管理员、平台运营、风控/审核 | 可导出作品链接，用于广告主数据分析 |
| 推广数据 | 管理员、财务、风控/审核 | 可导出推广明细和失败记录 |
| 收益订单 | 管理员、财务 | 可导出订单、金额、批次信息 |
| 结算批次 | 管理员、财务 | 可导出批次和明细 |
| 钱包提现 | 管理员、财务 | 可导出提现记录，收款账户按权限脱敏 |
| 操作日志 | 管理员 | 可导出日志，便于审计 |

### 36.2 脱敏规则

| 数据 | 页面展示 | 导出规则 |
|---|---|---|
| 手机号 | `157****0914` | 默认脱敏；管理员/财务按权限可导出明文 |
| 身份证号 | `110***********1234` | 默认不导出；如监管或财务需要，单独授权 |
| 姓名 | `张*` | 默认脱敏；财务处理提现时可按权限查看必要信息 |
| 银行卡号 | `招商银行(8821)` | 默认只显示银行名称和后四位 |
| 支付宝账号 | `支付宝 157****0914` | 默认脱敏 |
| 微信账号 | `微信 158****7712` | 默认脱敏 |
| 第三方打款单号 | 可完整展示 | 财务和管理员可导出 |
| 作品链接 | 完整展示 | 可导出，用于广告主分析 |
| 群二维码 | 后台可下载 | 仅管理员、平台运营、风控/审核可下载 |

### 36.3 导出操作要求

- 所有导出行为必须写操作日志。
- 日志需记录导出人、导出模块、筛选条件、导出字段范围、导出时间、IP。
- 导出文件建议带水印或记录导出批次号，便于追溯。
- 财务导出提现、结算数据时，应遵循最小必要原则。
- 运营角色不可导出完整身份证号、完整收款账户。
- P0 不做复杂审批流，但高敏数据导出建议只开放给管理员和财务。
