铁律15: 模块设计必须分析业务逻辑,不能只做CRUD - 必须查阅标准规范、梳理业务流程、设计状态流转、定义业务规则 - 附设计文档模板和医疗HIS参考标准清单 铁律16: 模块优化必须分析现有业务流并说明促进作用 - 必须回答5个问题:位置/关联/促进/兼容/冲突 - 附业务逻辑分析文档模板 业务逻辑设计文档: - MD/specs/SURGERY_MANAGEMENT_DESIGN.md (139行) - 状态机: 待申请→待审批→已审批→待手术→手术中→已完成 - 7条业务规则: 分级权限/术前讨论/术前评估/手术室冲突/禁食/随访/安全核查 - MD/specs/ORDER_MANAGEMENT_DESIGN.md - 状态机: 新开→签发→执行中→已完成/已停止/已签退 - 6条业务规则: 停止时限/用药审核/查对/紧急标识/修改限制/皮试联动 - MD/specs/BED_MANAGEMENT_DESIGN.md - 状态机: 空闲↔占用↔清洁中↔维修中 - 5条业务规则: 分配校验/科室匹配/自动清洁/使用率统计/预约 后端业务逻辑增强: - SurgeryAppService: +手术室冲突校验 +手术统计 - BedController: +床位使用率统计 +分配校验 +出院自动清洁 - EsbMessageController: +消息路由校验 +消息轨迹 +死信队列处理
140 lines
5.5 KiB
Markdown
140 lines
5.5 KiB
Markdown
# 手术管理模块设计文档
|
||
|
||
> **文档类型**: 业务设计
|
||
> **版本**: v1.0
|
||
> **编制日期**: 2026-06-06
|
||
> **依据标准**: 《三级医院评审标准(2022版)》手术质量安全核心制度
|
||
|
||
---
|
||
|
||
## 一、业务背景
|
||
|
||
手术管理是三甲医院评审的核心检查项。依据《医疗质量安全核心制度》中的"手术分级管理制度"和"术前讨论制度",手术必须经过完整的术前评估→审批→执行→术后跟踪流程。
|
||
|
||
### 参考标准
|
||
- 三级医院评审标准(2022版) — 手术质量安全核心指标
|
||
- 电子病历应用水平分级评价 — 4级要求手术信息全院共享
|
||
- 《手术分级管理办法》— 手术分级授权管理
|
||
- 《病案管理与质量控制标准》— 手术记录规范
|
||
|
||
---
|
||
|
||
## 二、状态流转
|
||
|
||
### 2.1 手术状态机
|
||
|
||
```
|
||
待申请(0) → 待审批(1) → 已审批(2) → 待手术(3) → 手术中(4) → 已完成(5)
|
||
↓ ↓
|
||
已驳回(6) 已取消(7)
|
||
```
|
||
|
||
| 状态 | 值 | 触发条件 | 允许操作 |
|
||
|------|-----|---------|---------|
|
||
| 待申请 | 0 | 医生提交手术申请 | 编辑/删除/提交审批 |
|
||
| 待审批 | 1 | 提交审批 | 审批/驳回 |
|
||
| 已审批 | 2 | 科主任审批通过 | 安排手术室/取消 |
|
||
| 待手术 | 3 | 安排手术室和时间 | 开始手术/取消 |
|
||
| 手术中 | 4 | 主刀医生确认开始 | 记录术中事件/完成 |
|
||
| 已完成 | 5 | 主刀医生确认完成 | 查看/打印记录 |
|
||
| 已驳回 | 6 | 科主任驳回 | 编辑后重新提交 |
|
||
| 已取消 | 7 | 任意阶段取消 | 查看 |
|
||
|
||
### 2.2 手术分级
|
||
|
||
| 级别 | 名称 | 审批权限 | 示例 |
|
||
|------|------|---------|------|
|
||
| 一级 | 一级手术 | 住院医师可独立完成 | 阑尾切除术 |
|
||
| 二级 | 二级手术 | 主治医师以上 | 胃大部切除术 |
|
||
| 三级 | 三级手术 | 副主任医师以上 | 心脏搭桥术 |
|
||
| 四级 | 四级手术 | 科主任审批+医务部备案 | 器官移植术 |
|
||
|
||
---
|
||
|
||
## 三、业务规则
|
||
|
||
| 规则编号 | 规则名称 | 规则描述 | 触发时机 |
|
||
|---------|---------|---------|---------|
|
||
| SR-001 | 手术分级权限校验 | 医生只能申请其权限范围内的手术级别 | 提交申请时 |
|
||
| SR-002 | 术前讨论记录 | 三级/四级手术必须有术前讨论记录 | 提交审批时 |
|
||
| SR-003 | 术前评估 | 必须完成麻醉评估和手术风险评估 | 安排手术时 |
|
||
| SR-004 | 手术室冲突检查 | 同一手术室同一时间不能安排两台手术 | 安排手术室时 |
|
||
| SR-005 | 术前禁食提醒 | 手术前8小时禁止进食,4小时禁止饮水 | 手术前1天 |
|
||
| SR-006 | 术后随访 | 手术后24h/48h/72h必须有随访记录 | 完成手术后 |
|
||
| SR-007 | 手术安全核查 | 术前/术中/术后三次安全核查(WS/T 313) | 手术各阶段 |
|
||
|
||
---
|
||
|
||
## 四、前后端交互时序
|
||
|
||
### 4.1 提交手术申请
|
||
```
|
||
用户操作: 医生点击"提交手术申请"
|
||
→ 前端: 校验表单(必填项+业务规则前端预检)
|
||
→ API: POST /clinical-manage/surgery/surgery
|
||
→ 后端: SurgeryController.addSurgery()
|
||
→ SurgeryAppService.addSurgery()
|
||
→ 校验手术分级权限(SR-001)
|
||
→ 校验三级/四级手术术前讨论(SR-002)
|
||
→ 设置状态=待申请(0)
|
||
→ 保存到数据库
|
||
→ 返回: {code:200, msg:"申请已提交"}
|
||
→ 前端: ElMessage.success → 刷新列表
|
||
```
|
||
|
||
### 4.2 安排手术室
|
||
```
|
||
用户操作: 护士长点击"安排手术"
|
||
→ 前端: 弹出安排弹窗(选择手术室/时间/麻醉医生)
|
||
→ API: PUT /clinical-manage/surgery/surgery (携带手术室+时间信息)
|
||
→ 后端: 校验手术室冲突(SR-004)
|
||
→ 校验术前评估完成(SR-003)
|
||
→ 更新状态=待手术(3)
|
||
→ 返回: {code:200, msg:"安排成功"}
|
||
```
|
||
|
||
### 4.3 开始/完成手术
|
||
```
|
||
用户操作: 主刀医生点击"开始手术"
|
||
→ API: PUT /clinical-manage/surgery/surgery-status?id=&statusEnum=4
|
||
→ 后端: 更新状态=手术中(4), 记录开始时间
|
||
|
||
用户操作: 主刀医生点击"完成手术"
|
||
→ API: PUT /clinical-manage/surgery/surgery-status?id=&statusEnum=5
|
||
→ 后端: 更新状态=已完成(5), 记录结束时间
|
||
→ 触发术后随访提醒(SR-006)
|
||
```
|
||
|
||
---
|
||
|
||
## 五、数据模型扩展
|
||
|
||
现有 `SurgeryDto` 需增加以下字段:
|
||
|
||
| 字段 | 类型 | 说明 |
|
||
|------|------|------|
|
||
| surgeryLevel | String | 手术级别(1/2/3/4) |
|
||
| surgeryRoom | String | 手术室 |
|
||
| anesthesiaType | String | 麻醉方式(全麻/局麻/脊麻/硬膜外) |
|
||
| preopDiagnosis | String | 术前诊断 |
|
||
| postopDiagnosis | String | 术后诊断 |
|
||
| startTime | DateTime | 实际开始时间 |
|
||
| endTime | DateTime | 实际结束时间 |
|
||
| complications | String | 并发症记录 |
|
||
| bloodLoss | Integer | 术中出血量(ml) |
|
||
| specimenSent | Boolean | 是否送检标本 |
|
||
|
||
---
|
||
|
||
## 六、测试用例
|
||
|
||
| 用例编号 | 场景 | 操作步骤 | 预期结果 |
|
||
|---------|------|---------|---------|
|
||
| TC-S001 | 正常申请流程 | 医生提交→科主任审批→护士安排→手术完成 | 状态正确流转 |
|
||
| TC-S002 | 越级申请拒绝 | 住院医师申请四级手术 | 返回权限不足错误 |
|
||
| TC-S003 | 手术室冲突 | 同一时间安排两台手术到同一手术室 | 返回冲突提示 |
|
||
| TC-S004 | 驳回后重新提交 | 科主任驳回→医生修改→重新提交 | 状态从驳回回到待审批 |
|
||
| TC-S005 | 取消手术 | 已审批的手术点击取消 | 状态变为已取消 |
|
||
| TC-S006 | 缺少术前讨论 | 三级手术无术前讨论记录直接提交 | 拦截并提示 |
|
||
|