2.0 KiB
2.0 KiB
需求分析 — 2026-04-16-22-35-38
原始需求摘要
将默认手术报告模板中红色的 *姓名* *性别* *年龄* *科室* *床号* *住院号* 等占位符,替换为可填写的智能占位方框。这些方框需与 ReportEditor 右侧【基本信息】表单双向绑定,同时也要在 TemplateManage 的模板编辑中体现字段绑定关系。
需求拆解
功能点
-
修正字段映射一致性
- 上一版本中
BINDABLE_FIELDS里的gender、age等 key 与Report接口中的patientGender、patientAge不一致,导致双向绑定无法命中实际表单字段。 - 需要统一 key 命名,使其与
Report接口及右侧表单字段名完全一致。
- 上一版本中
-
更新默认模板内容 (
defaultContent.ts)- 将当前纯文本红色占位符(如
<span style="color: #ff0000;">*姓名*</span>)替换为smart-field-wrapper智能控件。 - 同步将手术日期、手术名称、手术者、助手、麻醉师、麻醉方式等灰色提示文本也替换为绑定控件,提升默认模板的智能化程度。
- 将当前纯文本红色占位符(如
-
确保双向绑定生效
- 替换后,新建报告时从默认模板加载的内容中已内嵌
data-bind属性,用户在方格中输入即可自动同步右侧表单;右侧表单修改也会同步回方格。
- 替换后,新建报告时从默认模板加载的内容中已内嵌
非功能点
- 不引入新的依赖或文件,仅修改现有常量与字段映射。
- 保持
npm run lint通过。 - 老用户已有的自定义模板不会被强制覆盖,仅默认模板生效。
影响范围预估
| 模块 | 影响程度 | 说明 |
|---|---|---|
src/types.ts |
中 | 修正 BINDABLE_FIELDS 的 key,精简为右侧表单实际存在的字段 |
src/utils/defaultContent.ts |
高 | 将占位符替换为智能控件 HTML |
src/pages/TemplateManage.tsx |
低 | 字段库按钮随 BINDABLE_FIELDS 自动更新 |
src/pages/ReportEditor.tsx |
低 | 无需改动,已有双向绑定逻辑直接生效 |
待确认问题
无。需求明确,修改范围可控。