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.
 
 
 
 
 

5.7 KiB

crm-project 端点 ↔ 原型页面树对齐核查表(票 18)

权威树:.scratch/api-docs-reorg/lanhu-tree-v29.md A5 分区;原型页:.scratch/opportunity-bugfix/lanhu-pages/A5*(17 页)。 核查方式:Controller 源码 tag 逐一对照(bruno-sync 身份映射即 tag 原文);=已对齐,=跨页多 tag,=无原型页显式入口(建档按钮在看板/列表页)。 本表由票 18 全量核对产出;bruno-sync 未装本机的实现会话期,.bru 为按 generated 形态手写,票 18 后续如重跑 bruno-sync 以 tag 为准幂等归位。

A5 分区页面 → 端点矩阵(21 端点全覆盖)

端点 方法 深 tag(= Bruno 目录) 原型页 结论
/api/project/board GET A5 项目管理/项目管理(看板视图)+ 分屏视图 ◐ A5-1-1_项目管理(看板视图/分屏视图)
/api/project/list GET A5 项目管理/项目管理(列表视图)+ 分屏视图 + 我的项目 ◐ A5-1-1_项目管理(列表视图/分屏视图)、A5-1-2_我的项目 (列表+分屏共用一接口,spec §4 定稿)
/api/project/create POST A5 项目管理/项目管理(看板视图)+ 列表视图 ◐ (两页新建按钮,无独立原型页) (—)
/api/project/detail GET A5 项目管理/项目详情 A5-1-2-1_项目详情(页签详情与操作)
/api/project/stage/advance POST A5 项目管理/项目详情/状态机 A5-1-2-1(推进/无需招投标)
/api/project/stage/rollback-targets GET 同上 A5-1-2-2(回退弹窗数据源)
/api/project/stage/rollback POST 同上 A5-1-2-2(多步回退弹窗)
/api/project/close POST 同上 A5-1-1-7_项目详情(已关闭)
/api/project/bid-result/mark POST 同上 A5-1-1-5_项目详情(赢单_输单)
/api/project/filing/review POST A5 项目管理/项目详情/状态机 + 看板视图 ◐ A5-1-1-1_项目详情(处理冲突-本地/异地)
/api/project/follow/list GET A5 项目管理/项目详情/跟进 A5-1-1-5_项目详情(商务跟进)
/api/project/follow/add POST 同上 同上
/api/project/attachment/list GET A5 项目管理/项目详情/附件 A5-1-2-1(附件页签)
/api/project/attachment/add POST 同上 同上
/api/project/attachment/delete POST 同上 同上
/api/project/customer/list GET A5 项目管理/项目详情/客户 A5-1-2-1(客户页签)
/api/project/timeline/list GET A5 项目管理/项目详情/动态 A5-1-2-1(动态页签)
/api/project/scheme GET A5 项目管理/项目详情/方案设计 A5-1-1-2_项目详情(方案设计)
/api/project/quote GET A5 项目管理/项目详情/商务报价 A5-1-1-3_项目详情(商务报价)
/api/project/bidding GET A5 项目管理/项目详情/招投标 A5-1-1-4_项目详情(招投标准备)
/api/project/bid-open GET A5 项目管理/项目详情/开标 A5-1-1-5_项目详情(赢单_输单)

页面 → 端点反查(原型 17 页覆盖核对)

原型页 demo/端点支撑 结论
A5-1-1_项目管理(看板视图) /project/board + /project/filing/review + 卡片进详情
A5-1-1_项目管理(分屏视图) 列表共用 /project/list(spec §4「列表+分屏共用」)
A5-1-1_项目管理(列表视图) /project/list(阶段 7 值筛 + 报备独立筛 + 分页)
A5-1-2_我的项目 /project/list?scope=mine + /project/board?scope=mine
A5-1-2-1_项目详情(页签详情与操作) /project/detail + 8 页签端点 + 状态机 6 端点
A5-1-1-1 / 1b(处理冲突-本地/异地) stage0 详情 + /filing/review(异地拉群 spin-out)
A5-1-1-2(方案设计) /project/scheme(主表扩展列)
A5-1-1-3(商务报价) /project/quote(清单明细不落 CRM 硬边界)
A5-1-1-4(招投标准备) /project/bidding(含标底类型/等级名,投标主体一对一本期)
A5-1-1-5(商务跟进) /project/follow/*(+ /project/timeline 动态)
A5-1-1-5(赢单_输单) /project/bid-open + /bid-result/mark(赢单快照四字段)
A5-1-1-6(结项) stage6 状态落位(输单复盘字段 spec §8 后续字段)
A5-1-1-7(已关闭) /project/close(记因四要素)
A5-1-2_我的项目 同 列表/看板 mine scope
A5-1-4_项目统计 顶部 7 阶段统计卡 = /project/board 顶部 badge + 列计数(D-10 P2 记档:独立统计页未做) ◐ 记档
群聊详情页签 spin-out(企微能力,spec §8) ⚠️ spin-out
商机推送自动转项目 spin-out(OpportunityConvertPort 预留,本期唯一入口=独立建项目) ⚠️ spin-out

全量核对结论

  • 21 端点 ↔ 17 原型页双向核对完成;深 tag 全部为完整页面路径(ADR-0024),跨页端点多值 tag;无 @PathVariable/PUT/DELETE(audit 已证 40401/40501)。
  • Bruno 仓:E:\code\crm-api-docs\A5 项目管理\ 六个子目录 24 个 .bru(含 folder.bru),与上表一一对应;bruno-sync.config.json 已含 crm-project sourceRoot + A5 menuBindings(示例值走配置)。
  • API-SUMMARY(.scratch/crm-project/API-SUMMARY.md)与实现零漂移抽查:错误码 68001~68010 与 ProjectConstants 一致;双轴/报备/赢输值域与四枚举一致;21 端点入参出参与 Controller/DTO 签名一致(16/17 两票 UI+API 层实测背书)。