Files
his/MD/specs/PREOP_DISCUSSION_DESIGN.md
华佗 5c425e12ea docs(specs): 三甲核心缺失模块深度设计 — 术前讨论/知情同意/病程记录
铁律17: 禁止浅层糊弄,必须深度分析+深度设计

1. MD/specs/PREOP_DISCUSSION_DESIGN.md (290行)
   - 三甲硬性: 三级/四级手术必须有术前讨论记录
   - 完整业务流程: 创建→签名→审核→绑定手术
   - 10条业务规则(PD-001~PD-010)
   - 数据模型: 讨论记录表+参与者表
   - 10个API接口
   - 前端页面设计(左右布局弹窗)
   - 8个测试用例

2. MD/specs/INFORMED_CONSENT_DESIGN.md (161行)
   - 三甲硬性: 手术/麻醉/输血必须签署知情同意
   - 7种知情同意类型
   - 完整签署流程: 发起→编辑→医生签→患者签→归档
   - 数据模型: 知情同意书表
   - 8条业务规则(IC-001~IC-008)
   - 6个测试用例

3. MD/specs/PROGRESS_NOTES_DESIGN.md (210行)
   - 三甲硬性: 病程记录时限监控(首次8h/日常3天/上级查房72h)
   - 12种病程记录类型及时限要求
   - 时限监控流程: 定时扫描→预警→通知→上报
   - 数据模型: 病程记录表+提醒表
   - 12条业务规则(PN-001~PN-012)
   - 前端设计: 时限监控面板
   - 6个测试用例
2026-06-06 15:15:35 +08:00

12 KiB
Raw Blame History

术前讨论记录模块设计文档

文档类型: 深度业务设计 版本: v1.0 编制日期: 2026-06-06 三甲依据: 《三级医院评审标准(2022版)》手术分级管理制度 — 三级/四级手术必须有术前讨论记录 评审条款: 现场检查必查项,缺失则一票否决


一、业务背景

1.1 为什么要术前讨论?

术前讨论是手术安全管理的核心制度。依据《医疗质量安全核心制度要点》2018版

  • 三级手术:必须有术前讨论,由副主任医师及以上主持
  • 四级手术:必须有科内讨论+全科讨论,由科主任主持
  • 术前讨论记录是病历的必要组成部分,评审专家现场必查

1.2 当前系统差距

当前系统已有手术管理模块(申请→审批→安排→执行),但缺少术前讨论记录这一关键环节。评审时如果手术病历中没有术前讨论记录,将被判定为不合格。

1.3 参考标准

  • 《医疗质量安全核心制度要点》2018版第5条术前讨论制度
  • 《病历书写基本规范》2010版手术记录要求
  • 《三级医院评审标准2022版手术质量安全核心指标
  • 《手术分级管理办法》:手术分级与讨论要求对应关系

二、完整业务流程

2.1 术前讨论全流程

医生提交手术申请
    │
    ▼
系统判断手术级别
    │
    ├── 一级/二级手术 → 无需术前讨论(可选)
    │
    └── 三级/四级手术 → 强制要求术前讨论
         │
         ▼
    创建术前讨论记录
         │
         ▼
    邀请讨论参与者至少2人
         │
         ▼
    讨论内容录入
    ├── 患者基本信息(自动带入)
    ├── 术前诊断(关联诊断模块)
    ├── 手术名称和指征
    ├── 手术方案(主方案+备选方案)
    ├── 麻醉方式
    ├── 术中可能风险及对策
    ├── 术后注意事项
    └── 讨论结论(同意手术/需进一步检查/暂不手术)
         │
         ▼
    参与者签名(电子签名)
         │
         ▼
    主持人审核确认
         │
         ▼
    绑定到手术申请
         │
         ▼
    手术申请可继续流转(审批→安排→执行)

2.2 异常流程

