# PDIA 智能报价助手｜报价引擎流程说明表

> 基于当前代码与本机生效配置整理。核对日期：2026-07-23。本文描述的是现有实现，不把规划中的渠道价目表、自动跟价等能力写成已上线能力。

配套 Mermaid 知识图谱源码：[报价引擎知识图谱.mmd](报价引擎知识图谱.mmd)；SVG 文件：[报价引擎知识图谱.svg](报价引擎知识图谱.svg)。图中展示主流程、专项与审批分支，以及渠道/参考价的非计算边界；本表保留完整费率与配置明细。

![PDIA 报价引擎知识图谱](报价引擎知识图谱.png)

## 1. 引擎边界与最终结果

| 项目 | 当前实现 |
| --- | --- |
| 引擎职责 | 根据地域、承诺带宽、合同期、CPE 和固定 IP 数量生成正式报价版本；针对申请价执行成本、毛利与审批路由。 |
| 计算币种与精度 | 标准费率以美元分保存；汇率以微单位保存；计算过程使用人民币分；对外金额保留两位小数。 |
| 目录价 | 面向标准配置的月度 PDIA 服务费；标准设备显示为“已包含”。 |
| 报价版本 | 每次计算为同一项目生成递增版本；历史版本不受后续配置变更影响。 |
| 最终状态 | `calculated`（可直接使用）、`pending_approval`（待审批）、`approved`、`approved_with_adjustment`、`rejected`、`system_rejected`（系统拒绝）、`special_quote`（专项核价）。 |
| AI 的角色 | AI 可参与需求理解和方案生成；不生成金额、不修改费率、不改变毛利或审批规则。 |

## 2. 完整流程说明表

