From 4a42859e18867b9a8c6f16b85f0cde827a06498d Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 25 Sep 2026 14:42:51 +0000 Subject: [PATCH] docs(zh): zh headings carry the English explicit anchor id (#1359) Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01X8U3asekbiC7yWoEPWR4Dg --- .../zh-headings-carry-the-english-anchor-id.md | 14 ++++++++++++++ content/docs/administration/profiles.zh-Hans.mdx | 2 +- .../sharing-and-security.zh-Hans.mdx | 2 +- .../docs/marketing/campaign-members.zh-Hans.mdx | 2 +- .../docs/marketing/campaign-members.zh-Hant.mdx | 2 +- content/docs/marketing/campaigns.zh-Hans.mdx | 4 ++-- content/docs/marketing/campaigns.zh-Hant.mdx | 4 ++-- .../reference/security-and-compliance.zh-Hans.mdx | 8 ++++---- .../reference/security-and-compliance.zh-Hant.mdx | 8 ++++---- content/docs/sales/opportunities.zh-Hans.mdx | 2 +- content/docs/sales/opportunities.zh-Hant.mdx | 2 +- content/docs/sales/quotes.zh-Hans.mdx | 2 +- content/docs/sales/quotes.zh-Hant.mdx | 2 +- content/docs/service/cases.zh-Hans.mdx | 2 +- content/docs/service/cases.zh-Hant.mdx | 2 +- content/docs/service/index.zh-Hans.mdx | 2 +- content/docs/service/index.zh-Hant.mdx | 2 +- .../docs/service/sla-and-escalation.zh-Hans.mdx | 2 +- .../docs/service/sla-and-escalation.zh-Hant.mdx | 2 +- 19 files changed, 40 insertions(+), 26 deletions(-) create mode 100644 .changeset/zh-headings-carry-the-english-anchor-id.md diff --git a/.changeset/zh-headings-carry-the-english-anchor-id.md b/.changeset/zh-headings-carry-the-english-anchor-id.md new file mode 100644 index 000000000..f547cc0a8 --- /dev/null +++ b/.changeset/zh-headings-carry-the-english-anchor-id.md @@ -0,0 +1,14 @@ +--- +--- + +Docs only: a Chinese (zh-Hans / zh-Hant) heading now carries the same English explicit anchor id +as its English twin (`## 营销活动加入流程 [#campaign-enrollment-flow]`), so one anchor vocabulary +serves every locale (#1359). The same-page links on the campaigns and security-and-compliance +pages, which were reduced to plain text because they had nowhere to land, are links again; the +cross-page zh links to the campaign enrollment flow, quote generation and case escalation sections +jump to the section rather than the top of the page; and the one localized anchor +(`#字段级安全` on the zh-Hans sharing-and-security page) now uses the English id +`#field-level-security`. `test/docs-anchor-links.test.ts` resolves every one of them. + +This PR releases nothing to HotCRM users, so the frontmatter above is deliberately empty (the +sanctioned "releases nothing" declaration `.github/workflows/changeset-check.yml` documents). diff --git a/content/docs/administration/profiles.zh-Hans.mdx b/content/docs/administration/profiles.zh-Hans.mdx index 830622ef4..125746262 100644 --- a/content/docs/administration/profiles.zh-Hans.mdx +++ b/content/docs/administration/profiles.zh-Hans.mdx @@ -76,7 +76,7 @@ description: 六种内置权限集,以及每一种能查看、编辑和执行 例外是一个对象一个对象刻意写出来的:对象上的**行级规则**可以把更新放宽给某个权限档案的全部持有者。本应用只发布了两条,都在 Marketing User 上 —— **营销活动** 与 **营销活动成员** —— 因为登记与追踪成员是围绕加入流程(而非营销人员本人)创建的记录展开的团队协作。凡是没有这类规则的地方,无论读取范围写着什么,“编辑”都只意味着自己所有且自己创建的那些记录。 -## 字段级安全 +## 字段级安全 [#field-level-security] 权限档案还会屏蔽单个字段。当前随产品提供的配置: diff --git a/content/docs/administration/sharing-and-security.zh-Hans.mdx b/content/docs/administration/sharing-and-security.zh-Hans.mdx index b74ee5ee9..46404cb42 100644 --- a/content/docs/administration/sharing-and-security.zh-Hans.mdx +++ b/content/docs/administration/sharing-and-security.zh-Hans.mdx @@ -179,7 +179,7 @@ HotCRM **不提供客户团队对象** —— 客户上没有团队名单,也 ## 字段级安全 (FLS) -FLS 控制在一条 *可见* 记录内部,某个权限档案能看到和编辑 **哪些字段** —— 例如客户 **健康度评分** 对所有能看到该客户的人可读,但只有销售经理能设置它;而 **工单内部备注** 对销售代表完全隐藏。随产品提供的遮罩清单见[权限档案](/zh-Hans/docs/administration/profiles#字段级安全)。 +FLS 控制在一条 *可见* 记录内部,某个权限档案能看到和编辑 **哪些字段** —— 例如客户 **健康度评分** 对所有能看到该客户的人可读,但只有销售经理能设置它;而 **工单内部备注** 对销售代表完全隐藏。随产品提供的遮罩清单见[权限档案](/zh-Hans/docs/administration/profiles#field-level-security)。 FLS 在 **所有地方** 生效 —— 列表视图、报表、API 和 AI Copilot。被遮罩的字段也不能用于过滤、排序或分组。 diff --git a/content/docs/marketing/campaign-members.zh-Hans.mdx b/content/docs/marketing/campaign-members.zh-Hans.mdx index 9f5303791..f1af5bebd 100644 --- a/content/docs/marketing/campaign-members.zh-Hans.mdx +++ b/content/docs/marketing/campaign-members.zh-Hans.mdx @@ -11,7 +11,7 @@ description: 加入每个营销活动的线索和联系人,以及如何跟踪 三种方式: -1. **在营销活动上批量加入** — 打开一个营销活动,在记录页头部点击 **Enroll Members**(批量加入成员);该操作在营销活动处于 *Planning* 或 *In Progress* 时提供。它会打开 [Campaign Enrollment flow](/zh-Hans/docs/marketing/campaigns) 的 *Enrollment Criteria* 屏幕,由你自己在那里挑选受众——线索按状态,联系人按部门——然后为每个匹配的人创建一条状态为 *Sent* 的成员记录,并跳过已加入的人和已退订的人。没有任何东西会替你运行它:条件是在那个屏幕上回答的,而定时运行没有人来回答它们。 +1. **在营销活动上批量加入** — 打开一个营销活动,在记录页头部点击 **Enroll Members**(批量加入成员);该操作在营销活动处于 *Planning* 或 *In Progress* 时提供。它会打开 [Campaign Enrollment flow](/zh-Hans/docs/marketing/campaigns#campaign-enrollment-flow) 的 *Enrollment Criteria* 屏幕,由你自己在那里挑选受众——线索按状态,联系人按部门——然后为每个匹配的人创建一条状态为 *Sent* 的成员记录,并跳过已加入的人和已退订的人。没有任何东西会替你运行它:条件是在那个屏幕上回答的,而定时运行没有人来回答它们。 2. **从线索列表或联系人列表加入** — **Add to Campaign**(加入营销活动)两边都有。在列表里勾选需要的记录后批量运行,或在列表视图行的 ⋮ 菜单里对单条运行;两种方式都由记录选择器来选定营销活动。它在两个对象上都是列表操作,所以打开一条线索或一个联系人并不会提供它。已经在该活动里的人会被跳过,所以重复运行不会把一次触达算成两次——跳过检查按关系各查各的,因此同一个人以线索身份加入一次、又以联系人身份加入一次,是刻意保留的两条成员记录,而不是一次重复。营销活动上仍然没有一个 *Add Members* 选人器供你从线索和联系人列表视图中挑人。 3. **在营销活动上逐条新建** — 打开营销活动,在 *Related*(相关)选项卡里找到 **Campaign Members** 面板,用面板上的 **New**(新建)按钮手工填写一条成员记录。 diff --git a/content/docs/marketing/campaign-members.zh-Hant.mdx b/content/docs/marketing/campaign-members.zh-Hant.mdx index 31fd07491..ef6c27866 100644 --- a/content/docs/marketing/campaign-members.zh-Hant.mdx +++ b/content/docs/marketing/campaign-members.zh-Hant.mdx @@ -13,7 +13,7 @@ description: 加入每個行銷活動的潛在客戶和聯絡人,以及如何 三種方式: -1. **在行銷活動上批次加入** — 開啟一個行銷活動,在記錄頁標頭點擊 **Enroll Members**(批次加入成員);該操作在行銷活動處於 *Planning* 或 *In Progress* 時提供。它會開啟 [Campaign Enrollment flow](/zh-Hant/docs/marketing/campaigns) 的 *Enrollment Criteria* 畫面,由你自己在那裡挑選受眾——潛在客戶按狀態,聯絡人按部門——然後為每個符合的人建立一筆狀態為 *Sent* 的成員記錄,並略過已加入的人和已退訂的人。沒有任何東西會替你執行它:條件是在那個畫面上回答的,而定時執行沒有人來回答它們。 +1. **在行銷活動上批次加入** — 開啟一個行銷活動,在記錄頁標頭點擊 **Enroll Members**(批次加入成員);該操作在行銷活動處於 *Planning* 或 *In Progress* 時提供。它會開啟 [Campaign Enrollment flow](/zh-Hant/docs/marketing/campaigns#campaign-enrollment-flow) 的 *Enrollment Criteria* 畫面,由你自己在那裡挑選受眾——潛在客戶按狀態,聯絡人按部門——然後為每個符合的人建立一筆狀態為 *Sent* 的成員記錄,並略過已加入的人和已退訂的人。沒有任何東西會替你執行它:條件是在那個畫面上回答的,而定時執行沒有人來回答它們。 2. **從潛在客戶清單或聯絡人清單加入** — **Add to Campaign**(加入行銷活動)兩邊都有。在清單裡勾選需要的記錄後批次執行,或在清單檢視列的 ⋮ 選單裡對單筆執行;兩種方式都由記錄選擇器來選定行銷活動。它在兩個物件上都是清單操作,所以開啟一筆潛在客戶或一個聯絡人並不會提供它。已經在該活動裡的人會被略過,所以重複執行不會把一次觸達算成兩次——略過檢查按關係各查各的,因此同一個人以潛在客戶身分加入一次、又以聯絡人身分加入一次,是刻意保留的兩筆成員記錄,而不是一次重複。行銷活動上仍然沒有一個 *Add Members* 選人器讓你從潛在客戶和聯絡人清單檢視中挑人。 3. **在行銷活動上逐筆新增** — 開啟行銷活動,在 *Related*(相關)索引標籤裡找到 **Campaign Members** 面板,用面板上的 **New**(新增)按鈕手動填寫一筆成員記錄。 diff --git a/content/docs/marketing/campaigns.zh-Hans.mdx b/content/docs/marketing/campaigns.zh-Hans.mdx index a1ea2d11f..ade5ffbbc 100644 --- a/content/docs/marketing/campaigns.zh-Hans.mdx +++ b/content/docs/marketing/campaigns.zh-Hans.mdx @@ -61,9 +61,9 @@ description: 规划、启动并衡量市场营销举措——电子邮件、网 - **实时指标** — 指标块(发送、响应、转化、ROI)会在成员加入、成员响应、其线索转化、商机归因到该营销活动时随之重新计算。正在进行中的营销活动报的就是真实数字;不必等它结束才能读。 - **ROI 计算** — 营销活动的实际收入是相关成交赢单商机金额的汇总总和。ROI =(实际收入 − 实际成本)÷ 实际成本。 -成员加入被特意排除在这份清单之外:营销活动进入 *In Progress* 时没有任何东西会加入成员,之后也没有任何计划任务会加入。它是由人去按的一个按钮——见下面的「营销活动加入流程」。 +成员加入被特意排除在这份清单之外:营销活动进入 *In Progress* 时没有任何东西会加入成员,之后也没有任何计划任务会加入。它是由人去按的一个按钮——见下面的[营销活动加入流程](#campaign-enrollment-flow)。 -## 营销活动加入流程 +## 营销活动加入流程 [#campaign-enrollment-flow] 批量加入是你去运行的一步,而不是自动发生在你身上的事。打开营销活动,在记录页头部点击 **Enroll Members**(批量加入成员)——该操作在营销活动处于 *Planning* 或 *In Progress* 时提供——流程随即在该营销活动上打开它的 *Enrollment Criteria* 屏幕。 diff --git a/content/docs/marketing/campaigns.zh-Hant.mdx b/content/docs/marketing/campaigns.zh-Hant.mdx index 85f615404..9f36f169e 100644 --- a/content/docs/marketing/campaigns.zh-Hant.mdx +++ b/content/docs/marketing/campaigns.zh-Hant.mdx @@ -63,9 +63,9 @@ description: 規劃、啟動並衡量行銷舉措——電子郵件、網路研 - **即時指標** — 指標區塊(傳送、回應、轉化、ROI)會在成員加入、成員回應、其潛在客戶轉化、商機歸因到該行銷活動時隨之重新計算。正在進行中的行銷活動報的就是真實數字;不必等它結束才能讀。 - **ROI 計算** — 行銷活動的實際收入是相關成交贏單商機金額的彙總總和。ROI =(實際收入 − 實際成本)÷ 實際成本。 -成員加入被特意排除在這份清單之外:行銷活動進入 *In Progress* 時不會有任何東西加入成員,之後也沒有任何排程會加入。它是由人去按的一個按鈕——見下面的「行銷活動加入流程」。 +成員加入被特意排除在這份清單之外:行銷活動進入 *In Progress* 時不會有任何東西加入成員,之後也沒有任何排程會加入。它是由人去按的一個按鈕——見下面的[行銷活動加入流程](#campaign-enrollment-flow)。 -## 行銷活動加入流程 +## 行銷活動加入流程 [#campaign-enrollment-flow] 批次加入是你去執行的一步,而不是自動發生在你身上的事。開啟行銷活動,在記錄頁標頭點擊 **Enroll Members**(批次加入成員)——該操作在行銷活動處於 *Planning* 或 *In Progress* 時提供——流程隨即在該行銷活動上開啟它的 *Enrollment Criteria* 畫面。 diff --git a/content/docs/reference/security-and-compliance.zh-Hans.mdx b/content/docs/reference/security-and-compliance.zh-Hans.mdx index 88038e064..0d825c77c 100644 --- a/content/docs/reference/security-and-compliance.zh-Hans.mdx +++ b/content/docs/reference/security-and-compliance.zh-Hans.mdx @@ -87,7 +87,7 @@ description: SSO、MFA、审计日志、secret 字段通道、GDPR —— HotCRM | **岗位** | 共享规则可以点名的扁平访问群体——岗位之间什么都不会上卷 | | **共享规则** | OWD 的例外 | | **记录共享** | 按记录共享 —— `sys_record_share`,位于 **Setup → Record Shares** | -| **字段级安全** | 逐字段读/写 —— 见下方加密一节 | +| **字段级安全** | 逐字段读/写 —— 见下方[加密](#field-level-controls)一节 | 第六行原先写的是 *客户团队*。**不存在客户团队对象,也不存在按记录的团队功能** —— 这个 Salesforce 味的名字描述的其实是平台的按记录授权表 `sys_record_share`。HotCRM 确实带了一条**名叫** `account_team_sharing` 的共享规则(`src/sales/sharing/account.sharing.ts`),但那是一条把一组客户授权给某个岗位的规则,不是你能在某条记录上往里加人的团队。 @@ -147,7 +147,7 @@ description: SSO、MFA、审计日志、secret 字段通道、GDPR —— HotCRM ## 加密 -### 静态加密 +### 静态加密 [#at-rest] **AES-256 是真的,而且不是本页所描述的那个东西。** *(已更正。)* @@ -175,7 +175,7 @@ Unrecognized key(s) on this field: `encrypted`. **Webhook 以 HMAC-SHA256 签名** —— 作为平台能力是真的(`@objectstack/plugin-webhooks`),但 **HotCRM 没有声明 `webhooks` 能力**,所以本应用既不发送也不签名。 -### 字段级控制 +### 字段级控制 [#field-level-controls] 旧的*字段级加密*一节告诉管理员「在字段定义中把敏感字段标记为 **encrypted**」。那个键会被拒绝(见上),而它点名的 *View Encrypted Data* 权限在已安装依赖树中是**零命中**。取而代之的是三条真实通道,它们各司其职: @@ -237,7 +237,7 @@ HotCRM 能告诉你的是它给了你什么可用之物:上文的 `type: 'secr ## 灾难恢复 -*(your deployment。)* RPO、RTO、快照频率与跨区复制,是你的实例所运行的基础设施的属性。**本应用不调度任何备份、不度量任何恢复目标,已安装依赖树里也没有任何东西做这两件事** —— 静态加密一节提到的那个 `backup` schema 块描述的是一个没有消费者的形状。本页原先陈述的那些数字(1 小时 / 4 小时,30 天日快照与 1 年周快照)属于 *(unsourced)*,不会被当作实测结果再重复一次。 +*(your deployment。)* RPO、RTO、快照频率与跨区复制,是你的实例所运行的基础设施的属性。**本应用不调度任何备份、不度量任何恢复目标,已安装依赖树里也没有任何东西做这两件事** —— [静态加密](#at-rest)一节提到的那个 `backup` schema 块描述的是一个没有消费者的形状。本页原先陈述的那些数字(1 小时 / 4 小时,30 天日快照与 1 年周快照)属于 *(unsourced)*,不会被当作实测结果再重复一次。 自托管 —— 请参见[设置清单](/zh-Hans/docs/administration/setup)了解推荐的备份频率,并把这个频率当成需要你自己去落实的事。 diff --git a/content/docs/reference/security-and-compliance.zh-Hant.mdx b/content/docs/reference/security-and-compliance.zh-Hant.mdx index 485116523..ee73f04e2 100644 --- a/content/docs/reference/security-and-compliance.zh-Hant.mdx +++ b/content/docs/reference/security-and-compliance.zh-Hant.mdx @@ -89,7 +89,7 @@ description: SSO、MFA、稽核日誌、secret 欄位通道、GDPR —— HotCRM | **崗位** | 共享規則可以點名的扁平存取群體——崗位之間什麼都不會上卷 | | **共享規則** | OWD 的例外 | | **記錄共享** | 按記錄共享 —— `sys_record_share`,位於 **Setup → Record Shares** | -| **欄位級安全** | 逐欄位讀/寫 —— 見下方加密一節 | +| **欄位級安全** | 逐欄位讀/寫 —— 見下方[加密](#field-level-controls)一節 | 第六行原先寫的是 *客戶團隊*。**不存在客戶團隊物件,也不存在按記錄的團隊功能** —— 這個 Salesforce 味的名字描述的其實是平台的按記錄授權表 `sys_record_share`。HotCRM 確實帶了一條**名叫** `account_team_sharing` 的共享規則(`src/sales/sharing/account.sharing.ts`),但那是一條把一組客戶授權給某個崗位的規則,不是你能在某條記錄上往裡加人的團隊。 @@ -149,7 +149,7 @@ description: SSO、MFA、稽核日誌、secret 欄位通道、GDPR —— HotCRM ## 加密 -### 靜態加密 +### 靜態加密 [#at-rest] **AES-256 是真的,而且不是本頁所描述的那個東西。** *(已更正。)* @@ -177,7 +177,7 @@ Unrecognized key(s) on this field: `encrypted`. **Webhook 以 HMAC-SHA256 簽名** —— 作為平台能力是真的(`@objectstack/plugin-webhooks`),但 **HotCRM 沒有宣告 `webhooks` 能力**,所以本應用既不發送也不簽名。 -### 欄位級控制 +### 欄位級控制 [#field-level-controls] 舊的*欄位級加密*一節告訴管理員「在欄位定義中把敏感欄位標記為 **encrypted**」。那個鍵會被拒絕(見上),而它點名的 *View Encrypted Data* 權限在已安裝依賴樹中是**零命中**。取而代之的是三條真實通道,它們各司其職: @@ -239,7 +239,7 @@ HotCRM 能告訴你的是它給了你什麼可用之物:上文的 `type: 'secr ## 災難恢復 -*(your deployment。)* RPO、RTO、快照頻率與跨區複製,是你的實例所運行的基礎設施的屬性。**本應用不排程任何備份、不度量任何恢復目標,已安裝依賴樹裡也沒有任何東西做這兩件事** —— 靜態加密一節提到的那個 `backup` schema 塊描述的是一個沒有消費者的形狀。本頁原先陳述的那些數字(1 小時 / 4 小時,30 天日快照與 1 年週快照)屬於 *(unsourced)*,不會被當作實測結果再重複一次。 +*(your deployment。)* RPO、RTO、快照頻率與跨區複製,是你的實例所運行的基礎設施的屬性。**本應用不排程任何備份、不度量任何恢復目標,已安裝依賴樹裡也沒有任何東西做這兩件事** —— [靜態加密](#at-rest)一節提到的那個 `backup` schema 塊描述的是一個沒有消費者的形狀。本頁原先陳述的那些數字(1 小時 / 4 小時,30 天日快照與 1 年週快照)屬於 *(unsourced)*,不會被當作實測結果再重複一次。 自託管 —— 請參見[設定清單](/zh-Hant/docs/administration/setup)了解推薦的備份頻率,並把這個頻率當成需要你自己去落實的事。 diff --git a/content/docs/sales/opportunities.zh-Hans.mdx b/content/docs/sales/opportunities.zh-Hans.mdx index e9547f668..2692909df 100644 --- a/content/docs/sales/opportunities.zh-Hans.mdx +++ b/content/docs/sales/opportunities.zh-Hans.mdx @@ -181,7 +181,7 @@ description: 活跃的销售交易——销售管道的核心,包含 7 个阶 - **销售路径**——摘要栏下方的阶段条:七个阶段按漏斗顺序排开,当前阶段被标出,已经走过的打勾。它是一个**只读指示器,而不是控件**——阶段并不可点击,所以既没有「一键推进阶段」这回事,点某个阶段也不会把交易移到那个阶段去。推进一笔交易靠改它的**阶段**字段(在 *Details* 标签页里或编辑表单上),而这次移动允不允许,由上文《7 个销售阶段》里的转换规则决定。 - **三个标签页:** - **Details**——打开一笔交易时停在的那一个。**三个**分区、**七个**字段,清单见上文《商机记录存储的内容》;已经在**关键信息**摘要栏里的那些字段,这里刻意不重复。 - - **Related**——一个手风琴里的三块面板,进来时只有第一块是展开的。**Quotes**——这笔交易的报价单;运行 [报价生成流程](/zh-Hans/docs/sales/quotes) 的那个**生成报价单**按钮并不在这个列表上,它是上面头部的按钮之一。**Products**——这笔交易的行项目;这个面板把它们列出来、给一个跳转到完整列表的链接,并带一个 **Add** 按钮。那个按钮是一个 `add` 选取器,不是一个动作:这个应用里没有**添加产品**这个动作(见上文《行项目——实际在销售什么》)。**Open Tasks**——本商机经**关联商机**字段挂上来的 `crm_task` 记录,过滤掉状态为 *Completed* 的,一次十条。 + - **Related**——一个手风琴里的三块面板,进来时只有第一块是展开的。**Quotes**——这笔交易的报价单;运行 [报价生成流程](/zh-Hans/docs/sales/quotes#generating-a-quote) 的那个**生成报价单**按钮并不在这个列表上,它是上面头部的按钮之一。**Products**——这笔交易的行项目;这个面板把它们列出来、给一个跳转到完整列表的链接,并带一个 **Add** 按钮。那个按钮是一个 `add` 选取器,不是一个动作:这个应用里没有**添加产品**这个动作(见上文《行项目——实际在销售什么》)。**Open Tasks**——本商机经**关联商机**字段挂上来的 `crm_task` 记录,过滤掉状态为 *Completed* 的,一次十条。 - **Activity**——统一汇集评论、已记录通话(`sys_activity`)、外发邮件(`sys_email`)、任务完成以及字段历史审计条目。商机上每个被跟踪的更改(阶段、金额、预计成交日期、负责人)都会自动出现在这里;没有单独的"历史"标签页。 - **竞争对手与备注**——不存在这样一个面板。这一页(`src/sales/pages/opportunity_detail.page.ts`)声明了三个区域:一个头部、一个装着那组标签页的主列,以及一条窄侧栏(`aside`),而侧栏里唯一的组件就是下一条讲的参考栏。页面上没有任何组件渲染「谈话要点」,也没有竞争对手字段可渲染了:商机上那个**竞争对手**多选字段只有三个占位选项(*Competitor A*、*Competitor B*、*Competitor C*),应用里没有任何界面把它读回来,#1061 已将其退役。应用里仅存的竞争对手信号,是「输给竞争对手」这条丢单原因,以及它旁边的自由文本 **赢/丢单详情**。这一页上最接近「备注」的,是 *Details* 标签页里那个可折叠的 **描述** 分区,里面放着 **描述** 与 **下一步**。 - **AI 参考栏**——参考栏确实存在,但里面没有任何一条建议,这一页上也没有任何一个组件是 AI 驱动的。它是那条侧栏里的一个 `record:reference_rail`,三张卡片每一张都只是已经关联到本商机的记录快照:报价单 `crm_quote`(经其 **商机** 查找字段)、本商机的 `crm_opportunity_line_item` 明细行、任务 `crm_task`(经 **关联商机** 字段)。每张卡片给出关联记录总数的徽章、最多三条记录,以及一个跳转到完整列表的 *View all* 链接;查出来是空的卡片会折叠成一个 *+ N empty* 小按钮。卡片的标题按你当前阅读界面的语言取自对象标签——中文界面下是**报价单**、**商机产品明细**、**任务**——因为参考栏的条目自己不声明标题,标题是到译文包里查的,与全站其他地方取对象名的来源是同一处。两点提醒。参考栏的条目无法过滤,这三条也都没有声明过滤条件:查询只按关联字段走,所以任务那张卡片统计和列出的是本商机的全部任务,不分状态。这也正是它的标题是**任务**而不是「待办任务」的原因——真正过滤掉 *Completed*、一次十条的,是 *Related* 标签页上的 **Open Tasks** 列表。另外,参考栏里没有 Customer 360、没有营收预测,也没有任何「相关信号」,整页都没有:那些技能是靠提问去用的——见下文《AI Copilot 如何提供帮助》。 diff --git a/content/docs/sales/opportunities.zh-Hant.mdx b/content/docs/sales/opportunities.zh-Hant.mdx index 4aa61a7ef..d3feb9a7b 100644 --- a/content/docs/sales/opportunities.zh-Hant.mdx +++ b/content/docs/sales/opportunities.zh-Hant.mdx @@ -183,7 +183,7 @@ description: 活躍的銷售交易——銷售管道的核心,包含 7 個階 - **銷售路徑**——摘要欄下方的階段條:七個階段按漏斗順序排開,當前階段被標出,已經走過的打勾。它是一個**唯讀指示器,而不是控制項**——階段並不可點擊,所以既沒有「一鍵推進階段」這回事,點某個階段也不會把交易移到那個階段去。推進一筆交易靠改它的**階段**欄位(在 *Details* 標籤頁裡或編輯表單上),而這次移動允不允許,由上文《7 個銷售階段》裡的轉換規則決定。 - **三個標籤頁:** - **Details**——打開一筆交易時停在的那一個。**三個**分區、**七個**欄位,清單見上文《商機記錄儲存的內容》;已經在**關鍵資訊**摘要欄裡的那些欄位,這裡刻意不重複。 - - **Related**——一個手風琴裡的三塊面板,進來時只有第一塊是展開的。**Quotes**——這筆交易的報價單;執行 [報價生成流程](/zh-Hant/docs/sales/quotes) 的那個**生成報價單**按鈕並不在這個列表上,它是上面頭部的按鈕之一。**Products**——這筆交易的行項目;這個面板把它們列出來、給一個跳轉到完整列表的連結,並帶一個 **Add** 按鈕。那個按鈕是一個 `add` 選取器,不是一個動作:這個應用裡沒有**新增產品**這個動作(見上文《行項目——實際在銷售什麼》)。**Open Tasks**——本商機經**關聯商機**欄位掛上來的 `crm_task` 記錄,過濾掉狀態為 *Completed* 的,一次十筆。 + - **Related**——一個手風琴裡的三塊面板,進來時只有第一塊是展開的。**Quotes**——這筆交易的報價單;執行 [報價生成流程](/zh-Hant/docs/sales/quotes#generating-a-quote) 的那個**生成報價單**按鈕並不在這個列表上,它是上面頭部的按鈕之一。**Products**——這筆交易的行項目;這個面板把它們列出來、給一個跳轉到完整列表的連結,並帶一個 **Add** 按鈕。那個按鈕是一個 `add` 選取器,不是一個動作:這個應用裡沒有**新增產品**這個動作(見上文《行項目——實際在銷售什麼》)。**Open Tasks**——本商機經**關聯商機**欄位掛上來的 `crm_task` 記錄,過濾掉狀態為 *Completed* 的,一次十筆。 - **Activity**——統一彙集評論、已記錄通話(`sys_activity`)、外發郵件(`sys_email`)、任務完成以及欄位歷史稽核條目。商機上每個被追蹤的更改(階段、金額、預計成交日期、負責人)都會自動出現在這裡;沒有單獨的「歷史」標籤頁。 - **競爭對手與備註**——不存在這樣一個面板。這一頁(`src/sales/pages/opportunity_detail.page.ts`)宣告了三個區域:一個頭部、一個裝著那組標籤頁的主欄,以及一條窄側欄(`aside`),而側欄裡唯一的元件就是下一條講的參考欄。頁面上沒有任何元件渲染「談話要點」,也沒有競爭對手欄位可渲染了:商機上那個**競爭對手**多選欄位只有三個佔位選項(*Competitor A*、*Competitor B*、*Competitor C*),應用裡沒有任何介面把它讀回來,#1061 已將其退役。應用裡僅存的競爭對手訊號,是「輸給競爭對手」這條丟單原因,以及它旁邊的自由文字 **贏/丟單詳情**。這一頁上最接近「備註」的,是 *Details* 標籤頁裡那個可摺疊的 **描述** 分區,裡面放著 **描述** 與 **下一步**。 - **AI 參考欄**——參考欄確實存在,但裡面沒有任何一條建議,這一頁上也沒有任何一個元件是 AI 驅動的。它是那條側欄裡的一個 `record:reference_rail`,三張卡片每一張都只是已經關聯到本商機的記錄快照:報價單 `crm_quote`(經其 **商機** 查找欄位)、本商機的 `crm_opportunity_line_item` 明細行、任務 `crm_task`(經 **關聯商機** 欄位)。每張卡片給出關聯記錄總數的徽章、最多三筆記錄,以及一個跳轉到完整列表的 *View all* 連結;查出來是空的卡片會摺疊成一個 *+ N empty* 小按鈕。卡片的標題取自對象標籤,隨你當前介面語言而變——英文介面下是 **Quote**、**Opportunity Line Item**、**Task**,簡體中文介面下是「报价单」「商机产品明细」「任务」——因為參考欄的條目自己不宣告標題,標題是到譯文包裡查的,與全站其他地方取對象名的來源是同一處。兩點提醒。參考欄的條目無法過濾,這三條也都沒有宣告過濾條件:查詢只按關聯欄位走,所以任務那張卡片統計和列出的是本商機的全部任務,不分狀態。這也正是它的標題是「任務」而不是「待辦任務」的原因——真正過濾掉 *Completed*、一次十筆的,是 *Related* 標籤頁上的 **Open Tasks** 列表。另外,參考欄裡沒有 Customer 360、沒有營收預測,也沒有任何「相關訊號」,整頁都沒有:那些技能是靠提問去用的——見下文《AI Copilot 如何提供協助》。 diff --git a/content/docs/sales/quotes.zh-Hans.mdx b/content/docs/sales/quotes.zh-Hans.mdx index 3487bd6c2..b9285edac 100644 --- a/content/docs/sales/quotes.zh-Hans.mdx +++ b/content/docs/sales/quotes.zh-Hans.mdx @@ -82,7 +82,7 @@ Total Price = Subtotal − Discount + Tax + Shipping & Handling 这些链接是抄过来的,不是凭空补出来的:起草出来的合同要求填**主要联系人**,而它取自报价;推进成交那一步认的是报价上的**关联商机**。所以在标记接受之前,先把这两项挂到报价上——报价上没有的,接受这一步也传不下去。 -## 生成报价 +## 生成报价 [#generating-a-quote] 你不需手动创建报价——而是打开任意商机并点击**生成报价**。会弹出一个简短的表单: diff --git a/content/docs/sales/quotes.zh-Hant.mdx b/content/docs/sales/quotes.zh-Hant.mdx index 8989bc9d5..1666d4640 100644 --- a/content/docs/sales/quotes.zh-Hant.mdx +++ b/content/docs/sales/quotes.zh-Hant.mdx @@ -84,7 +84,7 @@ Total Price = Subtotal − Discount + Tax + Shipping & Handling 這些連結是抄過來的,不是憑空補出來的:起草出來的合約要求填**主要聯絡人**,而它取自報價;推進成交那一步認的是報價上的**關聯商機**。所以在標記接受之前,先把這兩項掛到報價上——報價上沒有的,接受這一步也傳不下去。 -## 生成報價 +## 生成報價 [#generating-a-quote] 你不需手動建立報價——而是打開任意商機並點擊**生成報價**。會彈出一個簡短的表單: diff --git a/content/docs/service/cases.zh-Hans.mdx b/content/docs/service/cases.zh-Hans.mdx index b899694eb..46dcd9703 100644 --- a/content/docs/service/cases.zh-Hans.mdx +++ b/content/docs/service/cases.zh-Hans.mdx @@ -121,7 +121,7 @@ description: 客户支持工单——主题、优先级、状态、解决方案 ## 工单升级 -[工单升级流程](/zh-Hans/docs/service/sla-and-escalation)只在一个条件下运行:**工单处于 Critical 优先级**。不存在 High 优先级这一分支,也没有任何升级条件会读取账户——Customer 的 High 工单与潜在客户的 High 工单待遇完全相同:两者都不会自行升级,要升级它靠的是手动的 **Escalate Case** 按钮。 +[工单升级流程](/zh-Hans/docs/service/sla-and-escalation#case-escalation)只在一个条件下运行:**工单处于 Critical 优先级**。不存在 High 优先级这一分支,也没有任何升级条件会读取账户——Customer 的 High 工单与潜在客户的 High 工单待遇完全相同:两者都不会自行升级,要升级它靠的是手动的 **Escalate Case** 按钮。 它会执行: diff --git a/content/docs/service/cases.zh-Hant.mdx b/content/docs/service/cases.zh-Hant.mdx index 7fb348177..3a22837d4 100644 --- a/content/docs/service/cases.zh-Hant.mdx +++ b/content/docs/service/cases.zh-Hant.mdx @@ -123,7 +123,7 @@ description: 客戶支援工單——主題、優先順序、狀態、解決方 ## 工單升級 -[工單升級流程](/zh-Hant/docs/service/sla-and-escalation)只在一個條件下執行:**工單處於 Critical 優先順序**。不存在 High 優先順序這一分支,也沒有任何升級條件會讀取帳戶——Customer 的 High 工單與潛在客戶的 High 工單待遇完全相同:兩者都不會自行升級,要升級它靠的是手動的 **Escalate Case** 按鈕。 +[工單升級流程](/zh-Hant/docs/service/sla-and-escalation#case-escalation)只在一個條件下執行:**工單處於 Critical 優先順序**。不存在 High 優先順序這一分支,也沒有任何升級條件會讀取帳戶——Customer 的 High 工單與潛在客戶的 High 工單待遇完全相同:兩者都不會自行升級,要升級它靠的是手動的 **Escalate Case** 按鈕。 它會執行: diff --git a/content/docs/service/index.zh-Hans.mdx b/content/docs/service/index.zh-Hans.mdx index 6c9bed688..28758bd62 100644 --- a/content/docs/service/index.zh-Hans.mdx +++ b/content/docs/service/index.zh-Hans.mdx @@ -27,7 +27,7 @@ New ──► In Progress ──► Waiting on Customer ──► Resolved ─ 2. **分配优先级**——Low、Medium、High 或 Critical。*Critical* 会立即提醒**工单负责人**,而不是支持经理:这条提醒的收件人列表只有 `{caseRecord.owner_id}` 一项。 3. **计算 SLA 目标**——每个工单都会根据优先级获得一个截止时间。 4. **客服处理工单**,随进度推进状态。 -5. **如果是 Critical**(或 SLA 截止日期已过),[升级流程](/zh-Hans/docs/service/sla-and-escalation)会把工单标记为 *Escalated*、移交给负载最轻的 **Service Manager**,并提醒它原来那位客服。移交的对象是一个扁平的岗位池,而不是向上的汇报线;若无人持有该岗位,工单就保留原负责人。没有任何升级条件会读取账户,所以 *Customer* 的工单没有属于自己的分支。 +5. **如果是 Critical**(或 SLA 截止日期已过),[升级流程](/zh-Hans/docs/service/sla-and-escalation#case-escalation)会把工单标记为 *Escalated*、移交给负载最轻的 **Service Manager**,并提醒它原来那位客服。移交的对象是一个扁平的岗位池,而不是向上的汇报线;若无人持有该岗位,工单就保留原负责人。没有任何升级条件会读取账户,所以 *Customer* 的工单没有属于自己的分支。 6. **记录解决方案**,自动标记解决时间,并关闭工单。 ## 系统为你做的事 diff --git a/content/docs/service/index.zh-Hant.mdx b/content/docs/service/index.zh-Hant.mdx index 962343e77..c64f31961 100644 --- a/content/docs/service/index.zh-Hant.mdx +++ b/content/docs/service/index.zh-Hant.mdx @@ -29,7 +29,7 @@ New ──► In Progress ──► Waiting on Customer ──► Resolved ─ 2. **分配優先順序**——Low、Medium、High 或 Critical。*Critical* 會立即提醒**工單負責人**,而不是支援經理:這條提醒的收件人列表只有 `{caseRecord.owner_id}` 一項。 3. **計算 SLA 目標**——每個工單都會根據優先順序獲得一個截止時間。 4. **客服處理工單**,隨進度推進狀態。 -5. **如果是 Critical**(或 SLA 截止日期已過),[升級流程](/zh-Hant/docs/service/sla-and-escalation)會把工單標記為 *Escalated*、移交給負載最輕的 **Service Manager**,並提醒它原來那位客服。移交的對象是一個扁平的職位池,而不是向上的匯報線;若無人持有該職位,工單就保留原負責人。沒有任何升級條件會讀取帳戶,所以 *Customer* 的工單沒有屬於自己的分支。 +5. **如果是 Critical**(或 SLA 截止日期已過),[升級流程](/zh-Hant/docs/service/sla-and-escalation#case-escalation)會把工單標記為 *Escalated*、移交給負載最輕的 **Service Manager**,並提醒它原來那位客服。移交的對象是一個扁平的職位池,而不是向上的匯報線;若無人持有該職位,工單就保留原負責人。沒有任何升級條件會讀取帳戶,所以 *Customer* 的工單沒有屬於自己的分支。 6. **記錄解決方案**,自動標記解決時間,並關閉工單。 ## 系統為你做的事 diff --git a/content/docs/service/sla-and-escalation.zh-Hans.mdx b/content/docs/service/sla-and-escalation.zh-Hans.mdx index aac9244e3..52f7f2256 100644 --- a/content/docs/service/sla-and-escalation.zh-Hans.mdx +++ b/content/docs/service/sla-and-escalation.zh-Hans.mdx @@ -64,7 +64,7 @@ SLA(服务级别协议)系统为**每一张工单**打上一个**截止时 这份报表是支持团队最常用的 KPI。 -## 工单升级 +## 工单升级 [#case-escalation] 工单升级流程会自动把卡住或严重的工单标记为已升级、移交给 **Service Manager** 岗位池,并提醒必须处理它的人。移交的对象是一个岗位池,而不是向上的汇报链——岗位是扁平的,解析不出「负责人的经理」——而当无人持有该岗位时,工单仍归原来那位客服所有。 diff --git a/content/docs/service/sla-and-escalation.zh-Hant.mdx b/content/docs/service/sla-and-escalation.zh-Hant.mdx index a2f49f51b..f48c80a06 100644 --- a/content/docs/service/sla-and-escalation.zh-Hant.mdx +++ b/content/docs/service/sla-and-escalation.zh-Hant.mdx @@ -66,7 +66,7 @@ SLA(服務級別協議)系統為**每一張工單**打上一個**截止時 這份報表是支援團隊最常用的 KPI。 -## 工單升級 +## 工單升級 [#case-escalation] 工單升級流程會自動把卡住或嚴重的工單標記為已升級、移交給 **Service Manager** 職位池,並提醒必須處理它的人。移交的對象是一個職位池,而不是向上的匯報鏈——職位是扁平的,解析不出「負責人的經理」——而當無人持有該職位時,工單仍歸原來那位客服所有。