场景 处理方式
讨论结论为"暂不手术" 手术申请状态变为"讨论后暂停",需修改后重新讨论
讨论结论为"需进一步检查" 手术申请状态变为"待补充检查",检查完成后重新讨论
参与者不足(三级手术<2人 拦截提交,提示"三级手术术前讨论至少需要2名医师参与"
四级手术主持人非科主任 拦截提交,提示"四级手术必须由科主任主持讨论"
术前讨论记录缺失时尝试安排手术 系统拦截,提示"请先完成术前讨论"

三、状态流转

3.1 术前讨论记录状态

草稿(0) → 待签名(1) → 待审核(2) → 已完成(3) → 已归档(4)
                       ↓
                    已驳回(5) → 草稿(0)
状态 触发条件 允许操作
草稿 0 创建讨论记录 编辑/删除/提交签名
待签名 1 提交参与者签名 参与者签名
待审核 2 所有参与者已签名 主持人审核
已完成 3 主持人审核通过 绑定手术/查看
已归档 4 手术完成自动归档 查看
已驳回 5 主持人驳回 编辑后重新提交

四、业务规则

规则编号 规则名称 规则描述 触发时机 处理方式
PD-001 三级手术讨论 三级手术必须有术前讨论记录 手术审批时 缺失则拦截
PD-002 四级手术讨论 四级手术必须有科内讨论记录 手术审批时 缺失则拦截
PD-003 主持人资质 三级手术:副主任医师以上主持 创建讨论时 自动校验
PD-004 四级手术主持人 四级手术必须由科主任主持 创建讨论时 自动校验
PD-005 参与者人数 三级手术≥2人四级手术≥3人 提交时 不足则拦截
PD-006 讨论时效 术前讨论必须在手术前24小时内完成 创建讨论时 超时则提醒
PD-007 电子签名 所有参与者必须电子签名 审核前 未签则拦截
PD-008 绑定手术 讨论完成后自动绑定到对应手术申请 审核通过时 自动关联
PD-009 术前诊断一致性 讨论中的术前诊断必须与手术申请一致 提交审核时 不一致则警告
PD-010 手术方案完整性 必须包含主方案+至少一个备选方案 提交时 缺失则拦截

五、数据模型

5.1 术前讨论记录表 sys_preop_discussion

字段 类型 说明 必填
id BIGSERIAL 主键
encounter_id BIGINT 就诊ID
surgery_id BIGINT 关联手术申请ID
patient_id BIGINT 患者ID
patient_name VARCHAR(50) 患者姓名
discussion_type INT 讨论类型(1科内讨论 2全科讨论 3全院讨论)
surgery_level INT 手术级别(1/2/3/4)
preop_diagnosis TEXT 术前诊断
surgery_name VARCHAR(200) 手术名称
surgery_indication TEXT 手术指征
main_plan TEXT 主手术方案
backup_plan TEXT 备选手术方案
anesthesia_type VARCHAR(50) 麻醉方式
risks_and_countermeasures TEXT 术中可能风险及对策
postop_notes TEXT 术后注意事项
discussion_conclusion INT 讨论结论(1同意手术 2需进一步检查 3暂不手术)
discussion_result TEXT 讨论详细结果
host_user_id BIGINT 主持人用户ID
host_user_name VARCHAR(50) 主持人姓名
status INT 状态(0草稿 1待签名 2待审核 3已完成 4已归档 5已驳回)
discussion_time TIMESTAMP 讨论时间
discussion_location VARCHAR(200) 讨论地点

5.2 术前讨论参与者表 sys_preop_discussion_participant

字段 类型 说明 必填
id BIGSERIAL 主键
discussion_id BIGINT 关联讨论记录ID
user_id BIGINT 参与者用户ID
user_name VARCHAR(50) 参与者姓名
role VARCHAR(20) 角色(主持人/参与者/记录人)
title VARCHAR(50) 职称(主任医师/副主任医师/主治医师)
sign_status INT 签名状态(0未签 1已签)
sign_time TIMESTAMP 签名时间
sign_image TEXT 签名图片(base64)
opinion TEXT 个人意见

六、接口设计

6.1 API列表

方法 路径 说明
POST /preop-discussion/add 创建讨论记录
PUT /preop-discussion/update 修改讨论记录
GET /preop-discussion/detail 查看讨论详情
GET /preop-discussion/list 查询讨论列表
DELETE /preop-discussion/delete 删除讨论记录(仅草稿)
PUT /preop-discussion/submit 提交讨论(草稿→待签名)
PUT /preop-discussion/sign 参与者签名
PUT /preop-discussion/review 主持人审核(通过/驳回)
GET /preop-discussion/check-required 检查手术是否需要术前讨论
GET /preop-discussion/statistics 讨论统计

6.2 核心接口时序

创建术前讨论

前端: 弹出讨论表单 → 自动带入患者/手术信息
API: POST /preop-discussion/add
后端: 
  1. 校验手术级别(PD-001/PD-002)
  2. 校验主持人资质(PD-003/PD-004)
  3. 校验讨论时效(PD-006)
  4. 保存讨论记录+参与者
  5. 设置状态=草稿(0)
返回: {code:200, data:{discussionId}}

主持人审核

前端: 主持人查看讨论内容 → 点击"审核通过"
API: PUT /preop-discussion/review
后端:
  1. 校验当前用户是否为主持人
  2. 校验所有参与者已签名(PD-007)
  3. 校验参与者人数(PD-005)
  4. 校验手术方案完整性(PD-010)
  5. 更新状态=已完成(3)
  6. 自动绑定到手术申请(PD-008)
返回: {code:200, msg:"审核通过"}

七、前端页面设计

7.1 页面布局

┌─────────────────────────────────────────────┐
│ 术前讨论管理                    [新建讨论]    │
├─────────────────────────────────────────────┤
│ 搜索区: [患者] [手术级别] [状态] [日期] [搜索] │
├─────────────────────────────────────────────┤
│ 表格: 序号|患者|手术名称|级别|主持人|状态|操作 │
│       1  张三  阑尾切除  三级 李主任 已完成  │
├─────────────────────────────────────────────┤
│ 分页: < 1 2 3 >                            │
└─────────────────────────────────────────────┘

7.2 新建讨论弹窗(左右布局)

┌──────────────────────────┬────────────────────┐
│ 患者信息(自动带入)        │ 讨论内容           │
│ 姓名: 张三               │ 术前诊断: [____]   │
│ 住院号: 2026060001       │ 手术指征: [____]   │
│ 科室: 普外科             │ 主方案: [____]     │
│ 床号: 12床               │ 备选方案: [____]   │
│                          │ 麻醉方式: [____]   │
│ 手术信息(自动带入)        │ 风险及对策: [____] │
│ 手术名称: 阑尾切除术     │ 术后注意: [____]   │
│ 手术级别: 三级           │ 讨论结论: [单选]   │
│ 申请医生: 王医生         │                    │
│                          │ 讨论参与者:        │
│ 讨论信息                 │ □ 李主任(主持)     │
│ 讨论时间: [____]         │ □ 赵副主任         │
│ 讨论地点: [____]         │ □ 孙主治           │
│ 讨论类型: [科内讨论]     │                    │
└──────────────────────────┴────────────────────┘

八、与手术管理模块的集成

8.1 数据关联

手术申请(Surgery) ──1:N──→ 术前讨论记录(PreopDiscussion)
术前讨论记录 ──1:N──→ 参与者(Participant)

8.2 流程集成

  • 手术申请提交时:检查三级/四级手术是否有术前讨论
  • 手术审批时:强制校验术前讨论完成状态
  • 手术安排时:显示术前讨论结论
  • 手术完成时:自动归档术前讨论记录

8.3 手术管理页面改造

在手术管理页面的"操作"列增加"术前讨论"按钮:

  • 三级/四级手术:显示"查看讨论"或"新建讨论"
  • 一级/二级手术:显示"可选讨论"

九、测试用例

用例编号 场景 操作步骤 预期结果
TC-PD001 正常创建讨论 填写完整信息→保存 状态=草稿,可编辑
TC-PD002 三级手术强制讨论 三级手术不创建讨论直接审批 拦截,提示"请先完成术前讨论"
TC-PD003 参与者不足 三级手术只邀请1人 拦截,提示"至少需要2名医师"
TC-PD004 四级手术非科主任主持 主治医师主持四级手术讨论 拦截,提示"必须由科主任主持"
TC-PD005 签名流程 所有参与者签名→主持人审核 状态变为已完成
TC-PD006 驳回后修改 主持人驳回→修改→重新提交 状态从驳回回到草稿
TC-PD007 绑定手术 讨论完成→关联手术申请 手术申请可继续流转
TC-PD008 讨论时效校验 手术前48小时创建讨论 警告"请在手术前24小时内完成讨论"