| 步骤 | 处理内容 | 输入 / 依赖 | 规则与计算 | 结果 / 后续动作 |
| --- | --- | --- | --- | --- |
| 1. 接收报价请求 | 接收正式报价输入。 | 项目 ID（可选）、地域代码、承诺带宽、突发带宽（可选）、合同期（可选）、CPE 型号/数量（可选）、固定 IP 数量（可选）、申请价（仅申请场景）、幂等键、申请人、上一版报价 ID。 | 地域必须在支持清单内；带宽必须是大于等于 1 的整数；CPE/固定 IP 数量必须是正整数；合同期只能是 12、24、36 个月。未传合同期/CPE 数量/固定 IP 数量时分别默认 12 个月、1 台、1 个。 | 任一校验失败即报错；通过后进入幂等检查。 |
| 2. 幂等检查 | 防止同一请求重复创建报价。 | `idempotencyKey`。 | 如已存在同一幂等键的报价，直接返回已保存的结果，不重新计算。 | 返回原报价；否则继续。 |
| 3. 地域归类 | 将出口地域映射到地域类别。 | `regionCode`。 | 香港为一类地域；日本、新加坡、美国、英国、德国、马来西亚、中国台湾、韩国为二类地域。 | 用于匹配标准费率。 |
| 4. 读取生效配置 | 读取当前激活的费率、汇率、成本、CPE、规则版本。 | SQLite 中的 `active_config_versions`。 | 标准费率、汇率、成本、规则分别独立版本化；引擎只读取当前生效版本。 | 为本次计算生成可追溯快照。 |
| 5. 匹配标准费率档 | 用地域类别和承诺带宽选择费率行。 | 地域类别、承诺带宽。 | 档位使用左闭右开区间：`minBandwidthMbps ≤ 带宽 < maxBandwidthMbps`；带宽达到 500M 时不匹配标准费率。 | 取得基础美元价与每 M 美元价；未匹配会进入专项原因。 |
| 6. CPE 性能自动选型 | 对默认 CPE 按带宽进行性能替换。 | 承诺带宽、请求 CPE 型号。 | 默认型号为 `OneWAN1200-H1`。若请求值为默认型号，则按带宽替换为 H1/S1/S2/X2；若显式指定非默认型号且与性能选型不一致，转专项；超过 5G 无可用自动选型，转专项。 | 形成实际 CPE 型号和数量。 |
| 7. 专项核价拦截 | 汇总所有非标准原因。 | 标准费率、CPE 目录、固定 IP 成本、突发带宽、带宽与 CPE 选型。 | 任一专项原因成立即 `special_quote`：①带宽≥500M；②带宽>5G；③找不到标准费率档；④实际 CPE 不在当前有效目录；⑤指定 CPE 不符合性能自动选型；⑥固定 IP 数量>1 且额外 IP 成本未核验；⑦突发带宽大于承诺带宽。 | 目录价、25 折价、20 折价显示为空；对外显示“专项核价”；仍保存专项原因和成本快照。 |
| 8. 计算标准目录价 | 对非专项配置计算月度目录价。 | 基础美元价、每 M 美元价、承诺带宽、汇率、实际 CPE、默认 H1 CPE、合同期、CPE 数量。 | 先算美元分：`基础美元分 + 每M美元分 × 承诺带宽`；再按汇率换算为人民币分并四舍五入。CPE 只计算相对默认配置的差额：默认 H1 时加 `H1月摊销 × max(0,数量-1)`；性能替换或显式非默认型号时加 `实际CPE月摊销×数量 - 默认H1月摊销`。 | 得到 `listPriceCny`、每 M 单价、对外 `pdiaServicePrice`。 |
| 9. 生成标准折扣参考 | 生成 25 折和 20 折的参考价。 | 标准目录价。 | `price25 = 目录价 × 25%`；`price20 = 目录价 × 20%`，均按人民币分四舍五入。专项核价时两者均为空。 | 用于销售参考和后续申请价路由；不是自动批准价格。 |
| 10. 计算成本快照 | 计算地域与 CPE 的月度毛利成本。 | 地域每 M 成本、承诺带宽、实际 CPE 月摊销、CPE 数量、成本核验状态。 | 地域成本=`地域每M成本×带宽`；CPE 成本=`实际CPE月摊销×数量`；仅当地域成本和实际 CPE 成本均为已核验时，`总毛利成本=地域成本+CPE成本`。固定 IP **不计入毛利成本**。 | 保存成本核验状态、各项成本、10%毛利底线、20%直接使用阈值。 |
| 11. 判断 20 折可用性 | 校验 20 折参考价能否直接使用。 | 20 折价、已核验总成本。 | `20折毛利率=(20折价-总毛利成本)÷20折价`。成本不全、20 折价为空或毛利低于 10% 时，20 折不可自动使用；毛利≥10% 时可用。 | 输出 `price20Eligible` 与原因说明。 |
| 12. 生成客户可见项目 | 形成对外展示的报价行。 | 计算结果、实际 CPE、固定 IP 数量。 | 三行：出口带宽、设备、合计。设备金额显示“已包含”；包含：承诺带宽、地域出口固定 IP 1 个、实际 CPE、一次标准首次交付；不包含：超出一次派工的非标准交付、额外固定 IP、突发带宽。 | 作为客户版报价材料的来源。 |
| 13. 保存正式报价与快照 | 原子化保存报价、项目行与快照。 | 输入、报价结果、成本快照、版本信息。 | 同一项目版本号=`当前最大版本+1`；事务内写入 `quotes`、`quote_items`、`quote_snapshots`。 | 保留输入、结果、费率/汇率/成本/规则版本及快照；后续配置变动不回写历史报价。 |
| 14. 发起特殊价格申请 | 销售基于最新报价提交申请价。 | 源报价 ID、申请价、申请理由、报价阶段、幂等键、当前登录销售。 | 必须是本人项目、最新报价版本、且当前没有待审批申请；申请价仅允许正数且最多两位小数。系统会使用源报价输入重新计算一版“申请价报价”。 | 进入成本/毛利评估和审批路由。 |
| 15. 评估申请价成本与毛利 | 将申请价与该报价版本的成本快照对比。 | 申请价、已保存成本快照。 | `申请价毛利率=(申请价-总毛利成本)÷申请价`。未完整核验成本时毛利为空，批准操作保持关闭。 | 提供地域成本、CPE 成本、总成本、毛利率给审批链路；申请人不暴露内部成本细节。 |
| 16. 审批路由 | 决定直接使用、待审批或系统拒绝。 | 标准/专项状态、申请价、20 折资格、毛利率、报价阶段、项目场景。 | 见第 5 节完整路由表。 | `calculated`、`pending_approval` 或 `system_rejected`；待审批 SLA 为提交后 24 小时。 |
| 17. 审批人决策 | 审批人通过、调整后通过或驳回。 | 审批记录、审批动作、调整后价格（可选）、意见、并发版本。 | 仅审批人可操作；驳回必须填写原因；成本未核验时不能通过；通过价或调整后通过价的毛利必须≥10%，否则系统禁止。 | 更新审批状态、最终批准价、事件和审计记录。 |
| 18. 导出客户材料 | 导出 HTML / 文本报价材料。 | 已计算且可对外使用的报价、已批准或无需审批的工作流、方案内容。 | 仅 `calculated`、`approved`、`approved_with_adjustment` 状态可导出；待审批、系统拒绝等不能导出。客户材料不包含地域成本、CPE 成本、毛利率和直接阈值。 | 生成带报价编号、有效期、带宽、CPE、月度服务费、包含/不包含项及可选沟通摘要的客户版材料。 |

