You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123 lines
9.0 KiB

3 weeks ago
# Research 02:页面×接口需求矩阵(缺失/幻影/匹配三清单)
日期:2026-08-17 · 证据源:蓝湖 MCP 实时原型(docId 8fce7f53,version a5e6a3b7,与本地快照同版)· 方法:FULL 模式截图(公海 3 页)+ 全 11 页文本快照逐页提取交互入口(01 已确认两源一致)
> 结论先行:**接口覆盖无大洞,但四菜单「全量副本」让每页文件夹 40%~60% 是幻影;另发现 2 个缺失接口 + 1 个缺失参数 + 1 处旧表误记。**
## 一、逐页接口需求(菜单文件夹口径:主页面 + 子页)
### 线索公海(分屏 + 列表 + 详情子页)
| 原型交互入口 | 接口 | 判定 |
|---|---|---|
| 统计卡片 3 枚(线索总量/待领取/今日新增,随筛选刷新) | stats (viewType=PUBLIC_POOL) | ✅ |
| 筛选(渠道/品牌/产品/加急/状态/区域)+ 搜索 + 查询/重置 | page (PUBLIC_POOL) | ✅ |
| 操作列/右面板:详情(详情+历史双 Tab) | detail + history | ✅ |
| 单条【领取】(仅待领取行;防抖/冲突/超限弹窗) | claim | ✅ |
| 【批量领取】(勾选待领取;部分成功弹窗=BatchResult) | claim-batch | ✅ |
| 单条【关注】(全部状态可关注) | follow | ✅ |
| 【批量关注】(任意状态勾选执行) | **follow-batch** | ❌ **缺失** |
| 详情弹窗:本人已领取显示【释放】 | release | ✅(入口在公海详情弹窗,非列表) |
| 详情弹窗:本人已关注显示【取消关注】 | unfollow | ✅(同上) |
| 列设置弹窗 + 表头拖拽(公海独立 scope) | 列偏好 get/save (lead.public_pool) | ✅ |
| 分屏/列表视图切换 | 前端布局,无接口 | — |
### 我的线索(列表 + 详情/新增/编辑子页)
| 原型交互入口 | 接口 | 判定 |
|---|---|---|
| 统计卡片 5 枚(总量/有效/未反馈/无效/已转商机) | stats (MY_LEAD) | ✅(口径与公海 3 卡不同,随视图) |
| 筛选 + 查询/重置 | page (MY_LEAD) | ✅ |
| 操作列:【编辑】(编辑页含详情/历史双 Tab) | edit + detail + history | ✅ |
| 操作列:【反馈】(草稿/提交两态) | feedback-draft + feedback-submit | ✅ |
| 操作列:【转商机】(已领取/跟进中行) | convert | ✅ |
| 操作列:【释放】 | release | ✅ |
| 操作列:过期失效行【删除】 | delete | ✅ |
| 顶部【批量释放】 | release-batch | ✅ |
| 顶部【+ 新增线索】(表单:是否领取/是否关注复选、省市区划) | create + region/list + region/level | ✅ / ⚠ create 缺 `followOnCreate`(见缺失清单) |
| 导入/导出线索 | — | 🚫 G6 Out of scope |
| 列表设置(「与公海共用一套」旧文案已被 PRD-07 推翻:独立 scope) | 列偏好 get/save (lead.my_lead) | ✅ |
### 我的关注
| 原型交互入口 | 接口 | 判定 |
|---|---|---|
| 统计卡片 5 枚(总量/有效/未反馈/无效/已转商机) | stats (MY_FOLLOW) | ✅ |
| 筛选 + 查询/重置 | page (MY_FOLLOW) | ✅ |
| 操作列:【详情】(双 Tab) | detail + history | ✅ |
| 操作列:【领取】(仅待领取行) | claim | ✅ |
| 操作列:【取消关注】(全部状态) | unfollow | ✅ |
| 【批量领取】 | claim-batch | ✅ |
| 【批量取关】 | **unfollow-batch** | ❌ **缺失** |
| ~~释放/批量释放~~ | release/release-batch | 👻 **ticket 14 旧表误记**:实时原型本页无释放入口(操作列仅 详情/领取/取消关注;批量仅 领取/取关) |
| 列表设置 | 列偏好 get/save (lead.my_follow) | ✅ |
### 线索管理(列表 + 新增子页)
| 原型交互入口 | 接口 | 判定 |
|---|---|---|
| 统计卡片 5 枚(总量/已领取/已转商机/今日新增/未分发) | stats (MANAGE) | ✅ |
| 筛选(含**全部线索池**下拉,数据来源线索设置)+ 查询/重置 | page (MANAGE, poolId 筛选) | ✅ |
| 操作列:【详情】(双 Tab) | detail + history | ✅ |
| 操作列/弹窗:【分配】(池→团队→部门→人员四级联动;可不选人=分配到池) | assign-pool + assign-user | ✅ |
| 【批量分配】(多条统一给同一人;同池限制;部分成功弹窗) | assign-user-batch + assign-pool-batch | ✅ |
| 操作列:【删除】(管理员;已领取/已转商机二次强确认) | delete | ✅ |
| 【批量删除】 | delete-batch | ✅ |
| 操作列:【激活】(过期失效行) | activate | ✅ |
| 【批量激活】(显示过期失效/线索作废筛选联动;两种失效来源恢复语义不同) | activate-batch | ✅(证据在需求说明尾部,勿只看批量按钮主清单) |
| 顶部【新增线索】(管理员建线索,默认本池可切换) | create + region | ✅ |
| 导入/导出/线索合并 | — | 🚫 G6 / Out of scope |
| 列表设置(**独立隔离**,PRD-07 每菜单独立 scope) | 列偏好 get/save (lead.manage) | ✅ |
### 线索设置(A2-1-5,= 原 A7-3-1)
| 原型交互入口 | 接口 | 判定 |
|---|---|---|
| 池列表(团队/部门/省份筛选) | pool/page | ✅ |
| 操作列:【编辑】(双 Tab 回显:基础+其他设置) | pool/detail + pool/saveOrUpdate | ✅ |
| 操作列:【删除】 | pool/delete | ✅ |
| 【批量删除】 | pool/delete-batch | ✅ |
| 【新增公海池】(省份多选、市-区-县多选) | pool/saveOrUpdate + region/list + region/level | ✅ |
| 导入/导出公海池 | — | 🚫 G7/G8 Out of scope |
## 二、三清单汇总
### 缺失(原型有入口,后端无对应)
1. **follow-batch(批量关注)**——公海页顶部批量按钮,双视图截图 + 文本双证。
2. **unfollow-batch(批量取关)**——我的关注页顶部批量按钮。
3. **create 缺 `followOnCreate` 参数**——新增线索表单「是否关注」复选(PRD §6.1 亦有)。可前端两步(create→follow)替代,是否加参数进 03 拍板。
### 幻影(四菜单全量副本中,该页无入口的接口)
以 141 版每文件夹 25 个(23 线索 + 2 列偏好)为基数:
| 文件夹 | 无入口接口(应裁掉) | 保留数 |
|---|---|---|
| 线索公海 | create、edit、delete、delete-batch、assign-pool(-batch)、assign-user(-batch)、feedback-draft/submit、convert、activate(-batch)、release-batch、follow 按钮在但批量缺——共 14 个 | **11**(page/stats/detail/history/claim/claim-batch/follow/release/unfollow/列偏好×2)+ 缺失 follow-batch 补入后 12 |
| 我的线索 | claim(-batch)、follow、unfollow、assign×4、activate(-batch)、unfollow——共 10 个 | **15**(page/stats/detail/history/edit/feedback×2/convert/release/release-batch/delete/create/列偏好×2)+ region |
| 我的关注 | create、edit、delete、delete-batch、assign×4、feedback×2、convert、release、release-batch、activate(-batch)、follow、claim 单条在——共 15 个 | **10**(page/stats/detail/history/claim/claim-batch/unfollow/列偏好×2)+ 缺失 unfollow-batch 补入后 9→10 |
| 线索管理 | edit、claim(-batch)、follow、unfollow、feedback×2、convert、release(-batch)——共 10 个 | **15**(page/stats/detail/history/assign×4/delete/delete-batch/activate/activate-batch/create/列偏好×2)+ region |
(以上「保留数」为矩阵推算值,精确到每个 .bru 的最终归属在 03 拍板裁剪粒度后由 05 生成核对。)
### 匹配
其余全部双向对上:LeadController 23 个中 21 个、ColumnPreference 2、LeadPool 5、Region 2 均有明确页面入口;BatchResult 部分成功结构与原型「XX 成功/XX 失败/失败类型」弹窗吻合;stats 卡片口径随视图(3/5/5/5 枚)与 LeadStatsDTO 设计吻合。
## 三、与 ticket 14 旧表的冲突修正(以实时原型为准)
| 旧表判定 | 实时原型证据 | 修正 |
|---|---|---|
| 我的关注需要 release-batch | 操作列仅 详情/领取/取消关注;批量仅 批量领取/批量取关 | release/release-batch 从我的关注移除 |
| 线索管理 activate-batch 未提(旧表只写了 activate 在我的线索) | 需求说明尾部「激活/批量激活」+「批量激活」按钮 + 显示过期失效/线索作废筛选 | activate-batch 归线索管理 |
| 我的线索 delete-batch | 顶部按钮仅 新增/导入/导出/批量释放/列表设置;删除仅过期失效行单条 | delete-batch 从我的线索移除(保留单条 delete) |
| 公海 assign 系列未记(旧表记了 assign-pool(-batch)/assign-user(-batch) 在公海) | 公海页操作列 详情/领取/关注;批量 批量领取/批量关注;分配入口在线索管理页(PRD §6.3 亦注明入口为管理视图) | assign×4 从公海移除 |
## 四、对 03 的输入
1. 裁剪真相源已就绪:本矩阵四列「保留集」+ 缺失 3 项;
2. 缺失 2 个批量接口(follow-batch/unfollow-batch)需拍板:本期补实现 or 文档暂缺标注(前端逐条循环调用是临时可行解);
3. create+followOnCreate 参数去留;
4. region/列偏好的文件夹归属(region 被 3 个菜单的表单依赖:我的线索新增、线索管理新增、线索设置)。