# QX-2 前壳开模前 DFM 评审 · 第 2 轮

> 活页公开模板 `sample-dfm-review` · 场景: 小工具 · 轻应用 · 行业: 制造供应链 / 科技互联网
> 任何人、任何 Agent 都可以读、照着改，不需要账号。示例内容均为虚构。
> 真页面: https://getlivepage.com/s/D3jTxSOqleUE · 详情: https://getlivepage.com/examples/sample-dfm-review

## 这是什么

开模前 DFM 评审页 · 结构、模厂、工艺、品质一起过检查项

## 什么时候用

注塑件、钣金件、压铸件开模 / 开钢料前的可制造性评审：要把检查项按维度过一遍、会上当场改状态、看能不能开模，并让模厂、工艺、品质补问题。只是项目进度汇报选 sample-weekly-report；收报名、分场次名额选 sample-event-signup。

## 用户对助手说的原话

帮我做一份注塑件开模前的 DFM 评审页，发成一个网页链接：页头是公司与部门、文档编号与评审轮次、零件名和材料、评审要素（零件号、日期、结构 / 模厂 / 工艺 / 品质负责人）；第一块是记忆点：把壁厚、拔模、圆角、筋柱、卡扣滑块、公差装配、浇口外观、材料表面八个维度画成一张雷达图（本轮实线、上一轮虚线、开模门槛 80 分一圈虚线），下面一个综合分圆环和结论「可开模 / 带条件开模 / 需改模」（有一项不通过就是需改模）；第二块逐项检查，每个维度 3–4 条，每条写状态（通过 / 风险 / 不通过）、检查项和带具体数值的一句工程说明，点状态能切换，雷达、维度分和结论跟着动画重算，只在本机记住；第三块问题清单，每条写负责人、部门和截止日，对应检查项改成通过时自动划掉；最后一张表单让评审人补问题（维度、检查项、严重程度、说明、姓名），存到一张数据表，过审的读回到清单里。电脑上雷达、检查、问题清单三栏并排，手机上竖排、雷达换一套坐标。

如果你还没有活页连接器（MCP），先读 https://getlivepage.com/for-agents.md ，照里面的说明接入，或不登录直接发布。

## 照着做一份

1. 读入口文件 https://getlivepage.com/examples/sample-dfm-review/source/index.html（它引用的其他文件见下方列表）。
2. 保留结构、版式和交互，把内容**全部**换成用户自己的；模板里的公司、人名、数字都是虚构的，一样都别留。
3. 交付一个自包含的单文件 HTML：样式写在页面里，不引外部字体 / 脚本 / CDN；手机 375 宽和电脑 1440 宽都要好看，模板有暗色就保留暗色。
4. 要发成微信里能打开、改了链接不变的网页：接入活页（https://getlivepage.com/for-agents.md）后发布；没有账号也可以让用户在 https://getlivepage.com/quick 上传这个文件。
5. 没有活页工具、但能发 HTTPS 请求：把做好的 HTML 以 Content-Type: text/html POST 到 https://getlivepage.com/api/quick?client=template-sample-dfm-review ，返回预览链接、7 天分享与认领链接（登录后保留、链接不变）。

## 页面结构

- 开模结论
- 逐项检查
- 问题清单
- 补一条问题

## 文件（公开，纯文本）

- https://getlivepage.com/examples/sample-dfm-review/source/index.html（入口）

## 发成活页之后还能做的

- 八维度雷达图 + 开模结论环，点检查项切换状态后就地重算（本机记住，键带页面 id）
- 评审人补充问题写回数据表（原生表单 POST ./_data/findings），过审后读回到问题清单
- 同一链接每轮评审更新，链接不变

## 发之前要备好

- 数据表 findings（列 dimension / item / severity / note / name，append_open=true）：评审人补充的问题写进这里，页面读回过审的行列在问题清单「会上补充」下；评审结束把 append_open 关掉

## 模板说明（README）

结构工程师在开模前把这页发给模厂、注塑工艺和品质：会上投到会议室大屏一起过，散会后每人在微信里还能打开补问题。
品质标准见 `core/space/examples/QUALITY.md`。示例内容均为虚构（澄岭电器、恒拓模具、QX-2 风扇和所有人名都是编的）。