## 3. 输入字段与参与度

| 字段 | 是否直接参与目录价 | 是否参与专项/审批 | 当前说明 |
| --- | --- | --- | --- |
| 出口地域 | 是 | 是 | 决定地域类别、费率档、地域成本与参考价筛选。 |
| 承诺带宽 | 是 | 是 | 决定费率档、CPE 性能、地域成本；≥500M 转专项。 |
| 突发带宽 | 否 | 是 | 仅在大于承诺带宽时转专项；当前没有单独的突发带宽金额公式。 |
| 合同期限 | 仅影响 CPE 差额 | 是 | 仅支持 12/24/36 月；不改变基础带宽美元费率。 |
| CPE 型号/数量 | 是 | 是 | 型号按性能替换；目录价计算的是相对默认 H1 的差额；成本使用实际 CPE 全额月摊销。 |
| 固定 IP 数量 | 否 | 是 | 默认 1 个包含在客户口径；额外 IP 未单独计价，且额外 IP 成本未核验时转专项；固定 IP 不计入毛利成本。 |
| 申请价 | 否 | 是 | 不改目录价；用于申请价毛利、直接使用、审批或拒绝。 |
| 报价阶段 | 否 | 是 | “决定性报价”强制进入审批。 |
| 项目场景 | 否 | 是 | “中标后折扣”强制进入审批。 |
| 客户来源（直客/渠道）、渠道名称、渠道定价方式 | 否 | 当前仅记录 | 写入项目和审批工作流上下文；当前没有渠道价目表、渠道折扣或渠道底价规则。 |
| 友商价、历史成交价 | 否 | 仅作为指导信息 | 不参与成本、毛利或审批阈值计算，详见第 8 节。 |
| AI 分析/方案结果 | 否 | 否 | 影响方案内容和资料理解，不允许改变正式金额、快照或审批阈值。 |

## 4. 当前生效配置表

### 4.1 生效版本

| 配置项 | 当前生效版本 | 当前值 / 生效时间 |
| --- | --- | --- |
| 标准费率 | `pdia-standard-v2-20260714` | 见 4.3。 |
| 汇率 | `usd-cny-1784621546898-86187c7d` | 1 USD = 6.7000 CNY；生效于 2026-07-21T08:12:26.898Z。 |
| 成本与 CPE 目录 | `cost-baseline-v2-20260716` | 见 4.4、4.5。 |
| 报价规则 | `pricing-rules-v4-20260716` | 标准折扣 25 折/20 折；专项起点 500M；最低毛利 10%；直接毛利阈值 20%；12/24/36 月；默认 1 IP、1 台 CPE；性能替换；一次派工；固定 IP 不计毛利成本。 |

### 4.2 支持地域与分类

| 地域代码 | 地域 | 类别 |
| --- | --- | --- |
| HK | 香港 | 一类 |
| JP | 日本 | 二类 |
| SG | 新加坡 | 二类 |
| US | 美国 | 二类 |
| UK | 英国 | 二类 |
| DE | 德国 | 二类 |
| MY | 马来西亚 | 二类 |
| TW | 中国台湾 | 二类 |
| KR | 韩国 | 二类 |

### 4.3 标准费率（美元）

> 带宽区间均为左闭右开，例如 10M 使用 10–50M 档；500M 不属于标准档，转专项。

| 地域类别 | 承诺带宽区间 | 基础美元价 | 每 M 美元价 |
| --- | --- | ---: | ---: |
| 一类 | 1M–＜10M | 180.00 | 100.00 |
| 一类 | 10M–＜50M | 270.00 | 80.00 |
| 一类 | 50M–＜100M | 410.00 | 60.00 |
| 一类 | 100M–＜500M | 410.00 | 60.00 |
| 二类 | 1M–＜10M | 180.00 | 110.00 |
| 二类 | 10M–＜50M | 320.00 | 90.00 |
| 二类 | 50M–＜100M | 410.00 | 70.00 |
| 二类 | 100M–＜500M | 410.00 | 70.00 |

### 4.4 地域成本（仅用于毛利，不直接计入目录价）

