From bb2dad7b58b2c7823426c71c9e60c1d04b0e9a0b Mon Sep 17 00:00:00 2001 From: luoweijian <1329394916@qq.com> Date: Fri, 21 Aug 2026 18:02:45 +0800 Subject: [PATCH] commit --- .../issues/05-opportunity-pool-rules.md | 4 +- .../issues/10-four-views-query.md | 3 + ...14-custom-views-and-builtin-view-family.md | 83 +++ .scratch/opportunity-module/map.md | 6 +- .../产品待确认清单.md | 47 +- .../opportunity-module/商机业务-PRD.md | 636 ++++++++++++++++++ crm-opportunity/CONTEXT.md | 26 +- crm-preference/CONTEXT.md | 8 +- ...息化平台数据取用方式对比.pdf | Bin 0 -> 335519 bytes 9 files changed, 793 insertions(+), 20 deletions(-) create mode 100644 .scratch/opportunity-module/issues/14-custom-views-and-builtin-view-family.md create mode 100644 .scratch/opportunity-module/商机业务-PRD.md create mode 100644 nginx/html/信息化平台数据取用方式对比.pdf diff --git a/.scratch/opportunity-module/issues/05-opportunity-pool-rules.md b/.scratch/opportunity-module/issues/05-opportunity-pool-rules.md index 7c04bee..ba4fadd 100644 --- a/.scratch/opportunity-module/issues/05-opportunity-pool-rules.md +++ b/.scratch/opportunity-module/issues/05-opportunity-pool-rules.md @@ -121,7 +121,7 @@ Blocked by: 03, 04 - **新增 `last_valid_follow_time`**(datetime):最近一次有效跟进时间,回收计时锚点;跟进/附件/字段编辑时刷新(票 09 跟进/附件落地时联动)。 - **删 `recycle_deadline`**(初稿加的,锚点改为 last_valid_follow_time,回收由 Job 实时算 now−锚点,不预存 deadline)。 - **删 `pool_id`** 或改语义为"当前无意义":公海 = opp_status=1 逻辑视图,无池实体外键。保留 `owner_dept_id` 作公海可见范围锚点。 - - 新增 `pool_rule_version_id`(bigint,⚠ 候选):领取/回收时记录实际执行的规则版本快照(原型「版本快照规则」);或落跟进日志,待票 09。 + - **新增 `pool_rule_version_id` 语义定稿**:领取/回收时记录实际执行的规则版本快照(原型「版本快照规则」)——**落操作日志 `opportunity_oplog`(票 09),不上主表**。理由:一条商机会被多次领/回收,主表只能存最新一次,存不下历史;原型 A7-3-2-5 三处明写“历史提醒/回收/领取记录及操作日志继续关联原规则版本”(存档 research-a7325 line 533/1097/1832),指向日志而非主表字段。 - **回填票 04**: - 批量边 `executeRecycle(cutoff)` 保留,但触发条件改为"last_valid_follow_time + recycle_days < now"(非 recycle_deadline)。 - 抛公海 E3 / 回收:`owner=NULL, opp_status=1, owner_dept_id 保留`;无 pool_id 目标。 @@ -136,7 +136,7 @@ Blocked by: 03, 04 - ✅ **多规则命中优先级(已定)**:以最低层级规则为准;发布约束保证一个部门只被一条发布中规则覆盖,故命中唯一。 - ✅ **暂缓冻结回收计时(已定)**:暂缓期间计时暂停,`executeRecycle` 不扫暂缓中。 - ⚠ `recycle_days`/`remind_days` 数值样例(原型 30/7、45/7、20/5…)均为样例,非验收值。 -- ⚠ `pool_rule_version_id` 快照落主表还是落日志(票 09 联动)。 +- ✅ **`pool_rule_version_id` 快照落操作日志(已定)**:领取/回收时把实际执行的规则版本写进 `opportunity_oplog`(票 09),不上主表。作用:查旧账(说清当时凭哪版领/回收)+ 落实“历史不重算”。 ## 已核实事实(原型 A7-3-2-5 一手正文,存档 research-a7325-pool-remind-rules.md) diff --git a/.scratch/opportunity-module/issues/10-four-views-query.md b/.scratch/opportunity-module/issues/10-four-views-query.md index 39c9a0c..62b0235 100644 --- a/.scratch/opportunity-module/issues/10-four-views-query.md +++ b/.scratch/opportunity-module/issues/10-four-views-query.md @@ -4,6 +4,9 @@ Type: grilling Status: resolved Blocked by: 03, 04, 05 +> **⚠ Amendment(票 14 推翻/扩展本票的视图组织)**:产品以 demo `nginx/html/保伦CRM系统demo-重构版-S1_0803.html` 为准,销售机会工作区改为「内置四视图(最近访问 / 我负责的 / **我参与的**(新)/ 我关注的)+ 用户自定义视图」的下拉,自定义视图落 `crm-preference` 平台能力(按 scope)。**本票的数据范围矩阵、列表字段、计算列、三皮肤、公海 `pool_reason` 口径均不变**,仅「销售机会」工作区的视图组织形态被票 14 改写。详见 `issues/14`。 + + 定商机四视图查询口径 + 列表/详情字段与操作按视角差异。原型 A3-1-1 / A3-2-1 / A3-3-1 / A3-0-1 均已拉取核实,存档 `research-a3xx-four-views.md`。 --- diff --git a/.scratch/opportunity-module/issues/14-custom-views-and-builtin-view-family.md b/.scratch/opportunity-module/issues/14-custom-views-and-builtin-view-family.md new file mode 100644 index 0000000..15b13ea --- /dev/null +++ b/.scratch/opportunity-module/issues/14-custom-views-and-builtin-view-family.md @@ -0,0 +1,83 @@ +# 14 自定义视图 + 内置视图族(推翻/扩展票 10 视图组织) + +Type: grilling +Status: resolved +Blocked by: 10 + +## 缘起 + +产品以最新重构版 demo **`nginx/html/保伦CRM系统demo-重构版-S1_0803.html`** 的 `oppModule` 为准(用户明确「他是想做成这样」),推翻/扩展票 10 的四视图组织:销售机会下可**自定义视图**,并把内置视图从「一个我负责的」扩为**四个内置视图**族。 + +demo 出处:`oppModule`(HTML line 1228 `viewTitles` / line 1229 `viewItems` / line 1260–1305 视图菜单与自定义检索表单 / `saveCustomSearch`·`saveEditedSearch`·`saveAsNewSearch`·`runCustomSearch`·`editSearch`·`startRename`·`confirmRename`·`deleteSearch`·`pinView`·`persistCustomSearches`·`restoreCustomSearches`)。 + +## 与票 10 的差异(本票为 Amendment,票 10 其余口径不变) + +| 维度 | 票 10 已定稿 | demo 0803 新意图(本票拍板) | +|---|---|---| +| 视图组织 | 三个独立工作区(个人/管理/公海)各是独立页面 + 最近访问 | **单一「销售机会」工作区下的视图下拉**(常用检索 / 自定义检索两 Tab);商机管理 / 商机公海仍是并列 workspace(不变) | +| 内置个人视图 | 只有一个「我负责的(个人页)」 | **四个内置视图**:最近访问 / 我负责的 / **我参与的**(新增)/ 我关注的 | +| 「我参与的」 | 未定义 | 内置视图,见下【定义 1】 | +| 自定义视图 | 无 | 核心新增:保存检索为常用视图、编辑 / 重命名 / 删除、图钉设默认,见【定义 2】 | + +> 票 10 的**四视图数据范围矩阵、列表字段、计算列口径、三皮肤、公海 `pool_reason`** 等一律不变。本票只改**「销售机会」这一工作区内的视图组织形态**(内置视图族 + 用户自定义视图),并把「最近访问」「我关注的」从票 10 的独立视图并入销售机会工作区的视图下拉。 + +## 决策(已定稿) + +### 定义 1 —— 内置视图族(销售机会工作区,四个) + +四个内置视图,均在「销售机会」workspace 的「常用检索」Tab 内,顺序 = 最近访问 / 我负责的 / 我参与的 / 我关注的: + +| 视图 code | 名称 | 数据范围(WHERE 口径) | +|---|---|---| +| `recent` | 最近访问 | 当前用户打开过详情的商机,访问时间倒序、按商机 id 去重留最新,上限可配置(本期默认 50,票 10 P2-2 不变) | +| `mine` | 我负责的销售机会 | `owner_user_id = 当前用户`(票 10「销售机会(个人)」口径不变) | +| `participated` | 我参与的销售机会 | **我是该商机团队成员但不是负责人**:`EXISTS(团队成员表 WHERE opportunity_id=? AND user_id=当前用户) AND owner_user_id <> 当前用户`。团队成员表 = 票 02/04 建商机时落的团队成员(领取人=负责人 + 后续「添加团队成员」加入的成员)。**产品确认(本票确认点 1):参与 = 团队成员且非负责人**,与「我负责的」互斥不重叠。 | +| `followed` | 我关注的销售机会 | 当前用户关注表命中(票 10「我的关注」口径不变) | + +- **内置视图 = 系统固定四个,不可编辑 / 重命名 / 删除**;只可被「图钉」设为默认视图(见定义 3)。 +- 「商机管理」「商机公海」仍是**独立 workspace**(不进销售机会视图下拉),口径同票 10(管理按 `@DataScope`、公海 `opp_status=1 且 owner 空`)。demo 里 `workspace` 三档(sales/manage/publicPool)印证。 + +### 定义 2 —— 自定义视图(= 保存的检索) + +用户在「自定义检索」Tab 里配置检索条件并「保存为常用检索」,生成一个**自定义视图**,加入「常用检索」Tab 列表(排在四个内置视图之后)。一个自定义视图 =: + +- **检索名称**(用户填,同一用户同一 scope 内唯一,demo `validateCustomRule` 查重) +- **检索条件**:一组「字段 + 操作符 + 值」(demo 本期 1 组条件;「+ 添加更多条件」「启用高级公式」demo 标注为后续迭代 —— **本期后端契约按「条件列表」建模**,前端本期只提交 1 组,留扩展位) + - 字段(本票确认点 3)= **列表所有可筛选列**(不是 demo 简化的 4 个);字段池归业务方(商机模块)定义,对齐 `crm-preference`「字段池」约定 + - 操作符:`等于 / 不等于 / 包含 / 不包含 / 为空 / 不为空`(demo `customMatches`) +- **排序条件**:排序字段 + 方向(`asc/desc`)(demo `filteredRows` 里 `预计成交金额 / 计划成交时间` 是简化,后端排序字段同属字段池) + +生命周期动作(demo 已实现,全部按用户私有): +- **保存为常用检索** `saveCustomSearch`(新建)/ **另存为新检索** `saveAsNewSearch` +- **编辑检索** `editSearch` → **保存修改** `saveEditedSearch`(覆盖原视图) +- **重命名** `startRename`/`confirmRename` +- **删除** `deleteSearch`(删当前视图时回落到 `mine`;删默认视图时默认回 `mine`) + +### 定义 3 —— 默认视图(图钉) + +- 每个视图(内置四个 + 自定义任一)行尾有「图钉」,点击 = **设为该用户在此 scope 的默认视图** `pinView`(demo `defaultView`,持久化)。 +- 进入销售机会页时打开默认视图;默认视图未设 → `mine`。 +- 默认视图 = **用户级、单值**(一个 scope 只有一个默认)。 + +### 决策 4 —— 落 `crm-preference` 平台能力,不绑死商机(本票确认点 2) + +产品确认:**目前只在销售机会启用,但要有灵活性,后续其他菜单也会有**。故自定义视图**做成 `crm-preference` 的平台级能力**(与既有「列偏好」并列的第二种偏好),**按 `scope_key` 分组、用户级私有**,与 ADR-0024「每菜单独立」完全对称: + +- 新增偏好实体(建议 `user_saved_view`):`(user_id, scope_key, view_id, name, filter_json, sort_field, sort_direction, is_default, seq_no, create_time, update_time)`。 + - `filter_json` = 条件列表(`[{field, operator, value}, ...]`)序列化;**`crm-preference` 不校验字段合法性**(字段池归业务方,对齐既有「字段池」约定)。 + - `scope_key` 复用列偏好同一套 scope 命名;销售机会本期 scope = **`opportunity.sales`**(单一,因自定义视图只属销售机会个人工作区,见确认点 2)。管理 / 公海本期不开自定义视图。 + - `is_default` 承载定义 3 的默认视图(同 `(user_id, scope_key)` 至多一条 `is_default=1`)。 +- **契约**:`crm-preference` 现有 `get/save` 两法(列偏好)之外,为自定义视图加一组 `list / save / delete / setDefault`(用户级、按 scope)。具体方法签名留实现阶段定,本票只钉「落 crm-preference、按 scope、用户私有」的归属决策。 +- **确认点 2 明确**:本期只 `opportunity.sales` 一个 scope 启用;实体 / 契约按「任意 scope 通用」设计,不含商机专有字段,后续菜单加 scope 即可复用。 + +## 传出决策 / 回填其他票 + +- **回填票 10**:销售机会工作区的视图组织从「单一我负责的」改为「内置四视图(最近访问 / 我负责的 / **我参与的**(新)/ 我关注的)+ 自定义视图」;「最近访问」「我的关注」并入销售机会视图下拉(数据范围口径不变)。票 10 的列 / 计算列 / 三皮肤 / 公海不变。 +- **回填 `crm-opportunity/CONTEXT.md`**:【四视图】术语改写为【视图(内置 + 自定义)】;新增【我参与的】术语(团队成员且非负责人)。 +- **回填 `crm-preference/CONTEXT.md`**:新增【自定义视图】能力段(平台级、按 scope、用户私有、图钉默认视图);scope 清单增补 `opportunity.sales`。 +- **新增待办(Not yet specified / 后续实现票)**:自定义视图 `crm-preference` 契约方法签名 + `user_saved_view` 表 DDL(实现阶段);商机列表**可筛选列字段池清单**(确认点 3,字段池归商机模块,实现阶段列全)。 +- **明确 spin-out(本票不做)**:多组条件(`AND/OR` 复合)、高级公式 —— demo 标注后续迭代;本期契约按「条件列表」预留,前端只 1 组。 + +## Comments + +- 确认点回执(用户 2026-08-20):①「我参与的」= 团队成员且非负责人 —— **认可**;②自定义视图作用域 —— 目前只销售机会,但要灵活性、后续其他菜单也会有 → 落 `crm-preference` 平台能力按 scope;③检索字段 —— 用列表所有可筛选列;④先更新 spec(本票),不动代码。 diff --git a/.scratch/opportunity-module/map.md b/.scratch/opportunity-module/map.md index 8b76fd4..aaaf624 100644 --- a/.scratch/opportunity-module/map.md +++ b/.scratch/opportunity-module/map.md @@ -13,7 +13,7 @@ ### 交付物清单(对齐线索地图的阅读顺序) -1. **`商机业务-PRD.md`** — 端到端综合规格:两条轴(归属状态机 + 阶段模板)、归属、公海、关键流程、四视图、上下游集成。从这里开始读。 +1. **`商机业务-PRD.md`** ✅已产出 — 端到端综合规格(冻结自票 01–14):领域定义 / 商机主表 / 两条轴(归属状态机 + 阶段模板)/ 公海规则 / **视图体系(内置四视图 + 自定义视图)** / 详情子表族 / 上下游集成 / V-CONFIG 范式 / 字典清单 / 待确认索引。每条挂原型页码,供逐条核对。**从这里开始读。** 2. **`crm-opportunity/CONTEXT.md`** — 商机域领域语言(ubiquitous language)。 3. **`crm-rule/CONTEXT.md`(增补商机规则段)** — 商机规则三族的领域语言。 4. **`issues/01`–`13`** — 逐题决策底稿(票 13 = 商机-客户关联子表)。 @@ -50,6 +50,8 @@ - **商机-客户关联子表已定稿(票 13 resolved,原型 A3-1-1-1-1/-1-2 + A3-1-1-2-4)** — 新建实体 `opportunity_customer`(`crm-opportunity`):`customer_id`(引用 A4+名快照) / `customer_role`(→crm-dict 新增「客户角色」分组) / `is_primary_intended`(是否主要意向客户)。**产品拍板**:一商机多关联客户、**有且仅一个主要意向客户**;线索转商机填的意向客户→落为主客户;商机侧可加普通关联客户、可改主客户(切换标记)。约束:主客户唯一 + `UNIQUE(opportunity_id,customer_id)` + 无孤立。**联动**:主表冗余 `primary_customer_id`/名快照(票03 C3);方案卡一客户一卡 `UNIQUE`(票07);列表方案预算/状态列取主客户卡(票10 P0-4)。从“Not yet specified”钉死。**依赖**:`customer_id` 引用真实客户 + 下拉选客户能力挂 A4客户模块(未建,票11)。详见 `issues/13`。 +- **自定义视图 + 内置视图族已定稿(票 14 resolved,推翻/扩展票 10 视图组织,以 demo `保伦CRM系统demo-重构版-S1_0803.html` `oppModule` 为准)** — 销售机会工作区由「单一我负责的」改为**内置四视图**(`recent` 最近访问 / `mine` 我负责的 / **`participated` 我参与的(新,=团队成员且非负责人,与 mine 互斥)** / `followed` 我关注的)**+ 用户自定义视图**(保存的检索:名称+条件列表为空/不为空等6操作符+排序,可编辑/重命名/删除/图钉设默认)。**四大拍板**:①参与=团队成员且非负责人;②自定义视图**落 `crm-preference` 平台能力**(用户私有、按 `scope_key` 分组、与列偏好/ADR-0024 同构;新实体 `user_saved_view` + 契约 `list/save/delete/setDefault`;本期 scope=`opportunity.sales` 单一,后续菜单加 scope 即复用——产品确认“目前只销售机会、但要灵活性”);③内置视图固定不入库(口径硬编码在业务方);④自定义视图检索字段 = 列表所有可筛选列(字段池归商机模块)。管理/公海仍独立 workspace、本期不开自定义视图。**回填票 10**(视图组织改写,其余口径不变)+ **crm-opportunity/CONTEXT.md**(【四视图】→【视图(内置+自定义)】+新增【我参与的】)+ **crm-preference/CONTEXT.md**(新增【自定义视图】能力段 + scope 增 `opportunity.sales`)均已回写。spin-out:多组条件复合/高级公式(demo 标后续迭代,契约预留)。详见 `issues/14`。 + - **商机归属流转状态机已定稿(票 04 resolved)** — `opp_status` 5 态:`1 待领取(在公海)`/`2 推进中`(默认活跃)/`3 暂缓中`/`4 已关闭`(半终态可重启)/`5 已转项目`(绝对终态),对称线索 7 态而商机无导入分发/失效。迁移边:领取/分配(1→2)、抛公海(2→1)、暂缓(2→3)/取消暂缓(3→2)、关闭(2/3→4)/重启(4→2)、转项目(2→5)、移交(换 owner 不改 status、团队成员页、自环)。**无 owner guard**(可见即可点,票 01);移交权限靠入口位置不靠状态机 guard。CAS 乐观锁 + 每边写操作日志,对称线索 `LeadTransition`(sealed `OpportunityTransitionCmd` 体系)。已关闭=半终态唯一出边重启;已转项目=绝对终态无出边。**传出**:超时回收计时器/抛公海回哪个池 → 票 05;转项目端口 → A5。详见 `issues/04`。 - **目的地形态 = spec-only** — 对称线索地图,只产出决策/契约/领域模型,不写实现代码。(chart grill) - **数据可见性 = 复用 crm-auth DataScope** — 商机不新建可见性机制,套 `DataScopeEnum` / `DataScopeInterceptor` / ADR-0018 按模块可配。(chart grill) @@ -62,6 +64,8 @@ +- **自定义视图实现落地(票 14 传出)** — `crm-preference` 新契约方法签名 `list/save/delete/setDefault` + `user_saved_view` 表 DDL;商机列表**可筛选列字段池清单**(字段池归商机模块,实现阶段列全)。均为实现阶段工作,本 spec-only effort 不展开。 + - **客户关联子表的形态** — 已钉死为 **票 13**(见下 Decisions);仅“下拉选客户”数据源 + 客户联系人是否本子表冗余仍挂 **A4 客户模块(未建)** 边界(票 11 占位)。 - **商机批量操作与统计接口** — 对称线索 G1–G5(批量领取/分配/关注、列表统计卡片)。等主表 + 四视图定稿后再切成票。 - **商机相关字典项清单**(A7-3-2-6)— 行业 / 招标形式 / 关闭原因 / 暂缓原因 / 商机来源(含「线索转入」) / **商机类型** / **项目属地(本地/异地)** 等字典 code 清单(状态机票 04 + 字段票 03 已定稿,可汇总)。 diff --git a/.scratch/opportunity-module/产品待确认清单.md b/.scratch/opportunity-module/产品待确认清单.md index 384a6ed..e8888cd 100644 --- a/.scratch/opportunity-module/产品待确认清单.md +++ b/.scratch/opportunity-module/产品待确认清单.md @@ -1,7 +1,7 @@ # 商机模块 — 产品待确认清单 -> 生成自 `.scratch/opportunity-module/issues/01–12` 全部 ⚠ 待核项汇总。 -> **建模现状**:票 01–10 spec 已 resolved,下列待确认项**均不阻塞建模/表结构**(各票已给默认处置),仅在**落地实现前**须产品拍板。按「是否影响数据模型」分 P0/P1/P2 三档。 +> 生成自 `.scratch/opportunity-module/issues/01–14` 全部 ⚠ 待核项汇总。 +> **建模现状**:票 01–10 + 13/14 spec 已 resolved,下列待确认项**均不阻塞建模/表结构**(各票已给默认处置),仅在**落地实现前**须产品拍板。按「是否影响数据模型」分 P0/P1/P2 三档。 > 票 11/12 是实现票(改代码),另见文末。 --- @@ -69,6 +69,28 @@ - **依据**:原型 line 1745 给的是行为类别(字段变更/状态流转/附件/推送)非字段白名单;白名单是长期负债(加字段易漏审计),商机低频写全记扛得住且审计更全。 - **已落**:票 09(P6 写入点 + 待核项)。 +### ⚠ P1-6 归属起点计时初始化(E1/E2/两入口创建)— 挂起,待产品确认 +- **来源**:票 03/04/05 交叉缝隙(grill 20260821 发现,PRD §2.2/§3.2 已标注 ⚠) +- **问题**:回收公式 = `now − last_valid_follow_time ≥ recycle_days`,但该锚点在三处归属起点未统一初始化: + 1. **E1 领取**:已设 `claim_time` + 刷锚点=now(票 04) + 2. **E2 分配**:只设 `claim_time`,**不刷锚点**(票 04 疏漏) + 3. **两入口新建(线索转入/直接新建)**:出生即「推进中」+有负责人,不经过领取边,两字段均未定义(票 02 未提) +- **后果**:锚点为 NULL 时回收公式失效——分配/新建的商机若接手人从不跟进,将**永远不被回收**,回收机制有漏洞。 +- **候选方案**: + - A:四场景统一设 `claim_time=now` + 锚点=now(归属起点口径,锚点永不空,公式不改) + - B:只补 `claim_time`,公式改 `now − COALESCE(锚点, claim_time)` + - C:不补,锚点空不回收(有漏洞,不建议) +- **不阻塞建模**:两字段均已建表,仅侧效口径待定。 + +### ⚠ P1-7 暂缓期间子表可写范围 — 挂起,待产品确认 +- **来源**:票 04/09 缝隙(grill 20260821;原型 A3-1-1-2-6 只说「暂停部分推进动作和常规跟进提醒」,未枚举具体项) +- **问题**:暂缓中(3) 的流转限制已定(票 04:允许 E5 取消暂缓/E6 关闭/E9 移交;推进节点/转项目/抛公海需先取消暂缓),但**写跟进、方案卡/勘察/附件/关联客户/团队成员等子表写**是否允许,原型未明确。 +- **候选方案**: + - A:写跟进 + 子表写全部允许(仅推进节点/转项目/抛公海受限)——「暂停推进动作」≠禁记录留痕 + - B:写跟进允许、子表写禁 + - C:全禁只读(同关闭口径)——与原型「保留已有业务数据、暂停部分动作」不符 +- **已关闭(4) 不在此项内**:原型 A3-1-1-2-9 已明确(推进类隐藏/置灰/禁止、只读操作保留),已回填 PRD §3.3。 + ## P2 — 展示/交互口径 + 字典选项(可后置,不影响核心模型) ### P2-1 各类字典具体选项集(走 crm-dict) @@ -94,15 +116,28 @@ - **来源**:票 10(line 86) - **需产品定**:视角下拉「商机管理(领导)」的层级数据范围与 `@DataScope` 的精确映射。 -### P2-5 四视图默认排序 -- **来源**:票 10(line 87) -- **现状**:原型「建议按最近跟进/节点停留时间」等(预计成交时间列已删)。 -- **需产品定**:确定默认排序维度。 +### P2-5 视图默认排序 +- **来源**:票 10(line 87)/ 票 14 +- **现状**:原型「建议按最近跟进/节点停留时间」等(预计成交时间列已删)。自定义视图自带排序(票 14),内置视图默认排序仍待定。 +- **需产品定**:确定内置视图默认排序维度。 + +### P2-7 自定义视图(票 14)— 交互口径待确认 +- **来源**:票 14(demo 0803 `oppModule`) +- **已拍板**(票 14):内置视图四个(最近访问/我负责的/我参与的/我关注的,固定不可增删改);「我参与的」=团队成员且非负责人;自定义视图落 `crm-preference` 平台能力(用户私有、按 scope、本期 `opportunity.sales`);检索字段=列表所有可筛选列;图钉设默认视图。 +- **需产品定(不阻塞建模,落地前拍板)**: + - 每用户自定义视图**数量上限**(demo 无限制,前端 localStorage)。 + - **多组条件(AND/OR 复合)+ 高级公式**——demo 标注「后续迭代」,本期契约按条件列表预留、前端只 1 组;何时开放待产品定。 + - 自定义视图是否**仅个人私有**(票 14 定私有;是否需要「共享给团队/角色」为后续需求)。 + - 「商机管理」「商机公海」workspace 是否也开自定义视图(票 14 定本期不开)。 ### P2-6 公海规则数值样例 - **来源**:票 05(line 138) - **说明**:原型 recycle_days/remind_days = 30/7、45/7、20/5 均为**样例非验收值**,实际由规则配置录入,无需产品预先定死。 +### P2-8 grill 20260821 补录遗留项 +- **暂缓到期提醒渠道**:提醒对象=当前领取人已定(CONTEXT),到期不自动恢复、提醒后人工选 取消暂缓/继续暂缓/关闭已定;提醒发送渠道(站内信/短信/邮件)属平台通知基础设施,待平台通知能力确定时拍板。不阻塞建模。 +- 今日已拍板(已回填 PRD/CONTEXT):直接新建必填主要意向客户;公海规则锚点=商机 `owner_dept_id`、实时匹配当前发布版、已执行动作不回溯(版本快照写 oplog,PRD 补 §5.4);公海商机在管理视图按 DataScope 档位自然判定可见性;商机无删除动作;recent 视图任意详情皮肤都算访问;customer_role 全部选填;附件仅跟进限 10。 + --- ## 实现票(非 spec,待其他模块/编码阶段) diff --git a/.scratch/opportunity-module/商机业务-PRD.md b/.scratch/opportunity-module/商机业务-PRD.md new file mode 100644 index 0000000..477ce09 --- /dev/null +++ b/.scratch/opportunity-module/商机业务-PRD.md @@ -0,0 +1,636 @@ +# 商机业务 PRD + +> **版本**:V1.0(冻结自 spec effort `.scratch/opportunity-module`,票 01–14 全部 resolved) +> **用途**:给其他智能体 / 产品 / 开发按原型页逐条核对,每条决策挂原型页码。 +> **原型基准**:蓝湖 V1.0-20260815;demo `nginx/html/保伦CRM系统demo-重构版-S1_0803.html`。 +> **范围**:spec-only,不含实现代码。⚠ = 实现前须产品拍板的待确认项。 + +--- + +## §1 领域定义 + +**出处**:票 01 `domain-vocab-boundary`,原型 A3-x-x 总览。 + +### 1.1 什么是商机 + +商机(Opportunity)= 一条正在推进、准备转成项目的销售机会。 + +两条入口,进系统后**完全平权**(同样的流程 / 公海 / 视图,不因来路不同而区别对待): + +| 入口 | 说明 | 原型页 | +|---|---|---| +| **线索转入** | 销售在线索里跟进成熟后转成商机 | A3-1-1(线索详情转商机入口) | +| **直接新建** | 销售跳过线索,直接建一条商机 | A3-1-1-2-1 | + +直接新建时默认负责人 = 当前操作人(原型 A3-1-1-2-1 明证)。 + +### 1.2 两条正交轴 + +商机同时有两个独立维度,**不互相干扰**: + +| 轴 | 字段 | 通俗解释 | 原型对应 | +|---|---|---|---| +| **轴 1 归属流转状态** | `opp_status`(tinyint,5 态) | 这条商机归谁、现在处于什么归属处境 | 详情顶部「商机状态:推进中」A3-1-1-1-1 | +| **轴 2 业务阶段** | `current_stage_id`(指向节点) | 业务打法走到第几步 | 详情进度条 A3-1-1-1-1;阶段设置 A7-3-2-1 | + +> 一句话:**「状态」管归属,「阶段」管业务打法**。 + +### 1.3 核心角色 + +| 角色 | 定义 | 字段 | +|---|---|---| +| **负责人(领取人)** | 当前持有该商机的销售,归属 + 默认可见性双重含义 | `owner_user_id` | +| **团队成员** | 负责人拉入协作的人员,带项目角色(商机负责人 / 方案工程师 / 招标专员 / 现场工程师等)与权限(读写 / 只读 / 可写跟进 / 可推进节点等);是行级授权白名单,绕开 DataScope 部门天花板 | `opportunity_team`(关联表) | +| **创建人** | 全生命周期不变 | `creator_user_id` | + +- 抛公海只清空负责人,**不动团队成员**(产品明确,票 01)。 +- 转商机时自动插一条团队成员:领取人 = 商机负责人(票 02)。 +- **权限模型**:按钮可见即可点,权限全由权限点配置决定,与「是否负责人」无关(票 01 产品明确)。 + +### 1.4 模块边界 + +``` +crm-opportunity → crm-rule(阶段模板 / 方案卡模板 / 公海规则,零反依赖) + → crm-auth(DataScope / SysUser) + → crm-dict(字典码) + → crm-file(附件上传) + → crm-preference(列偏好 / 自定义视图) +``` + +商机规则(阶段模板 / 方案卡模板 / 公海规则 / 字典)住 `crm-rule`,商机模块只消费。 + +--- + +## §2 商机主表 + +**出处**:票 03 `opportunity-main-table`,原型 A3-1-1-2-1(新增表单)。 + +### 2.1 新增必填字段(原型 A3-1-1-2-1) + +| 字段 | 类型 | 必填 | 说明 | +|---|---|---|---| +| `opp_name` 商机名称 | varchar(200) | ✅ | | +| `opp_source` 商机来源 | varchar(64) 字典码 | ✅ | 渠道归因;线索转入时默认置「线索转入」 | +| `opp_type` 商机类型 | varchar(64) 字典码 | ✅ | | +| `industry_code` 行业 | varchar(64) 字典码 | ✅ | | +| `bid_form` 招标形式 | varchar(64) 字典码 | ✅ | | +| `locality_type` 项目属地 | varchar(64) 字典码 | ✅ | 本地/异地分类标签,非地理坐标 | +| `party_a_clear` 甲方是否明确 | tinyint 0/1 | ✅ | | +| `party_a` 甲方名称 | varchar(200) | 条件必填 | `party_a_clear=1` 时必填 | +| `province_code` 省份 | varchar(12) | ✅ | | +| `city_code` 市/区 | varchar(12) | ✅ | 既可填市码也可填区/县码,不单建 `district_code` | +| `remark` 备注 | text | ✕ | | +| `project_amount` 项目金额 | decimal(14,2) | ✕ | 项目整体总包金额,选填可后补;默认人民币元,不建币种字段(Amendment 1) | +| 意向客户(主要意向客户) | — | ✅ | 表单项,落 `opportunity_customer` 首条(`is_primary_intended=1`)+ 主表冗余快照;**两条入口均必填**(grill 补拍 20260821,与票 02 `customerId` 必填对齐);数据源依赖 A4 ⚠ | + +### 2.2 系统生成字段 + +| 字段 | 类型 | 说明 | +|---|---|---| +| `opp_status` | tinyint | 归属流转状态(轴 1),见 §3 | +| `owner_user_id` 负责人 | bigint | 抛公海后清空 | +| `owner_name_snapshot` 负责人姓名快照 | varchar(100) | 调岗不自动更新 | +| `owner_dept_id` 负责人部门快照 | bigint | 公海可见范围锚点;调岗不变 | +| `creator_user_id` 创建人 | bigint | 全生命周期不变 | +| `claim_time` 领取时间 | datetime | 领取/分配时设;⚠ 两入口新建是否初始化待产品确认(P1-6) | +| `last_valid_follow_time` 最近有效跟进时间 | datetime | 自动回收计时锚点(票 05);有效跟进(写跟进记录/上附件/编辑字段)时刷新;⚠ 分配/新建/转入是否刷锚点待产品确认(P1-6,锚点为 NULL 时回收公式失效) | +| `current_stage_id` 当前阶段 | bigint | 指向 `opportunity_stage_node.id`(版本绑定,票 06) | +| `stage_template_id` 阶段模板版本 | bigint | 存模板版本行 id,锁死,发新版不自动迁移(票 06) | +| `stage_template_version` 模板版本号冗余 | varchar(20) | 展示用,免 join(如 V1.2) | +| `source_lead_id` 来源线索 | bigint UNIQUE | 幂等键;NULL 不参与唯一(直接创建可多条 NULL) | +| `pool_reason` 进入公海原因 | varchar(32) | 抛公海/回收时写(见 §3.2);公海列表筛选 | +| `primary_customer_id` 主要意向客户 id | bigint | 冗余快查,= 关联客户表 `is_primary_intended=1` 那条 | +| `primary_customer_name_snapshot` 主客户名快照 | varchar(200) | 列表/详情顶部免 join | + +继承 `BaseEntity`(id / create_time / update_time / creator / updater / 逻辑删除)。 + +### 2.3 DataScope 注解 + +```java +@DataScope(module = "opportunity", ownerColumn = "owner_user_id", deptColumn = "owner_dept_id") +``` + +### 2.4 核心索引 + +| 索引 | 用途 | +|---|---| +| `UNIQUE idx_source_lead (source_lead_id)` | 一条线索只能关联一条商机(幂等键) | +| `idx_owner_status (owner_user_id, opp_status)` | 「我负责的」视图 | +| `idx_owner_dept_status (owner_dept_id, opp_status)` | 公海视图 + 部门天花板 | + +### 2.5 不建的字段(已明确排除) + +- ~~`pool_id`~~:票 05 定稿删——商机域无独立池实体,公海 = 逻辑视图 +- ~~`dept_id`~~:只用 `owner_dept_id` 快照做 DataScope 天花板 +- ~~`recycle_deadline`~~:票 05 推翻,改为 `last_valid_follow_time` 实时算 +- ~~`预计成交时间`~~:产品二次拍板——商机主表不建、商机列表不展示;仅方案卡内部字段(票 07/10) + +--- + +## §3 归属流转状态机(轴 1) + +**出处**:票 04 `ownership-state-machine`,原型 A3-1-1-1-1 / A3-1-1-2-x。 + +### 3.1 状态取值域(`opp_status` tinyint) + +| 值 | 常量 | 名称 | 说明 | 终态 | +|---|---|---|---|---| +| 1 | `STATUS_IN_POOL` | 待领取(在公海) | 无人持有,躺在商机公海 | ✕ | +| 2 | `STATUS_ADVANCING` | 推进中 | 有负责人、正常推进 | ✕ | +| 3 | `STATUS_PAUSED` | 暂缓中 | 短期挂起,保留负责人 | ✕ | +| 4 | `STATUS_CLOSED` | 已关闭 | 只读锁定,可重启 | 半终态 | +| 5 | `STATUS_CONVERTED` | 已转项目 | 锁死,无任何出边 | **终态** | + +### 3.2 迁移边全图 + +| # | 动作 | Cmd | 起始态→目标态 | 侧效摘要 | 原型页 | +|---|---|---|---|---|---| +| E1 | 领取 | `ClaimCmd` | 1→2 | 设 owner + 部门/姓名快照 + `claim_time`;刷新 `last_valid_follow_time`=now | A3-3-1-1(公海领取) | +| E2 | 分配 | `AssignToUserCmd` | 1→2 | 设 owner=指派对象 + 快照 + `claim_time`;⚠ 是否刷 `last_valid_follow_time` 待产品确认(P1-6) | A3-2-1(管理页分配) | +| E3 | 抛公海 | `ReleaseToPoolCmd` | 2→1 | 清 `owner_user_id` + `owner_name_snapshot` + `claim_time`;**`owner_dept_id` 保留**(公海可见范围锚点,票 05);记 `pool_reason`(销售主动释放/特殊原因暂停/领导释放);保留 `current_stage_id` 供公海展示;**不动团队成员**;入口受规则 `allow_manual_pool` 开关控制 | A3-1-1-2-7 | +| E4 | 暂缓 | `PauseCmd` | 2→3 | 保留 owner + 团队;记暂缓原因(字典) + 预计重启日期(必填≥今天) + 补充说明 | A3-1-1-2-6 | +| E5 | 取消暂缓 | `ResumeCmd` | 3→2 | 保留 owner;回暂缓前阶段(阶段字段未动);清暂缓附加字段 | A3-1-1-2-6(取消按钮) | +| E6 | 关闭 | `CloseCmd` | 2,3→4 | 保留 owner(只读锁定);记关闭原因(字典) + 补充说明(选「其他」时必填) + 确认勾选 | A3-1-1-2-9 | +| E7 | 重启 | `ReopenCmd` | 4→2 | 保留 owner;记重开原因(必填);统一回「推进中」 | A3-1-1(重新开启入口) | +| E8 | 转项目 | `ConvertToProjectCmd` | 2→5 | 保留 owner(锁死);对接 A5 项目模块(本模块只占端口) | A3-1-1-2-x(转项目) | +| E9 | 移交 | `HandoverCmd` | 2,3→自环 | 换 owner = 移交对象 + 姓名/部门快照同步刷新(`owner_dept_id` 换为移交对象部门,公海规则匹配锚点跟人走,grill 补拍 20260821);`claim_time` 不重置;入口在团队成员页 | A3-1-1-1-8(团队成员 Tab) | +| E10 | 超时回收 | `executeRecycle` | 2→1(批量) | 清 `owner_user_id` + `owner_name_snapshot` + `claim_time`;`owner_dept_id` 保留定公海可见范围;`pool_reason`=超期回收;保留 `current_stage_id` 快照;暂缓中(3)**不参与回收**;实际执行的规则版本快照写 `opportunity_oplog`(§5.4) | 后台 Job | + +> **「领导释放」**(E3 变体)= 管理侧强制抛公海,操作人 ≠ owner,`pool_reason`=领导释放(原型 A3-2-1 管理页)。 + +### 3.3 受限态出边约束 + +| 状态 | 禁止的动作 | +|---|---| +| 已关闭(4) | 仅允许 E7 重启;暂缓/抛公海/关闭/转项目/写跟进/推进节点 全禁;**整商机只读、所有子表写全禁**(原型 A3-1-1-2-9:推进类隐藏/置灰/禁止,只读操作保留) | +| 已转项目(5) | **无任何出边**,全禁 | +| 暂缓中(3) | 允许 E5/E6/E9;推进节点/转项目 受限(需先取消暂缓);⚠ 写跟进/子表写是否允许待产品确认(P1-7) | + +> **无删除动作**(grill 补拍 20260821):商机不提供删除接口,终法只有关闭(→4)/转项目(→5),历史数据(含子表)永不删。 + +### 3.4 守卫与 CAS + +- **无「操作人==负责人」guard**:商机侧详情页顶部操作区动作可见即可点,权限全由权限点决定(票 01 产品明确)。 +- CAS 乐观锁:每条迁移边在 `WHERE id=? AND opp_status IN (合法起始态)` 执行;更新 0 行抛 `CODE_STATUS_NOT_ALLOWED`。 +- 移交 E9 CAS:`WHERE id=? AND opp_status IN (2,3) AND owner_user_id=?原owner`(防并发移交/抛公海竞态)。 +- 操作日志(P6):每条 Cmd 执行后 INSERT 一条 `opportunity_oplog`,含动作类型/操作人/时间/附加说明。 + +### 3.5 `pool_reason` 枚举(进入公海原因) + +| 值 | 触发边 | 说明 | +|---|---|---| +| 销售主动释放 | E3(销售本人操作) | | +| 特殊原因暂停 | E3(销售本人操作,特殊原因) | | +| 领导释放 | E3(管理侧操作,操作人≠owner) | | +| 超期回收 | E10 `executeRecycle` | 自动 Job | + +公海列表可按 `pool_reason` 筛选(原型 A3-3-1 筛选项)。 + +--- + +## §4 业务阶段轴(轴 2) + +**出处**:票 06 `stage-template-versioning`,原型 A7-3-2-1(商机阶段设置,列表/详情/新增 3 页)。 + +### 4.1 模型分层 + +- **模板 + 节点住 `crm-rule`**(版本化配置,遵 V-CONFIG 范式,见 §9)。 +- **运行时位置 + 版本快照住 `crm-opportunity`**(主表 `current_stage_id` + `stage_template_id` + `stage_template_version`)。 + +### 4.2 阶段模板头表 `opportunity_stage_template`(crm-rule) + +| 字段 | 类型 | 必填 | 说明 | +|---|---|---|---| +| `template_code` 模板编码 | varchar(64) | ✅ | 系统生成(如 `OPP_GUIDE_01`),同模板多版本共用,只读 | +| `version_no` 版本号 | varchar(20) | ✅ | 系统生成(V1.0/V1.1…),只读 | +| `status` 状态 | tinyint | ✅ | 1=草稿 / 2=发布中 / 3=已停用 | +| `apply_scope` 适用范围 | tinyint | ✅ | 1=所有商机 / 2=指定部门(两档单选,本期不做「指定业务类型」档) | +| `is_default` 是否默认 | tinyint | ✅ | 同「适用范围+适用对象」内唯一 | +| `template_desc` 模板说明 | varchar | ✕ | | + +- **适用对象子表** `opportunity_stage_template_dept`(apply_scope=2 时,适用部门多值)。apply_scope=1 → 无适用对象(原型「适用对象展示 --」)。 + +### 4.3 阶段节点表 `opportunity_stage_node`(crm-rule,从属模板版本) + +| 字段 | 类型 | 必填 | 说明 | +|---|---|---|---| +| `template_id` 所属模板版本 | bigint | ✅ | → `opportunity_stage_template.id`(版本级,每版本一套节点快照) | +| `seq_no` 阶段序号 | int | ✅ | 推进顺序(轨道图左→右),增删/拖拽后系统重算 | +| `stage_dict_code` 阶段字典值 | varchar(64) | ✅ | 引用「商机阶段」字典分组项(如 `OPP_STAGE_04`),引用关系,自定义名不反写字典 | +| `custom_node_name` 自定义节点名称 | varchar(100) | ✕ | 本模板实际展示名,空则带入字典名 | +| `is_fixed` 固定节点 | tinyint | ✅ | 1=固定(「已转项目」)/ 0=普通 | + +### 4.4 「已转项目」固定节点 × 轴 1 联动 + +- 「已转项目」是每个模板的**固定节点**(`is_fixed=1`,字典值固定 `OPP_STAGE_05`),配模板时自带、**不可删**(原型校验「除固定节点外至少创建一个阶段节点」),且**不可拖到非末位**(语义要求,落地校验)。 +- 商机中任一方案卡转项目 → 触发轴 1 转项目终态(E8)+ 轴 2 落到固定节点。 + +### 4.5 绑定与不迁移(V-CONFIG 12) + +- 商机绑定模板时记录**具体版本**(`stage_template_id` = 版本行 id)。 +- 模板发新版后,**在途商机继续用原版本,不自动迁移**;新建/重新匹配的商机用当时**最新发布版本**(按适用范围匹配)。 +- 新建默认落首节点(客户圈定)。 + +⚠ P2-5:默认排序维度待产品定(建议最近跟进时间倒序)。 + +--- + +## §5 商机公海规则 + +**出处**:票 05 `opportunity-pool-rules`,原型 A7-3-2-5(3 页一手正文)。 + +> **重要**:商机公海规则 = **版本化规则配置**(遵 V-CONFIG),**非线索的 `lead_pool` 池实体**。商机域**无独立池实体**——「公海」= `opp_status=1 且 owner 为空` 的逻辑视图,可见范围由 `owner_dept_id` + 匹配规则适用范围判定。 + +### 5.1 规则表 `opportunity_pool_rule`(crm-rule,版本化) + +同一 `rule_code` 一套规则、多版本,每版本一行。核心配置五项: + +| 字段 | 类型 | 必填 | 说明 | +|---|---|---|---| +| `rule_code` 规则编码 | varchar(64) | ✅ | 系统生成(如 `POOL_RULE_01`),同规则多版本共用 | +| `version_no` 版本号 | varchar(20) | ✅ | 系统生成,只读 | +| `apply_scope` 适用范围 | tinyint | ✅ | 1=所有商机 / 2=指定部门 | +| **① `allow_manual_pool`** 允许负责人手动转入公海 | tinyint | ✅ | 0/1,控制「抛公海」入口是否对负责人开放 | +| **② `auto_recycle_enabled`** 启用自动回收 | tinyint | ✅ | 0/1 | +|   `recycle_days` 自动回收天数 N | int | ⚠ | `auto_recycle_enabled=1` 时必填;>0;连续未有效跟进达 N 天回收 | +| **③ `allow_free_claim`** 允许自由领取 | tinyint | ✅ | 0/1,控制适用范围内销售能否自领 | +| **④ `recycle_remind_enabled`** 回收前提醒 | tinyint | ✅ | 0/1,仅 `auto_recycle_enabled=1` 时可开 | +|   `remind_days` 提前提醒天数 | int | ⚠ | `recycle_remind_enabled=1` 时必填;>0 且 **< recycle_days**(原型硬校验) | + +### 5.2 版本约束 + +- 同一 `rule_code` 同时**仅一个草稿 + 仅一个发布中**。 +- **复制** = 生成独立新规则(新 `rule_code`,非后续版本)。 + +### 5.3 领取 / 回收行为 + +| 场景 | 行为 | +|---|---| +| `allow_free_claim=1` | 适用范围内且具备公海权限的销售可自领;领取成功 owner=领取人,记录领取时间/人/规则版本(E1) | +| `allow_free_claim=0` | 无自领入口,只能管理员分配(E2) | +| `auto_recycle_enabled=1` | 回收锚点 = `last_valid_follow_time`;连续未有效跟进天数 = now − 锚点,≥ `recycle_days` 触发 E10 自动回收 | +| 暂缓中(3) | **不参与回收**,回收计时暂停;取消暂缓回推进中后按剩余天数续算 | +| `recycle_remind_enabled=1` | 提醒时间 = 预计回收时间 − `remind_days` | + +- **有效跟进**(刷新锚点)= 写跟进记录 / 上附件 / 编辑字段(非浏览),票 09 联动。 + +### 5.4 规则版本:实时匹配 vs 锅版本(关键区分) + +**公海规则与阶段模板的版本口径不同**,核对时切勿混淆: + +| | 阶段模板(§4) | 公海规则(本节) | +|---|---|---| +| 绑定方式 | 主表存 `stage_template_id`(版本行 id),**锁死版本** | 商机**不存**规则 id,只存 `owner_dept_id` | +| 发新版 | 在途商机**继续用原版本,不迁移**(V-CONFIG 12) | **待处理判断实时按当前发布中的版本** | +| 典型场景 | 商机“走什么打法”,中途换会打乱在途流程→锁版 | “谁能碰这个部门公海”的当下策略,改规则就是要立刻生效→实时 | + +**口径(产品拍板,原型 A7-3-2-5):** + +1. **“谁能看/谁能领”判断→用当前发布中的版本。** 池里商机无需“迁移”:拿 `owner_dept_id` 实时匹配当前发布中规则。管理员发新版(如关掉自由领取 / 新增部门专属规则圈进该商机)→ **立即对存量公海商机生效**。 +2. **历史动作不重算(原型明写):** 已完成的领取/回收/提醒**锁旧版快照**,发新版不回溯。例:旧规则下已被领走的商机,不因发新版而撤销。 +3. **版本快照落操作日志(已定):** 领取/回收时把实际执行的规则版本写进 `opportunity_oplog`(票 09),**不上主表**(一商机多次领/回收,主表存不下历史)。作用:查旧账(说清“当时凭哪版规则领/回收”)+ 落实口径 2 “历史不重算”。 + +⏩ **一句记忆:公海规则跟着商机的部门、按当下发布中版本实时算;阶段模板锁版不迁移。** + + +⚠ P2-6:原型 recycle_days/remind_days 样例值(30/7、45/7、20/5)非验收值,由规则配置录入。 + +### 5.4 规则匹配与执行语义(票 05「三」补抄,grill 20260821 核对) + +- **匹配锚点 = 商机自身的 `owner_dept_id`**(规则跟着商机走,不跟查看人部门走):按该部门匹配 `apply_scope=2 且部门命中` 的发布中规则;匹配不到 → 发布中的所有部门通用默认规则兑底;部门专用 > 通用默认,发布约束保证唯一命中。专属规则同时决定该商机在公海**谁能看到、谁能领**(适用部门外不可见不可领)。 +- **实时匹配,不锁版本**:公海规则**不存于商机主表**,查看/领取/回收时拿 `owner_dept_id` 实时匹配**当前发布中**版本。管理员发新版立即对在池商机生效(如关掉「允许自由领取」→ 立刻不能自领)。⚠ 与阶段模板口径相反(阶段模板主表存 `stage_template_id` 锁死版本不迁移;公海规则实时匹配)。 +- **已完成的动作不重算,不回溯**:旧规则下已领走/已回收的记录继续关联原规则版本(原型 A7-3-2-5 明写)。 +- **落库手段**:每笔领取/回收把当时实际执行的**规则版本快照写操作日志 `opportunity_oplog`**,不上主表(一条商机会多次领/回收,主表只能存最新一次;存档 research-a7325 line 533/1097/1832)。 + +--- + +## §6 视图体系 + +**出处**:票 10 `four-views-query` + 票 14 `custom-views-and-builtin-view-family`,原型 A3-1-1/A3-2-1/A3-3-1/A3-0-1;demo 0803 `oppModule`。 + +### 6.1 三个工作区(workspace) + +| 工作区 | 数据范围 | 原型 | 自定义视图 | +|---|---|---|---| +| **销售机会**(个人) | 见 6.2 内置视图 + 自定义视图 | A3-1-1 | ✅ 本期开 | +| **商机管理** | 按 `@DataScope` 可见范围(复用 crm-auth,不自建数据权限) | A3-2-1 | 本期不开 | +| **商机公海** | `opp_status=1 且 owner 空` 逻辑视图 + 匹配公海规则适用范围 | A3-3-1 | 本期不开 | + +> **公海商机在管理视图的可见性**(grill 补拍 20260821):owner 空但 `owner_dept_id` 保留作 DataScope 部门锚点,按查看者档位自然判定——全部档可见;部门档看 `owner_dept_id` 是否在其可见部门集合;仅本人档永不可见(owner 空 ≠ 本人)。故 E2 分配入口(管理页)对全部/部门档管理员数据可达,无需去公海页。 + +> 视图不是状态切片:同一商机可同时出现在多视图(如自己负责 + 最近访问过)。 + +### 6.2 销售机会工作区 — 内置四视图(「常用检索」Tab,固定不可删/改) + +| code | 名称 | 数据范围 | +|---|---|---| +| `recent` | 最近访问 | 当前用户打开过详情的商机,访问时间倒序、按商机 id 去重留最新,上限可配置(本期默认 50);「访问」= 调用详情聚合接口,任意皮肤(个人/管理/公海)都算(grill 补拍 20260821) | +| `mine` | 我负责的销售机会 | `owner_user_id = 当前用户` | +| `participated` | 我参与的销售机会 | **团队成员且非负责人**:`EXISTS(opportunity_team WHERE opportunity_id=? AND user_id=当前用户) AND owner_user_id <> 当前用户`;与 `mine` 互斥 | +| `followed` | 我关注的销售机会 | 当前用户关注表 `opportunity_focus` 命中(§7.8) | + +### 6.3 销售机会工作区 — 自定义视图(「自定义检索」Tab) + +用户保存的检索,加入常用检索列表(排在内置四视图之后)。一个自定义视图 =: + +- **检索名称**(同一用户同一 scope 内唯一) +- **检索条件**:条件列表 `[{field, operator, value}, …]` + - `field` ∈ **列表所有可筛选列**(字段池归商机模块定义) + - `operator` ∈ `等于 / 不等于 / 包含 / 不包含 / 为空 / 不为空` + - 本期前端只提交 1 组条件;契约按列表建模,预留多组(AND/OR)/ 高级公式扩展位 +- **排序条件**:排序字段(∈字段池)+ 方向(asc/desc) + +**生命周期动作**(用户私有):保存为常用检索 / 另存为新检索 / 编辑保存 / 重命名 / 删除(删当前视图回落 `mine`)。 + +**默认视图(图钉)**:每个视图(内置四 + 自定义任一)可图钉设为该用户在此 scope 的默认视图,用户级单值;未设默认 → `mine`。 + +### 6.4 落 crm-preference 平台能力 + +- 自定义视图 = `crm-preference` 平台级能力(与「列偏好」并列),按 `scope_key` 分组、用户私有,对齐 ADR-0024「每菜单独立」。 +- 新实体 `user_saved_view(user_id, scope_key, view_id, name, filter_json, sort_field, sort_direction, is_default, seq_no)`;`filter_json` 序列化条件列表;`crm-preference` 不校验字段合法性(字段池归业务方)。 +- 本期 scope = **`opportunity.sales`**(单一);后续菜单加 scope 即复用(产品确认「目前只销售机会、但要灵活性」)。 +- **内置视图不入库**——口径硬编码在业务方,本表只存用户自建视图。 +- 契约:现有列偏好 `get/save` 之外,为自定义视图加 `list / save / delete / setDefault`(方法签名留实现阶段定)。 + +### 6.5 列表字段(个人/管理/最近访问共用基础列) + +序号 / 选择框 / 商机名称 / 甲方 / 意向客户 / 行业 / 地区 / 预计金额 / **当前工作节点** / **节点停留时间** / **最近跟进** / **下一节点** / **方案卡状态** / 操作。 + +**计算列口径(不冗余存,实时算/join):** + +| 列 | 口径 | +|---|---| +| 当前工作节点 | `current_stage_id` 对应节点名 | +| 下一节点 | 模板中当前节点的下一 `seq_no` 节点(展示用「建议下一步」) | +| 节点停留时间 | 今 − 进入当前节点日期(`opportunity_stage_history` 最新 to_time) | +| 最近跟进 | 最新 `opportunity_follow.create_time`;无则 `--` | +| 方案卡状态 | 取**主要意向客户**(`is_primary_intended=1`)那张方案卡的 `card_status`;无 → 「未创建」 | +| 方案预算 | 取主要意向客户那张方案卡的 `scheme_budget`;无则空 | +| 预计金额 | 主表 `project_amount` | +| 当前负责人 | `owner_user_id` 反查;**个人页默认隐藏**,管理/公海显示 | + +### 6.6 各视图差异 + +| 视图 | 专属列 | 操作按钮 | 新增入口 | +|---|---|---|---| +| 个人 A3-1-1 | 负责人默认隐藏 | 详情 / 写跟进 | **有**「+新增商机」(默认归当前用户) | +| 管理 A3-2-1 | 负责人显示 | 详情 / 分配 / 催办 / 关闭 + 批量催办/分配/关注/领导释放 | 无 | +| 公海 A3-3-1 | 入池前工作节点 / 进入公海原因 / 当前负责人 | 详情 / 关注 / 领取 + 批量领取/关注 | 无 | +| 最近访问 A3-0-1 | 按访问时间排序 | 详情 / 写跟进 / 关注 / 领取(按角色+商机态动态) | 无 | + +### 6.7 详情三皮肤 + +同一详情聚合,按视角展示不同操作区,**非三套数据**。Tab 结构一致(概览/客户信息/方案卡/现场勘察/相关附件/跟进记录/工作计划/团队成员/操作日志);差异在头部操作按钮 + 进入权限: + +- 个人 A3-1-1-1:写跟进/编辑/暂缓/抛公海/关闭/新增方案卡 +- 管理 A3-2-1-1:+ 分配/催办/关闭/督办 +- 公海 A3-3-1-1:领取/关注,无跟进/推进入口(未领取不可推进) + +⚠ P2-4:管理视角「领导 ▾」层级数据范围与 `@DataScope` 精确映射待实现阶段定。 +⚠ P2-7:自定义视图数量上限 / 多组条件开放时机 / 是否支持共享 待产品定。 + +--- + +## §7 详情子表族 + +### 7.1 关联客户 `opportunity_customer` + +**出处**:票 13 `opportunity-customer-relation`,原型 A3-1-1-2-4。 + +| 字段 | 类型 | 必填 | 说明 | +|---|---|---|---| +| `opportunity_id` | bigint | ✅ | 所属商机 | +| `customer_id` | bigint | ✅ | 引用客户(A4 客户模块,⚠ 未建) | +| `customer_role` | varchar(32) | ✕ | 客户角色(机电总包/工程商/集成商…)→ crm-dict「客户角色」分组;全部选填(grill 补拍 20260821) | +| `is_primary_intended` | tinyint 0/1 | ✅ | 是否主要意向客户,一商机唯一 =1 | + +- 线索转商机填的「意向客户」→ 落 `is_primary_intended=1`;商机侧添加普通关联客户 → `is_primary_intended=0`。 +- 约束:`UNIQUE(opportunity_id, customer_id)`(一客户一商机只关联一次);主要意向客户唯一(应用层事务 + 部分唯一索引)。 + +### 7.2 方案卡 `opportunity_scheme_card` + +**出处**:票 07 `scheme-card`,原型 A3-1-1-1-3 / A7-3-2-2/3。 + +- **一客户一卡**:`UNIQUE(opportunity_id, customer_id)`;每张卡必挂一个当前商机下的关联客户(无孤立卡)。 +- **状态机**:`草稿1 / 已提交2 / 已推送3`(「未创建」= 0 卡展示态,不入库)。 + - 保存草稿 → 草稿;确认 → 已提交(核心字段锁);推送 A7-3-2-3 → 已推送。 +- **可编辑性**:草稿(1)/已提交(2) 均可改全部字段;仅已推送(3) 整卡只读(`card_status < 3` 可编辑),要改新建卡。不做字段级锁。 + +| 关键字段 | 说明 | +|---|---| +| `card_status` | 草稿1/已提交2/已推送3(tinyint) | +| `scheme_budget` | 方案预算金额 decimal(14,2);商机列表「方案预算」列取主要意向客户卡的此值 | + +**模板驱动动态字段**: +- 模板头 `opportunity_scheme_card_template`(版本行,遵 V-CONFIG)+ 适用对象子表 `_template_dept` + 字段项 `opportunity_scheme_card_field`(有序)。 +- 字段定义库 `opportunity_scheme_field_def`(crm-rule,**自建不复用 crm-dict**):`field_key/field_name/field_type(控件类型)/option_source/ref_target/autofill_source/default_value/is_deletable`。**组合式**:单选下拉类字段的选项集可 `option_source=dict_group_code` 引用 crm-dict 分组。 +- 运行时值 `opportunity_scheme_card_value(card_id, field_key, field_value)`(随模板字段)。 +- 「预计成交时间」是方案卡内部字段(非商机主表、非列表列,票 10)。 + +**模板选择与锁定(grill 补拍 20260821)**: +- 创建方案卡时**手动选模板版本**(不自动匹配,产品明确)。 +- 候选范围 = 模板适用范围命中**商机 `owner_dept_id`**(所有商机档 + 指定部门命中档)的**「发布中」版本**;草稿/停用版本不可选。 +- 选定后卡存 `card_template_id`(版本行 id)**锁版本**,模板发新版后在途卡继续用原版(V-CONFIG 7),不自动迁移。 + +### 7.3 现场勘察 `opportunity_site_survey` + +**出处**:票 08 `site-survey`,原型 A3-1-1-1-4。 + +| 字段 | 必填 | 说明 | +|---|---|---| +| `survey_date` 现场勘察日期 | ✅ | | +| `engineer_user_id` 主要工程师 | ✅ | 引用 crm-auth SysUser;列表展姓名/部门/联系方式(脱敏,反查不冗余存) | +| `apply_way` 申请方式 | — | 引用字典 | +| `survey_seq` 勘察次数 | — | 引用字典 | +| `apply_no` 申请单号 | — | | + +- 勘察附件走统一附件表(`biz_type=SITE_SURVEY` + `biz_id`)。 + +### 7.4 跟进记录 `opportunity_follow` + +**出处**:票 09 P2,原型 A3-1-1-1-6 / 写跟进 A3-1-1-2-2。 + +- 字段 + `opp_id` + BaseEntity(create_by/create_time = 记录人/时间)。 +- 跟进附件 → 附件子表 `biz_type=FOLLOW_UP`,最多 10 个。 +- **保存跟进 → 刷新商机「最近跟进」 + `last_valid_follow_time`**(回收锚点刷新点,票 05 联动)。 + +### 7.5 附件 `opportunity_attachment`(统一表) + +**出处**:票 09 P4,原型 A3-1-1-1-5,复用 crm-file。 + +- **一张附件表** + `biz_type` + `biz_id` 定位,不为每个子表各建附件表。 +- `biz_type` 枚举:`OPP`(商机通用) / `FOLLOW_UP`(跟进) / `SITE_SURVEY`(勘察) / `SCHEME_CARD`(方案卡) … +- 数量上限:**仅跟进附件限 10 个/条**(原型明画);其余 biz_type 不设业务上限,由 crm-file 层统一管控(grill 补拍 20260821)。 +- 附件归属商机(无孤立附件,硬约束);文件本体走 crm-file,本表存资料类型/说明/上传人/时间。 + +### 7.6 工作计划 `opportunity_work_plan`(结构 only) + +**出处**:票 09 P5,原型 A3-1-1-1-7。 + +- 🅿️ **工作计划 = 独立业务模块 A1X,本期挂起**(产品拍板 P1-4)。本商机模块**只保留子表结构与归属契约**(多条/归属商机/内容/deadline/plan_status/finish_time)。 +- `plan_status`:未完成0/已完成1(逾期=未完成且 now>deadline,实时算)。**精确态枚举、状态机、与跟进联动、Tab 读中央模块** 全归 A1X 模块定。 + +### 7.7 操作日志 `opportunity_oplog` + +**出处**:票 09 P6,原型 A3-1-1-1-9。 + +- **字段级变更审计**:实体对象/字段名称/旧值/新值/操作说明/来源(系统自动 vs 人工)/时间/操作人。普通用户只读。 +- **与线索 `lead_history` 口径不同**:线索是动作枚举+JSON,商机是字段级旧新值审计。 +- 状态/阶段迁移另有专用快照表 `opportunity_status_history` / `opportunity_stage_history`,与本通用审计并存不重。 + +### 7.8 关注 `opportunity_focus` + +**出处**:票 14 视图引用,grill 补拍 20260821(新建,PRD 此前引用未定义的表)。 + +- **纯收藏夹语义,不带通知**(通知属平台通知基础设施,未建;后续要通知再加字段,grill 补拍 20260821)。 +- 字段:`opportunity_id` + `user_id` + BaseEntity;约束 `UNIQUE(opportunity_id, user_id)`。 +- 关注/取关无需原因、物理删行即可(关注不是审计对象,不入 oplog)。 +- 「我关注的」视图 = 该表命中当前用户;管理/公海/最近访问视图的「关注」按钮读写此表。 + +--- + +## §8 上下游集成 + +### 8.1 线索 → 商机(消费线索侧 port) + +**出处**:票 02 `lead-port-consumer-contract`,原型 A3-1-1(线索转商机)。 + +- 线索侧提供 `CreateOpportunityCmd`(out-port),商机模块消费,转商机时自动带 `source_lead_id`。 +- **契约变更(票 02 拍板,票 11 实现)**:`CreateOpportunityCmd` 新增 `customerId`(Long,**必填**);`intendedCustomer` 保留为客户名快照(走法 B:引用 + 快照并存)。 +- 线索转商机弹窗:意向客户改为**下拉选客户**(选中拿到 `customer_id`);线索转商机前置要求「必须有意向客户」。 +- 转商机时商机侧动作:建主表 + 建团队成员一条(领取人=商机负责人)+ 建关联客户一条(`is_primary_intended=1`,`customer_id`=cmd.customerId)。 +- **幂等**:`UNIQUE(source_lead_id)` 保证一条线索只能关联一条商机。 + +### 8.2 商机侧新增入口 → 关联线索校验 + +**出处**:票 12 `related-lead-validation`,原型 A3-1-1-2-1。 + +- 商机侧新增入口当用户选「商机来源 = 线索转入」时,手选一条【关联线索】写 `source_lead_id`(复用票 02 字段,**不新建** `related_lead_id`)。 +- 候选线索范围 = 线索 `status IN (已领取, 跟进中)` 且 `source_lead_id` 未被占用(与线索侧转商机准入对称)。 +- 命中已占用 → 返回错误码 `opp.related_lead.taken`;靠 `UNIQUE(source_lead_id)` 保唯一。 +- 直接创建且来源非「线索转入」→ `source_lead_id` NULL(可多条 NULL)。 + +### 8.3 商机 → 项目(转项目端口占位) + +- E8 转项目:对接 A5 项目模块(本模块只占端口,转项目后商机锁死终态 5)。 +- 触发源:商机中任一方案卡转项目 → 轴 1 终态 + 轴 2 固定节点「已转项目」。 + +### 8.4 商机 ↔ 客户(A4 客户模块) + +- ⚠ **A4 客户模块未建**。关联客户 `customer_id`、`primary_customer_id`、线索转商机「下拉选客户」均引用 A4。 +- 票 11(`customerId` 契约字段)、票 13(关联客户表)已定契约;「下拉选客户」UI 数据源待 A4 到达。 + +--- + +## §9 商机规则三族 · 版本化配置范式(V-CONFIG) + +**出处**:票 06 抽出,票 05/07 复用。 + +`crm-rule` 三族配置共享同一版本化范式: + +| 族 | 表 | 编码前缀样例 | +|---|---|---| +| 阶段模板 | `opportunity_stage_template` | `OPP_GUIDE_*` | +| 公海规则 | `opportunity_pool_rule` | `POOL_RULE_*` | +| 方案卡模板 | `opportunity_scheme_card_template` | — | + +**V-CONFIG 公共约定:** + +1. 同一 `code` 多版本,每版本一行。 +2. `version_no` 系统生成(V1.0/V1.1/V2.0…),只读。 +3. `status`:1=草稿 / 2=发布中 / 3=已停用。 +4. 同一 code 同时**仅一个草稿 + 仅一个发布中**。 +5. `apply_scope`:1=所有商机 / 2=指定部门(两档单选,本期不做「指定业务类型」);apply_scope=2 配适用对象子表(部门多值)。 +6. `is_default`:同「适用范围+适用对象」内唯一;发布新默认 → 原默认自动取消。 +7. **绑定快照**:业务实体绑定配置时记录具体版本;新版本发布后原绑定实体**继续用原版本不自动迁移**;新建/重新匹配用最新发布版本。 +8. **复制** = 生成独立新规则(新 code,非后续版本)。 +9. **列表按版本维度展示**:同 code 的草稿/发布中/停用各占一行,不合并。 + +> `crm-rule` 对上层零反依赖:规则表不知道 `opportunity` 实体,靠 `apply_scope`/部门 + `code` 弱关联。 + +--- + +## §10 字典清单(走 crm-dict,选项值由产品录入) + +⚠ P2-1:本模块只定「要做字典」,具体选项值由产品提供。 + +| 字典分组 | 用途 | 出处 | +|---|---|---| +| 商机来源 `opp_source` | 渠道归因(含「线索转入」) | 票 03 | +| 商机类型 `opp_type` | | 票 03 | +| 行业 `industry_code` | | 票 03 | +| 招标形式 `bid_form` | | 票 03 | +| 项目属地 `locality_type` | 本地/异地分类 | 票 03 | +| 商机阶段 `OPP_STAGE_*` | 客户圈定/关系摸排/资料采集/方案卡/已转项目… | 票 06 | +| 进入公海原因 `pool_reason` | 销售主动释放/特殊原因暂停/领导释放/超期回收 | 票 04/10 | +| 暂缓原因 | | 票 04 | +| 关闭原因 | | 票 04 | +| 客户角色 | 机电总包/工程商/集成商… | 票 13 | +| 跟进方式 | 电话/上门/微信/线上会议/展会… | 票 09 | +| 跟进结果标签 | 暂无进展/需求确认/方案推进… | 票 09 | +| 商机资料类型 | 现场资料/设计清单·图纸/客户需求资料/招投标相关资料/其它 | 票 09 | +| 申请方式(勘察) | 工单申请/线下申请… | 票 08 | +| 勘察次数 | | 票 08 | + +--- + +## §11 待确认清单索引(实现前须产品拍板) + +> 完整版见 `.scratch/opportunity-module/产品待确认清单.md`。以下均**不阻塞建模/表结构**(各票已给默认处置)。 + +| 编号 | 待确认项 | 档 | 现状 | +|---|---|---|---| +| P2-1 | 各字典具体选项集 | P2 | 走 crm-dict,产品录入 | +| P2-4 | 管理视角「领导 ▾」层级数据范围 vs `@DataScope` 精确映射 | P2 | 复用 crm-auth,映射待实现阶段定 | +| P2-5 | 内置视图默认排序维度 | P2 | 建议最近跟进倒序,待定 | +| P2-6 | 公海规则数值样例 | P2 | 样例非验收值,规则配置录入 | +| P2-7 | 自定义视图:数量上限 / 多组条件(AND/OR)+高级公式开放时机 / 是否支持共享 / 管理·公海是否开 | P2 | 本期私有、1 组条件、只销售机会开 | +| P1-4 | 工作计划精确状态枚举 | 🅿️ | 归 A1X 独立模块,本期挂起 | +| P1-6 | 归属起点计时初始化(E1/E2/两入口创建统一口径,候选方案见清单) | P1 | 挂起待产品确认(grill 20260821) | +| P1-7 | 暂缓期间子表可写范围(写跟进/方案卡/勘察/附件/客户/团队) | P1 | 挂起待产品确认(grill 20260821) | + +**已拍板存档(备查):** 预计成交时间归属(P0-1,方案卡内部/不上主表/列表删除)、阶段模板适用范围两档(P0-2)、字段定义库自建不复用 crm-dict(P0-3)、方案卡状态枚举+多卡取值锚点(P0-4)、方案卡可编辑性(P1-1,`card_status<3`)、勘察次数生成(P1-2)、勘察补充说明必填(P1-3)、操作日志关键字段(P1-5)、最近访问去重+上限(P2-2)、方案卡状态列多卡口径(P2-3)。 + +--- + +## 附:原型事实出处索引 + +| 原型页 | 内容 | +|---|---| +| A3-1-1 | 商机个人视图列表 / 线索转商机入口 | +| A3-1-1-1-1 | 商机详情概览(状态条 + 进度条) | +| A3-1-1-1-3~9 | 详情 Tab:方案卡/勘察/附件/跟进/工作计划/团队成员/操作日志 | +| A3-1-1-2-1 | 新增商机表单 | +| A3-1-1-2-2 | 写跟进 | +| A3-1-1-2-4 | 添加关联客户 | +| A3-1-1-2-6/7/9 | 暂缓 / 抛公海 / 关闭 | +| A3-2-1 | 商机管理视图 | +| A3-3-1 | 商机公海视图 | +| A3-0-1 | 最近访问视图 | +| A7-3-2-1 | 商机阶段设置(阶段模板) | +| A7-3-2-2/3 | 方案卡模板 / 方案推送 | +| A7-3-2-5 | 商机公海与提醒规则 | +| demo 0803 `oppModule` | 视图体系(内置四视图 + 自定义视图交互) | + +--- + +**票映射总表:** + +| 票 | 主题 | PRD 章节 | +|---|---|---| +| 01 | 领域词汇与边界 | §1 | +| 02 | 线索侧 port 消费契约 | §8.1 | +| 03 | 商机主表 | §2 | +| 04 | 归属流转状态机 | §3 | +| 05 | 商机公海规则 | §5 | +| 06 | 阶段模板版本化 | §4 §9 | +| 07 | 方案卡 | §7.2 | +| 08 | 现场勘察 | §7.3 | +| 09 | 子表族(跟进/附件/工作计划/日志) | §7.4–7.7 | +| 10 | 四视图与列表/详情查询 | §6 | +| 11 | CreateOpportunityCmd + customerId | §8.1(实现票) | +| 12 | 商机侧关联线索校验 | §8.2(实现票) | +| 13 | 商机-关联客户 | §7.1 | +| 14 | 自定义视图 + 内置视图族 | §6.2–6.4 | + +_(本 PRD 冻结自 spec,如与原型有出入,以原型 + 票正文为准并回填对应票。)_ diff --git a/crm-opportunity/CONTEXT.md b/crm-opportunity/CONTEXT.md index 8c8d703..c601732 100644 --- a/crm-opportunity/CONTEXT.md +++ b/crm-opportunity/CONTEXT.md @@ -23,7 +23,7 @@ _Avoid_: 状态(状态是另一条轴)、节点(口语可叫「节点」 _Avoid_: 负责人(负责人是公海池概念)、持有者、owner(英文单说) **创建人**: -录入该商机的用户,全生命周期不变。直接创建 / 线索转入均落创建人。删除权限判定依据之一(对称线索:终态为删除禁区)。 +录入该商机的用户,全生命周期不变。直接创建 / 线索转入均落创建人。**商机无删除动作**(grill 补拍 20260821)——终法只有关闭/转项目,历史数据永不删,故无删除权限判定问题。 _Avoid_: 录入人、owner(owner 是领取人) **团队成员**: @@ -39,11 +39,11 @@ _Avoid_: 来源线索、渠道(口语,字段名 oppSource)、来路 _Avoid_: 商机来源(那是 oppSource 渠道)、线索 id、parent **关联客户**: -商机关联的客户(原型「添加关联客户」A3-1-1-2-4、客户信息 Tab A3-1-1-1-2)。子表 = **`opportunity_customer`(票 13)**:`customer_id` 引用 A4 客户 + 名快照、`customer_role` 角色(→crm-dict)、`is_primary_intended` **是否主要意向客户**。规则(产品拍板):一商机可多个关联客户,**有且仅一个主要意向客户**;`UNIQUE(opportunity_id, customer_id)`。线索转商机时填的意向客户 = 落为主要意向客户;商机侧可加普通关联客户、可改主要意向客户(切换标记)。主表冗余 `primary_customer_id`/名快照(免 join)。**主要意向客户是列表派生列(方案预算/方案卡状态)的取值锚点**(票 07/10)。⚠ `customer_id` 引用 + 下拉选客户能力依赖 A4 客户模块(未建),见票 11。 +商机关联的客户(原型「添加关联客户」A3-1-1-2-4、客户信息 Tab A3-1-1-1-2)。子表 = **`opportunity_customer`(票 13)**:`customer_id` 引用 A4 客户 + 名快照、`customer_role` 角色(→crm-dict)、`is_primary_intended` **是否主要意向客户**。规则(产品拍板):一商机可多个关联客户,**有且仅一个主要意向客户**;`UNIQUE(opportunity_id, customer_id)`。**两条入口都必填主要意向客户**(直接新建表单含意向客户必选,与线索转商机 `customerId` 必填对齐;grill 补拍 20260821),保证主客户约束自创建起恒成立。线索转商机时填的意向客户 = 落为主要意向客户;商机侧可加普通关联客户、可改主要意向客户(切换标记)。主表冗余 `primary_customer_id`/名快照(免 join)。**主要意向客户是列表派生列(方案预算/方案卡状态)的取值锚点**(票 07/10)。⚠ `customer_id` 引用 + 下拉选客户能力依赖 A4 客户模块(未建),见票 11。 _Avoid_: 客户(客户是 A4 域的实体)、甲方(甲方是快照里的一个字段)、customer **暂缓**: -商机流转动作(原型 A3-1-1-2-6):短期推不动、但仍有价值时挂起。选**暂缓原因**(字典)+ **预计重启日期**(必填,不早于今天)+ 补充说明 → 状态「暂缓中」。**保留领取人+团队、不进公海、冻结回收计时**(暂缓期间不被超时回收;取消暂缓后按剩余天数续算,票 05)。保留暂缓前阶段/节点。到期不自动恢复——系统提醒领取人,人工选 取消暂缓(恢复推进)/ 继续暂缓 / 关闭。按钮可见性由权限点配置,可见即可点,与是否领取人无关。 +商机流转动作(原型 A3-1-1-2-6):短期推不动、但仍有价值时挂起。选**暂缓原因**(字典)+ **预计重启日期**(必填,不早于今天)+ 补充说明 → 状态「暂缓中」。**保留领取人+团队、不进公海、冻结回收计时**(暂缓期间不被超时回收;取消暂缓后按剩余天数续算,票 05)。保留暂缓前阶段/节点。到期不自动恢复——系统提醒领取人,人工选 取消暂缓(恢复推进)/ 继续暂缓 / 关闭。按钮可见性由权限点配置,可见即可点,与是否领取人无关。原型 A3-1-1-2-6 原文「暂停部分推进动作和常规跟进提醒」未枚举具体项:推进节点/转项目/抛公海受限(需先取消暂缓)已定(票 04);⚠ 写跟进/子表写是否允许待产品确认(P1-7)。 _Avoid_: 中止(不存在)、挂起、冻结、关闭(关闭是明确无价值) **取消暂缓**: @@ -63,7 +63,7 @@ _Avoid_: 中止(不存在)、作废(线索用「作废」)、删除、 _Avoid_: 恢复、取消暂缓(取消暂缓是暂缓的逆动作)、激活 **移交**: -负责人变更动作,**入口在团队成员页(原型 A3-1-1-1-8)**,非详情页顶部操作区。**移交只换领取人 `owner_user_id`**(产品明确),不动其他。**无独立「转让」动作**——「转让只有负责人能转」不是额外 guard,而是移交入口本身在负责人管理的团队成员页里(原型:「当前用户只能维护其权限范围内的团队成员及权限设置」),团队管理权实际落在领取人手上。 +负责人变更动作,**入口在团队成员页(原型 A3-1-1-1-8)**,非详情页顶部操作区。**移交只换领取人 `owner_user_id` + 姓名/部门快照同步刷新**(`owner_dept_id` 换为移交对象的部门,公海规则匹配锚点跟人走;grill 补拍 20260821),不动团队成员等其他。**无独立「转让」动作**——「转让只有负责人能转」不是额外 guard,而是移交入口本身在负责人管理的团队成员页里(原型:「当前用户只能维护其权限范围内的团队成员及权限设置」),团队管理权实际落在领取人手上。 _Avoid_: 转让(无此独立动作)、转移、指派(分配才是指派) **转项目**: @@ -106,16 +106,24 @@ _Avoid_: 中央工作计划模块(A1X,跨域,本票不定读写) 商机的**字段级变更审计** `opportunity_oplog`(票 09,原型 A3-1-1-1-9):实体对象/字段名称/旧值/新值/操作说明/来源(系统自动 vs 人工)/时间/操作人。普通用户只读。**与线索 `lead_history` 口径不同**:线索是动作类型枚举(CLAIM/ASSIGN…)+JSON,商机是字段级旧新值审计。状态/阶段迁移另有专用快照表(`opportunity_status_history`/`opportunity_stage_history`),与本通用审计并存不重。 _Avoid_: 线索 history 模型(动作枚举,口径不同)、状态/阶段快照表(专用表,非通用审计) -**四视图**: -商机列表四视图(票 10,原型 A3-1-1/A3-2-1/A3-3-1/A3-0-1):**销售机会(个人)** `owner=当前用户` / **商机管理** 按 `@DataScope` / **商机公海** `opp_status=1 且 owner 空` 逻辑视图 / **最近访问** 打开过详情的商机按时间倒序、按商机 id 去重留最新,**上限可配置(本期默认 50 条)**。计算列不冗余存:节点停留时间=今−进入当前节点日(stage_history)、最近跟进=最新 follow 时间、预计金额=`project_amount`。详情三皮肤(个人/管理/公海)=同一聚合按视角展不同操作区,非三套数据。 -_Avoid_: 视图=状态切片(同一商机可跨视图)、预计成交时间(产品二次拍板:商机列表删除该列、不上主表;仅方案卡内部字段票07) +**视图(内置 + 自定义)**: +销售机会工作区下的视图组织(票 14 推翻票 10「单一我负责的」,以 demo 0803 为准)。**内置视图四个**(「常用检索」Tab,固定不可删/改):**最近访问**(打开过详情的商机,时间倒序、按 id 去重留最新,上限可配 默认 50)/ **我负责的** `owner=当前用户` / **我参与的**(团队成员且非负责人,见下)/ **我关注的**(关注表 `opportunity_focus` 命中,见下)。**自定义视图**(「自定义检索」Tab)= 用户保存的检索:检索名称 + 条件列表(字段∈列表可筛选列 + 操作符 等于/不等于/包含/不包含/为空/不为空 + 值)+ 排序(字段+asc/desc),可编辑/重命名/删除/图钉设默认——**落 `crm-preference` 平台能力**(用户私有、按 `scope_key` 分组,本期 scope=`opportunity.sales`,后续菜单加 scope 即复用)。**商机管理**(按 `@DataScope`)/ **商机公海**(`opp_status=1 且 owner 空` 逻辑视图)仍是独立 workspace、不进销售机会视图下拉、本期不开自定义视图。计算列不冗余存:节点停留=今−进入当前节点日(stage_history)、最近跟进=最新 follow、预计金额=`project_amount`。详情三皮肤(个人/管理/公海)=同一聚合按视角展不同操作区,非三套数据。 +_Avoid_: 视图=状态切片(同一商机可跨视图)、预计成交时间(产品二次拍板:商机列表删除该列、不上主表;仅方案卡内部字段票07)、自定义视图绑死商机(落 crm-preference 按 scope 通用,票 14)、内置视图可编辑(内置固定,只自定义视图可增删改) + +**关注**: +商机级个人收藏动作,落 `opportunity_focus`(`opportunity_id`+`user_id`,`UNIQUE(opportunity_id, user_id)`;grill 补拍 20260821,票 14 视图引用前此表未定义)。**纯收藏夹语义,不带通知**(通知属平台通知基础设施,未建)。关注/取关无需原因、物理删行、不入操作日志。「我关注的」视图 = 该表命中当前用户;管理/公海/最近访问视图的「关注」按钮读写此表。 +_Avoid_: 团队成员(成员是行级授权白名单,关注是个人收藏)、收藏(统一叫关注) + +**我参与的**: +销售机会内置视图之一(票 14):**我是该商机团队成员但不是负责人** —— `EXISTS(团队成员 WHERE opportunity_id=? AND user_id=当前用户) AND owner_user_id <> 当前用户`。团队成员表 = 票 02/04 建商机落的领取人=负责人 + 后续「添加团队成员」加入者。与「我负责的」互斥不重叠(负责人走 `mine`,非负责成员走 `participated`)。 +_Avoid_: 参与=含负责人(负责人归「我负责的」,参与专指非负责成员)、参与=仅能看(团队成员带角色权限,非观察者) **进入公海原因**: 商机抢公海/回收时的分类 `pool_reason`(票 10 原型 A3-3-1 筛选项):销售主动释放 / 特殊原因暂停 / 领导释放 / 超期回收。公海列表按此筛选;「领导释放」=管理侧强制抛公海(操作人≠owner);「超期回收」=票 05 executeRecycle。抢公海时亦快照入池前工作节点。 _Avoid_: 抢公海无原因(已分四类,回填票 04/05) **方案卡模板**: -方案卡的**版本化字段集配置**(选哪些字段/顺序/显示/必填/适用范围),住 `crm-rule` 的 `opportunity_scheme_card_template`(票 07 原型 A7-3-2-2)。与票 05 公海规则、票 06 阶段模板**同族**(公共约定 V-CONFIG:`template_code`+`version_no`+草稿/发布中/已停用,绑定锁版发新版不迁移)。字段来自**系统字段库**非自由造(删字段不删系统字段定义);字段库 = **自建 `opportunity_scheme_field_def`**(字段元数据:控件类型/关联对象目标/自动回填来源,crm-dict 码表模型不匹配故不复用;下拉类字段选项集可 `option_source` 引用 crm-dict 分组);适用范围**两档**(所有部门通用/对应部门专用,同票 05,异于票 06 三档)。 +方案卡的**版本化字段集配置**(选哪些字段/顺序/显示/必填/适用范围),住 `crm-rule` 的 `opportunity_scheme_card_template`(票 07 原型 A7-3-2-2)。与票 05 公海规则、票 06 阶段模板**同族**(公共约定 V-CONFIG:`template_code`+`version_no`+草稿/发布中/已停用,绑定锁版发新版不迁移)。字段来自**系统字段库**非自由造(删字段不删系统字段定义);字段库 = **自建 `opportunity_scheme_field_def`**(字段元数据:控件类型/关联对象目标/自动回填来源,crm-dict 码表模型不匹配故不复用;下拉类字段选项集可 `option_source` 引用 crm-dict 分组);适用范围**两档**(所有部门通用/对应部门专用,同票 05,异于票 06 三档)。**创建方案卡时手动选模板版本**(不自动匹配):候选 = 适用范围命中商机 `owner_dept_id` 的「发布中」版本,选定后 `card_template_id` 锁版本、发新版在途卡不迁移(grill 补拍 20260821)。 _Avoid_: 方案卡(运行时单据,模板是配置) 商机业务阶段轴(轴2)的**版本化配置**,住 `crm-rule` 的 `opportunity_stage_template`(票 06 原型 A7-3-2-1)。范式 = `template_code`+`version_no`+草稿/发布中/已停用 + 适用范围(所有商机/指定部门 两档单选,本期不做指定业务类型) + 是否默认,与票 05 公海规则、票 07 方案卡模板**同族**(公共约定 V-CONFIG)。子表:`_dept`(适用对象,apply_scope=2)、`opportunity_stage_node`(有序阶段节点,引用「商机阶段」字典)。商机绑定后**锁死版本、发新版不迁移**(在途商机续用原版本,新建用最新发布版本)。 _Avoid_: 阶段字典(模板引用字典,不同层次)、阶段(阶段是运行时轴,模板是配置) @@ -125,7 +133,7 @@ _Avoid_: 阶段字典(模板引用字典,不同层次)、阶段(阶段 _Avoid_: 阶段字典项(被引用方)、current_stage(运行时指针) **商机公海规则**: -商机公海/回收/领取/提醒的**版本化规则配置**,住 `crm-rule` 的 `opportunity_pool_rule`(票 05 原型 A7-3-2-5 定稿)。范式 = 草稿/发布中/已停用 + `rule_code` + `version_no`(与票 06 阶段模板、票 07 方案卡模板同族),**不是** `lead_pool` 那种「一部门一池」实体(推翻初稿)。适用范围 = 所有部门通用 / 对应部门专用 + 默认规则兜底(无省/市/区地理维度)。**匹配以最低层级规则为准**(部门专用 > 通用默认,多部门专用取最具体);**一个部门同时只能被一条发布中规则覆盖**(发布时校验部门不重叠),故命中唯一(票 05 产品拍板)。五配置项:`allow_manual_pool`(允许手动抛公海)/ `auto_recycle_enabled`+`recycle_days` / `allow_free_claim`(允许自由领取)/ `recycle_remind_enabled`+`remind_days`。 +商机公海/回收/领取/提醒的**版本化规则配置**,住 `crm-rule` 的 `opportunity_pool_rule`(票 05 原型 A7-3-2-5 定稿)。范式 = 草稿/发布中/已停用 + `rule_code` + `version_no`(与票 06 阶段模板、票 07 方案卡模板同族),**不是** `lead_pool` 那种「一部门一池」实体(推翻初稿)。**匹配锚点 = 商机自身的 `owner_dept_id`**(规则跟着商机走,不跟查看人部门走;grill 补拍 20260821):抛公海/回收后 owner 清空但部门快照保留,系统读它匹配规则——专属规则(apply_scope=2 命中)决定两件事:该商机在公海**谁能看到、谁能领**(适用部门外的销售不可见不可领);无专属规则 → 用通用默认规则(apply_scope=1)兜底,全部门可见,能否领看 `allow_free_claim`。适用范围 = 所有部门通用 / 对应部门专用 + 默认规则兜底(无省/市/区地理维度)。**匹配以最低层级规则为准**(部门专用 > 通用默认,多部门专用取最具体);**一个部门同时只能被一条发布中规则覆盖**(发布时校验部门不重叠),故命中唯一(票 05 产品拍板)。五配置项:`allow_manual_pool`(允许手动抛公海)/ `auto_recycle_enabled`+`recycle_days` / `allow_free_claim`(允许自由领取)/ `recycle_remind_enabled`+`remind_days`。 _Avoid_: 商机公海池(无池实体)、商机池、线索池 **回收天数**: diff --git a/crm-preference/CONTEXT.md b/crm-preference/CONTEXT.md index ad21bf9..e83cc0a 100644 --- a/crm-preference/CONTEXT.md +++ b/crm-preference/CONTEXT.md @@ -1,6 +1,6 @@ # 列偏好(crm-preference) -平台级的用户列表列偏好能力,与 `crm-dict` 平行的通用模块:用户级列显隐 + 拖拽排序,按 scope 分组。本次只做到「线索够用的最小通用深度」,不做全平台通用化打磨。契约仅 `get / save` 两法。 +平台级的用户列表偏好能力,与 `crm-dict` 平行的通用模块:用户级、按 scope 分组、私有。含两种偏好:**①列偏好**(列显隐 + 拖拽排序,契约 `get / save`);**②自定义视图**(用户保存的检索,票 14,契约 `list / save / delete / setDefault`)。本次只做到「够用的最小通用深度」,不做全平台通用化打磨。 ## Language @@ -9,9 +9,13 @@ _Avoid_: 表格配置、字段配置、视图设置 **scope**: -列偏好的作用范围键 `scope_key`,由业务方约定的稳定 code。**每菜单独立**、互不同步(推翻原型「共用一套」的说法)。线索域 4 个取值已钉死(ADR-0024,与 viewType 一一对应):`lead.public_pool`(公海)/ `lead.my_lead`(我的线索)/ `lead.my_follow`(我的关注)/ `lead.manage`(线索管理)。 +偏好(列偏好 / 自定义视图共用)的作用范围键 `scope_key`,由业务方约定的稳定 code。**每菜单独立**、互不同步(推翻原型「共用一套」的说法)。线索域列偏好 4 个取值已钉死(ADR-0024,与 viewType 一一对应):`lead.public_pool`(公海)/ `lead.my_lead`(我的线索)/ `lead.my_follow`(我的关注)/ `lead.manage`(线索管理)。商机自定义视图(票 14)本期 1 个:`opportunity.sales`(销售机会工作区)。 _Avoid_: 页面 ID、菜单 key、视图类型 +**自定义视图**: +用户在某菜单保存的一条**检索**(票 14,demo 0803 `oppModule` 为准),存于 `user_saved_view(user_id, scope_key, view_id, name, filter_json, sort_field, sort_direction, is_default, seq_no)`。用户级私有、按 `scope_key` 分组,与列偏好同构。`filter_json` = 条件列表 `[{field, operator, value}, …]`(本期前端只提交 1 组,契约按列表预留复合/高级公式扩展位);**字段合法性 crm-preference 不校验**(字段池归业务方,同「字段池」约定)。同 `(user_id, scope_key)` 至多一条 `is_default=1`(图钉设的默认视图)。系统**内置视图**(如商机的 最近访问/我负责的/我参与的/我关注的)**不入本表**——内置视图口径硬编码在业务方,本表只存用户自建的视图。 +_Avoid_: 内置视图落库(内置固定在业务方,本表只存用户自建)、视图=页面路由、绑死某业务模块(按 scope 通用,加 scope 即复用) + **字段池**: 某 scope 下所有可显隐 / 可排序的候选列,**归业务方定义**,`crm-preference` 不持有字段清单,只存用户勾选与排序的结果(`visible_keys` / `column_order`)。 _Avoid_: 列定义、可选字段表、schema diff --git a/nginx/html/信息化平台数据取用方式对比.pdf b/nginx/html/信息化平台数据取用方式对比.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d31ab31cb8138348a639279ac948d0f52955660a GIT binary patch literal 335519 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 G`Q;xlNZZ^1 literal 0 HcmV?d00001