## 演示哪个特色

**一张会动的评审雷达 + 页内写回的问题表，同一个链接每轮评审更新。**

- 记忆点是八个检查维度的雷达图（内联 SVG，电脑 / 手机各一套坐标，进入视野时从中心长出来）：本轮实线、第 1 轮虚线、开模门槛 80 分一圈虚线；
  旁边的结论环给综合分和结论「可开模 / 带条件开模 / 需改模」—— 有任何一项「不通过」就是需改模，分数再高也不行。
- 每条检查项是一个按钮，点一下在 通过 → 风险 → 不通过 之间切换：维度分、雷达（600 ms 补间）、结论环、问题清单（对应项改成通过就划掉）就地重算。
  切换只存在本机 `localStorage`，键是 `dfm-status:` + `space.page.id`（同一工作区复制出的多份评审互不串）；「回到会前结论」一键清掉。不写回、不影响别人看到的内容。
- 文末是原生表单 `<form action="./_data/findings" method="post">`：不跑脚本也能提交；脚本在时 `fetch` POST 一行 JSON，就地显示「记下了」，
  再 `fetch('./_data/findings.json')` 把过审的行读回到问题清单的「会上补充」下。
- 发布者读回：MCP `list_data_rows table=findings`。

## 改哪里变成我的

检查项、维度、问题清单都写在 `index.html` 里；雷达的初始坐标与脚本里的 `D`（维度 → 检查项 id 与初始状态、两套雷达几何）要一致。

| 位置 | 改什么 |
|---|---|
| 页头 `.org` / `h1` / `.facts` | 公司与部门、文档编号与轮次、零件名、材料与模具、评审要素 |
| `#checks` 的 `.dim` 块 | 每个维度一块：`h3` 名称与分数，每条 `<button class="it" data-id data-s>` 的状态、检查项、带数值的说明 |
| 雷达 `svg.radar.wide` / `.narrow` | 维度名（`.lb`）、第 1 轮虚线（`.prev` 的 points）；本轮多边形由脚本按状态重算。维度数变了两套坐标都要重排 |
| 脚本 `var D` | `dims[].ids` / `init` 与页面上的 `data-id` / `data-s` 一致；`G` 是两套雷达的圆心与半径 |
| `#issues` 的 `.is` | 每条问题：`data-for` = 对应检查项 id（改成通过时划掉）、严重程度、负责人 · 部门 · 截止日 |
| 表单 `#finding` | 维度下拉跟着维度改；多收一列就给 `findings` 加一列、表单加一个同名输入框 |
| 页脚 | 平台标志与名称（与 `core/space/src/theme.ts` 的 `MARK_SVG` / `PUBLIC_NAME` 逐字一致）+ 一句适用场景；发自己的评审时整段删掉 |
| `manifest.json` | `title` / `share.*`；节增减时 `sections` 与页里的 `id` / `data-track-section` 三处同改 |

纪律：`findings` 开了写回，过审的行任何能看这页的人都读得到 —— 只收问题本身与署名，不收手机号；涉及客户图纸机密的细节别写进说明。
本地 `space-cli serve` 会把提交写进包里的 `_data/findings.json`，试完改回 `[]`。

## 怎么发出去

```bash
# 1. 建页面（MCP create_proposal）→ proposal_id
# 2. 建表：set_data proposal_id=<id> table="findings" revision=0 rows=[] columns=["dimension","item","severity","note","name"] append_open=true
# 3. 推整个目录（带 _data/ 回落）：
node core/space/cli/space-cli.mjs push <本目录> --proposal <proposal_id> --manifest <本目录>/manifest.json --hold
# 4. 预览：点一条检查项，雷达和结论环跟着动；5. publish_version；6. 发给评审组（set_visibility 口令可看或指定成员）
# 7. 散会后 list_data_rows table=findings 读补充问题，改好下一轮的检查项状态，同一链接再发一版
```

验收截图：`node --import tsx examples/verify-shots.mjs sample-dfm-review --write-thumb --write-phone`（QUALITY.md §7）。
