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.
票 03 · 矩阵 A4-4 客户详情(12 页)
口径同 matrix-a4-1-a4-3.md。详情页 = 8 子页签 ×3 客户态(正常/已归档/已被合并);a4-4-1 ×3、a4-4-2~8 各 1、a4-4-9/10 协议表单 ×2 = 12 页。
§1 a4-4-1 客户概览(客户信息)——正常 / 已归档 / 已被合并 三态
| # |
原型要素 |
实现 |
判定 |
| 1.1 |
头部:名称/星级/类型/省市/行业/阶段/负责人/协同人/关注/星标 |
CustomerDetailHeadDTO 23 字段聚合 |
✅ |
| 1.2 |
头部汇总卡 5 字段(进行中商机总额等) |
恒 null(DTO 字段在、装配未接;API-SUMMARY §5.3 已注明「可经 port 扩展后切真值」) |
✅契约 / P3 记档 |
| 1.3 |
档案区全字段(含 networkUnits/总裁班组/工商组) |
CustomerDetailDTO 47 字段 |
✅ |
| 1.4 |
系统信息区:创建时间/创建人/更新时间/更新人 |
BaseEntity 真源在(creatorId/createTime/updaterId/updateTime),DTO 未暴露四件套 → demo 该区恒 "--" |
缺出参(P2-G4) |
| 1.5 |
已归档态(横幅 + 还原) |
`POST /archive |
/restore?id=` + archiveStatus=2 形态 |
| 1.6 |
已被合并态 |
D19/D6 拍板:客户合并与「已被合并」态取消(API-SUMMARY §3 值域无合并态) |
豁免 |
§2 a4-4-2 概览(联系人子表)
| # |
原型要素 |
实现 |
判定 |
| 2.1 |
联系人列表(姓名/职务/电话/关键联系人/负责人) |
GET /contact/page?customerId= → ContactDTO 14 字段 |
✅ |
| 2.2 |
「联系人负责人」列 |
DTO 无 owner 派生字段(可由客户 owner 快照派生) |
缺出参(P2-G5) |
| 2.3 |
行操作:编辑/删除 |
POST /contact/edit?id=、/contact/delete?id=(oplog CONTACT_EDIT/CONTACT_DELETE) |
✅ |
| 2.4 |
扩展档案列(性别/生日/微信/邮件/地址) |
定稿划出(V1 档案收窄) |
豁免 |
§3 a4-4-3 概览(跟进记录)
| # |
原型要素 |
实现 |
判定 |
| 3.1 |
跟进列表(方式/内容/时间/操作人) |
GET /follow/page?customerId= |
✅ |
| 3.2 |
筛选:跟进方式/时间范围/操作人 |
FollowPageParam 仅 followWay/startTime/endTime,缺操作人筛选 |
缺入参(P2-G1) |
| 3.3 |
新增跟进 |
POST /follow/add(oplog FOLLOW;lastValidFollowTime 锚点联动) |
✅ |
§4 a4-4-4 概览(关联商机)
| # |
原型要素 |
实现 |
判定 |
| 4.1 |
商机列表 13 列(名称/项目/区域/招标形式/阶段/预计金额/下次跟进/甲方/意向客户/负责人/更新时间…) |
port CustomerOpportunityQueryPort.OpportunityItem 仅 7 字段(id/oppName/stageName/estimateAmount/ownerUserId/ownerNameSnapshot/updateTime) |
缺出参(P2-G2,跨模块) |
| 4.2 |
记档口径 |
issues-07 §C 定稿已收窄列集;补列依赖 A5(项目/招标形式)与 opportunity 模块 port 增列——挂账跨模块票,不阻塞客户域验收 |
记档 |
§5 a4-4-5 概览(关联项目)
| # |
原型要素 |
实现 |
判定 |
| 5.1 |
项目列表 |
A5 项目模块未建,页签恒显 "--"(API-SUMMARY §5.3 记档) |
记档(范围外) |
§6 a4-4-6 / a4-4-9 / a4-4-10 战略协议(列表 + 新增 + 编辑)
| # |
原型要素 |
实现 |
判定 |
| 6.1 |
协议卡列表(甲方/乙方/金额/期限/状态) |
GET /agreement/list?customerId=(§2.6 族) |
✅ |
| 6.2 |
新增/编辑/结束协议 |
`POST /agreement/add |
/edit |
| 6.3 |
附件上传位 |
豁免(D2 划出) |
豁免 |
| 6.4 |
甲方是否明确/乙方字段 |
partyAClear 类孤立大写字母列已 @Column 钉死(AGENTS.md 陷阱清单) |
✅ |
§7 a4-4-7 概览(团队成员)
| # |
原型要素 |
实现 |
判定 |
| 7.1 |
成员列表(负责人置顶 + 协同人) |
GET /member/list?id=(ROLE_OWNER 在前) |
✅ |
| 7.2 |
列:姓名/部门/职务/加入时间 |
CustomerMemberDTO 仅 userName/deptName/role——缺职务/加入时间(实体 CustomerTeamMember.memberRole/createTime 真源在) |
缺出参(P2-G3) |
| 7.3 |
添加/移除成员 |
`POST /member/add |
/remove`(oplog MEMBER_ADD/MEMBER_REMOVE) |
§8 a4-4-8 概览(操作日志)
| # |
原型要素 |
实现 |
判定 |
| 8.1 |
日志列表(操作人/部门/类型/叙事/时间,按日分组) |
POST /oplog/page(OplogPageParam 时间倒序 + action/keyword 过滤);分组由前端渲染 |
✅ |
| 8.2 |
action 值域 17 种 |
真值 17 种;@Schema 描述滞后 11 种 → 本票已同步修正 |
✅(修复) |
| 8.3 |
导出日志 |
无端点(原型含导出按钮) |
缺接口(P3 记档) |
小结(A4-4 组)
- 端点面零缺接口(关联项目=A5 范围外;导出日志 P3)。
- P2 出参缺口 4 处:G1 跟进缺操作人筛选 / G2 关联商机 7 vs 13 列 / G3 成员缺职务+加入时间 / G4 详情缺系统信息四件套(另 ContactDTO 缺负责人+四件套 = G5,见 A4-5 矩阵)。
- P1/P0:无。