| 地域 | 每 M 月成本（CNY） | 已核验 | 对审批的影响 |
| --- | ---: | --- | --- |
| 香港 | 25.00 | 是 | 可参与毛利计算。 |
| 新加坡 | 60.00 | 是 | 可参与毛利计算。 |
| 美国 | 35.00 | 是 | 可参与毛利计算。 |
| 英国 | 40.00 | 是 | 可参与毛利计算。 |
| 德国 | 40.00 | 是 | 可参与毛利计算。 |
| 马来西亚 | 40.00 | 是 | 可参与毛利计算。 |
| 日本 | — | 否 | 成本不完整，不能自动形成可批准的毛利判断。 |
| 中国台湾 | — | 否 | 成本不完整，不能自动形成可批准的毛利判断。 |
| 韩国 | — | 否 | 成本不完整，不能自动形成可批准的毛利判断。 |

固定 IP 成本当前为空且未核验。默认 1 个固定 IP 仍在客户口径中包含；额外 IP 不单独自动计价，也不计入毛利成本。

### 4.5 CPE 目录月摊销（CNY）

| CPE 型号 | 12 月 | 24 月 | 36 月 | 已核验 |
| --- | ---: | ---: | ---: | --- |
| OneWAN1200-C1W | 113.01 | 56.50 | 37.67 | 是 |
| OneWAN1200-C1WM1 | 140.00 | 70.00 | 46.67 | 是 |
| OneWAN1200-L2WM | 190.40 | 95.20 | 63.47 | 是 |
| OneWAN1200-L | 190.40 | 95.20 | 63.47 | 是 |
| OneWAN1200-LWM | 224.00 | 112.00 | 74.67 | 是 |
| OneWAN1200-H1（默认） | 308.67 | 154.34 | 102.89 | 是 |
| OneWAN1200-H1WM1 | 358.40 | 179.20 | 119.47 | 是 |
| OneWAN1200-H1WM | 403.20 | 201.60 | 134.40 | 是 |
| OneWAN1200-H1M1 | 347.20 | 173.60 | 115.73 | 是 |
| OneWAN1200-S1 | 616.00 | 308.00 | 205.33 | 是 |
| OneWAN1200-S2 | 1,240.74 | 620.37 | 413.58 | 是 |
| OneWAN1200-X2 | 2,016.00 | 1,008.00 | 672.00 | 是 |

### 4.6 CPE 性能替换规则

| 承诺带宽 | 自动选型 |
| --- | --- |
| ≤300M | OneWAN1200-H1 |
| ＞300M 且 ≤1,200M | OneWAN1200-S1 |
| ＞1,200M 且 ≤2,000M | OneWAN1200-S2 |
| ＞2,000M 且 ≤5,000M | OneWAN1200-X2 |
| ＞5,000M | 无自动选型，必须专项确认 |

## 5. 特殊价格与审批路由表

| 前置条件 | 路由结果 | 对外/内部说明 |
| --- | --- | --- |
| 申请价对应的已核验毛利＜10% | `system_rejected` | 系统直接拒绝；不能提交为可批准价格。 |
| 报价阶段为“决定性报价” | `pending_approval` | 无论申请价是否达标，必须审批人确认。 |
| 项目场景为“中标后折扣” | `pending_approval` | 无论申请价是否达标，必须审批人确认。 |
| 非标准配置或专项报价 | `pending_approval` | 专项原因会随报价保存并提示审批。 |
| 标准报价、20 折可自动使用、申请价≥20 折价，且不命中强制审批条件 | `calculated` | 可直接使用，无需审批。 |
| 标准报价、申请价毛利≥20%，且不命中强制审批条件 | `calculated` | 可直接使用，无需审批。 |
| 标准报价、已核验毛利在 10%–＜20% | `pending_approval` | 进入审批确认。 |
| 成本未完整核验，且不能满足 20 折自动使用条件 | `pending_approval` | 不能自动通过；审批人也不能执行通过，需先补成本配置。 |
| 审批人“通过”或“调整后通过” | `approved` / `approved_with_adjustment` | 最终批准价仍必须满足≥10%毛利；否则系统禁止通过。 |
| 审批人“驳回” | `rejected` | 必须填写具体驳回原因。 |

> 审批记录在待审批状态下的 SLA 为 24 小时。申请价审批会基于源报价的输入重新计算一版报价，并关联上一版报价 ID；不能对他人项目、非最新报价版本或已有待审批申请重复发起。

## 6. 计算公式与例外

| 项目 | 公式 / 规则 |
| --- | --- |
| 基础带宽美元分 | `baseUsdCents + perMbpsUsdCents × committedBandwidthMbps` |
| 带宽人民币分 | `round(基础带宽美元分 × usdToCnyMicros ÷ 1,000,000)` |
| 默认 H1 的 CPE 目录价调整 | `H1月摊销 × max(0, CPE数量−1)`；默认包含 1 台 H1。 |
| 性能替换/非默认 CPE 的目录价调整 | `实际CPE月摊销 × CPE数量 − 默认H1月摊销`。 |
| 标准目录价 | `带宽人民币分 + CPE目录价调整`；专项时对外金额为空并显示“专项核价”。 |
| 25 折、20 折 | `round(目录价×25%)`、`round(目录价×20%)`。 |
| 地域成本 | `地域每M成本×承诺带宽`。 |
| CPE 成本 | `实际CPE月摊销×CPE数量`。 |
| 总毛利成本 | 地域与实际 CPE 成本均已核验时：`地域成本+CPE成本`；固定 IP 不纳入。 |
| 申请价毛利率 | `(申请价−总毛利成本)÷申请价`。 |
| 20 折资格 | `20折毛利率≥10%` 且成本完整核验。 |
| 不计入目录价的项目 | 额外固定 IP、突发带宽、超出默认一次派工的非标准交付；这些要么转专项，要么仅在客户材料中列为不包含项。 |

## 7. 快照、权限与可见性

| 对象 | 保存内容 | 可见性 / 约束 |
| --- | --- | --- |
| 报价输入 | 完整 `PricingInput`、幂等键、上一版报价 ID。 | 用于重算申请价版本与审计。 |
| 报价结果 | 金额、CPE、项目行、包含/不包含项、专项原因、计算时间。 | 销售可使用面向客户的结果。 |
| 定价快照 | 标准费率版本/实际档位、汇率版本及数值、成本版本、规则版本。 | 历史报价不因配置变更而改写。 |
| 成本快照 | 地域成本、CPE 成本、核验状态、总毛利成本、10%/20%阈值。 | 用于审批；销售端不暴露成本、毛利和内部理由。 |
| 工作流 | 场景、报价阶段、客户来源、申请价、审批结果、公开/内部理由、版本、时间。 | 销售仅见可公开字段；审批人可见内部成本依据。 |
| 客户材料 | 报价编号、状态、有效期、带宽、CPE、月度服务费、包含/不包含项、客户话术。 | 仅可导出已计算且无需审批或已获批的报价；不含成本、毛利、阈值。 |

## 8. 渠道、友商与历史参考价：当前实现边界

| 信息 | 当前处理方式 | 对正式报价 / 审批阈值的影响 |
| --- | --- | --- |
| 直客 / 渠道 | 项目记录 `customerSource`；审批工作流保留该字段。 | 不改变目录价、成本、毛利阈值或路由。 |
| 渠道名称 | 项目记录 `channelName`。 | 不参与计算。 |
| 渠道定价方式 | 项目记录“我方定价”或“渠道指定目标价”。 | 当前未形成渠道费率/折扣/底价规则；不能自动覆盖目录价。 |
| 友商价格 | 管理员维护地域、带宽、月价、来源、日期；同地域且带宽在目标带宽 75%–125% 的启用记录会被纳入。 | 先按单位带宽归一到目标带宽，再计算低位（25 分位）、中位（50 分位）、高位（75 分位）指导区间；**不参与成本、毛利或审批阈值计算**。 |
| 历史成交价 | 与友商价相同的带宽归一和指导区间逻辑；另记录客户分群和赢/输/未知结果。 | 仅作为定价指导；不参与正式金额和审批阈值。 |
| 参考价权限 | 销售可见聚合后的来源数量与指导区间；审批人可查看具体参考记录。 | 防止销售端获得不必要的内部来源明细。 |

## 9. 当前实现中需要特别注意的边界

| 边界 | 当前行为 |
| --- | --- |
| 500M 及以上 | 不再匹配标准费率，必须专项核价，即使 CPE 选型仍可推导。 |
| 100M、500M 等临界值 | 标准费率按左闭右开匹配；100M 落入 100M–＜500M 档；500M 转专项。 |
| 指定 CPE | 只有与性能自动选型一致的非默认型号可按标准处理；不一致即专项。 |
| 额外固定 IP | 当前没有已核验的额外 IP 成本与目录价规则，因此额外 IP 可能触发专项；默认 1 IP 不计入毛利成本。 |
| 成本缺失 | 可以生成目录价，但不能形成完整毛利判断；20 折不可自动使用，审批通过操作会被禁止。 |
| 突发带宽 | 仅在大于承诺带宽时转专项；尚无独立计价公式。 |
| 渠道与参考价 | 已有字段/参考库，但不是自动定价参数；若要上线渠道价，需要新增版本化渠道规则并继续保留 10%毛利底线与审批校验。 |
