- V31 Flyway: 8张新表(CSSD器械包/追溯记录/灭菌批次/灭菌明细/过期预警+3D重建任务/结果/报告) - CSSD: 全流程追溯(回收→清洗→消毒→包装→灭菌→储存→发放)+扫码+灭菌三要素+过期预警 - 3D重建: Cornerstone.js+VTK.js架构设计+VR/MPR/MIP渲染+传递函数预设+测量工具 - 608行深度技术设计文档(MD/specs/RECONSTRUCTION_3D_DEEP_DESIGN.md) - 2个前端页面(CSSD追溯/3D重建查看器) - 后端编译通过,前端构建通过
189 lines
7.4 KiB
Markdown
189 lines
7.4 KiB
Markdown
# 消毒供应中心(CSSD)追溯管理 + 影像3D重建 深度设计文档
|
||
|
||
> **文档类型**: 技术设计
|
||
> **版本**: v1.0
|
||
> **编制日期**: 2026-06-07
|
||
> **依据标准**: WS 310.1-310.3《医院消毒供应中心》、DICOM 3D重建规范
|
||
|
||
---
|
||
|
||
## 一、消毒供应中心(CSSD)追溯管理
|
||
|
||
### 1.1 业务背景
|
||
|
||
根据《医院消毒供应中心 第1部分:管理规范》(WS 310.1-2016)和《医院消毒供应中心 第3部分:清洗消毒及灭菌效果监测标准》(WS 310.3-2016),三甲医院CSSD必须实现:
|
||
|
||
- **全流程追溯**: 从器械回收→分类→清洗→消毒→干燥→检查→包装→灭菌→储存→发放的全链路可追溯
|
||
- **条码管理**: 每个器械包有唯一追溯码,支持扫码追溯
|
||
- **灭菌监测**: 生物监测、化学监测、物理监测的记录和预警
|
||
- **有效期管理**: 灭菌后器械包的有效期自动计算和过期预警
|
||
- **质量统计**: 清洗合格率、灭菌合格率、器械使用次数统计
|
||
|
||
### 1.2 业务流程
|
||
|
||
```
|
||
手术室/科室 使用后器械
|
||
↓ (回收)
|
||
CSSD回收清点 → 扫码登记(器械包ID+数量+来源科室)
|
||
↓
|
||
分类 → 按器械类型分拣(手术器械/管腔器械/精密器械/普通器械)
|
||
↓
|
||
清洗 → 手工清洗/超声清洗/机器清洗 → 清洗效果监测(ATP/蛋白残留)
|
||
↓
|
||
消毒 → 湿热消毒(≥90℃/5min) 或 化学消毒
|
||
↓
|
||
干燥 → 热风干燥/自然干燥
|
||
↓
|
||
检查保养 → 功能检查+润滑+包装材料选择
|
||
↓
|
||
包装 → 器械放入包装袋/容器 → 封口 → 贴追溯标签(条码+灭菌日期+有效期)
|
||
↓
|
||
灭菌 → 压力蒸汽灭菌(134℃/4min) 或 低温灭菌 → 化学指示卡变色确认
|
||
↓
|
||
储存 → 无菌物品存放区 → 按效期管理(先进先出)
|
||
↓
|
||
发放 → 扫码出库 → 送达手术室/科室 → 签收确认
|
||
```
|
||
|
||
### 1.3 数据模型
|
||
|
||
#### 核心实体
|
||
|
||
1. **CssdTray** (器械包) — 器械包基础信息
|
||
- id, tray_code(唯一编码), tray_name, tray_type(手术/管腔/精密/普通)
|
||
- department_source(来源科室), status(在用/清洗中/灭菌中/储存中/已发放)
|
||
- current_location(当前位置), total_uses(使用次数)
|
||
- sterilize_count(灭菌次数), last_sterilize_time
|
||
|
||
2. **CssdTraceRecord** (追溯记录) — 每次流转记录
|
||
- id, tray_id, step_type(回收/清洗/消毒/包装/灭菌/储存/发放)
|
||
- operator_id, operator_name, operation_time
|
||
- device_name(设备名称), device_code
|
||
- parameters(JSON: 温度/时间/压力等工艺参数)
|
||
- result(合格/不合格), remark
|
||
|
||
3. **CssdSterilizeBatch** (灭菌批次) — 每锅灭菌记录
|
||
- id, batch_code, sterilizer_name, sterilizer_code
|
||
- start_time, end_time, cycle_type(预真空/下排气/快速)
|
||
- temperature, pressure, exposure_time
|
||
- biological_result(生物监测: 合格/不合格/待检)
|
||
- chemical_result(化学监测: 合格/不合格)
|
||
- physical_result(物理监测: 合格/不合格)
|
||
- batch_status(进行中/已完成/已释放)
|
||
|
||
4. **CssdSterilizeItem** (灭菌包明细) — 批次内的器械包
|
||
- id, batch_id, tray_id
|
||
- chemical_indicator(化学指示卡颜色变化)
|
||
- bi_indicator(生物指示剂结果)
|
||
|
||
5. **CssdExpiryAlert** (过期预警) — 有效期管理
|
||
- id, tray_id, batch_id
|
||
- sterilize_time, expiry_time, alert_time
|
||
- status(正常/预警/过期)
|
||
|
||
### 1.4 业务规则
|
||
|
||
| 规则编号 | 规则名称 | 规则描述 |
|
||
|---------|---------|---------|
|
||
| R1 | 回收扫码 | 所有器械包回收时必须扫码登记 |
|
||
| R2 | 清洗监测 | 清洗后必须进行ATP或蛋白残留检测 |
|
||
| R3 | 包装标签 | 包装必须贴追溯标签(条码+日期+有效期) |
|
||
| R4 | 灭菌三要素 | 生物+化学+物理三项监测全部合格才能释放 |
|
||
| R5 | 有效期管理 | 压力蒸汽灭菌: 无菌包装180天, 无纺布14天, 棉布7天 |
|
||
| R6 | 过期拦截 | 过期器械包禁止发放,必须重新灭菌 |
|
||
| R7 | 使用次数 | 器械包达到最大使用次数(可配置)时提醒报废 |
|
||
|
||
### 1.5 接口设计
|
||
|
||
| API | 方法 | 说明 |
|
||
|-----|------|------|
|
||
| /cssd/tray/page | GET | 器械包列表 |
|
||
| /cssd/tray/add | POST | 新建器械包 |
|
||
| /cssd/trace/scan | POST | 扫码追溯(流转) |
|
||
| /cssd/trace/history/{trayId} | GET | 器械包追溯历史 |
|
||
| /cssd/sterilize/batch/page | GET | 灭菌批次列表 |
|
||
| /cssd/sterilize/batch/add | POST | 新建灭菌批次 |
|
||
| /cssd/sterilize/batch/complete/{id} | PUT | 完成灭菌(录入监测结果) |
|
||
| /cssd/sterilize/batch/release/{id} | PUT | 释放批次(三项监测合格) |
|
||
| /cssd/expiry/alerts | GET | 过期预警列表 |
|
||
| /cssd/stats/overview | GET | 统计概览(清洗率/灭菌率/过期数) |
|
||
|
||
---
|
||
|
||
## 二、影像3D重建
|
||
|
||
### 2.1 业务背景
|
||
|
||
影像3D重建是影像诊断的高级功能,主要应用于:
|
||
- **骨科**: 骨折三维重建,辅助手术规划
|
||
- **心血管**: 冠脉CTA三维重建,评估狭窄程度
|
||
- **胸腹部**: 肿瘤三维定位,评估与周围组织关系
|
||
- **口腔**: 颌面骨三维重建,正畸/种植规划
|
||
|
||
### 2.2 业务流程
|
||
|
||
```
|
||
CT/MRI扫描 → DICOM图像导入
|
||
↓
|
||
图像预处理 → 去噪/增强/分割
|
||
↓
|
||
三维重建 → Volume Rendering(容积渲染) / MPR(多平面重建) / MIP(最大密度投影)
|
||
↓
|
||
后处理 → 测量(距离/角度/体积) / 标注 / 裁剪
|
||
↓
|
||
生成报告 → 3D截图 + 测量数据 + 诊断结论
|
||
↓
|
||
审核发布 → 主治医师审核 → 发布到PACS/病历系统
|
||
```
|
||
|
||
### 2.3 数据模型
|
||
|
||
#### 核心实体
|
||
|
||
1. **ReconstructionTask** (重建任务) — 3D重建任务
|
||
- id, patient_id, patient_name, encounter_id
|
||
- apply_id(检查申请ID), study_uid(DICOM StudyUID)
|
||
- modality(CT/MRI), body_part, scan_range
|
||
- task_status(PENDING/PROCESSING/COMPLETED/FAILED)
|
||
- reconstruction_type(VR/MPR/MIP/VR+MPR)
|
||
- result_path(重建结果存储路径)
|
||
- slice_thickness, pixel_spacing
|
||
- request_doctor, complete_time
|
||
|
||
2. **ReconstructionResult** (重建结果) — 3D重建输出
|
||
- id, task_id, result_type(VR/MPR/MIP)
|
||
- image_path(截图路径), volume_data_path(体数据路径)
|
||
- measurements(JSON: 距离/角度/体积等测量数据)
|
||
- annotations(JSON: 标注信息)
|
||
- report_text(报告文本)
|
||
|
||
3. **ReconstructionReport** (重建报告) — 3D重建报告
|
||
- id, task_id, patient_id, encounter_id
|
||
- findings(所见), impression(印象), conclusion(结论)
|
||
- report_doctor, report_time
|
||
- verify_doctor, verify_time
|
||
- status(DRAFT/REPORTED/VERIFIED)
|
||
|
||
### 2.4 业务规则
|
||
|
||
| 规则编号 | 规则名称 | 规则描述 |
|
||
|---------|---------|---------|
|
||
| R1 | 任务触发 | 由影像科医生从PACS工作台发起3D重建任务 |
|
||
| R2 | 图像要求 | 至少需要50层连续断层图像才能进行3D重建 |
|
||
| R3 | 重建类型 | 支持VR(容积渲染)/MPR(多平面)/MIP(最大密度投影) |
|
||
| R4 | 测量功能 | 支持距离/角度/面积/体积测量 |
|
||
| R5 | 报告审核 | 3D重建报告必须由主治以上医师审核 |
|
||
| R6 | 图像存储 | 重建结果存储在PACS归档系统,保留期≥1年 |
|
||
|
||
### 2.5 接口设计
|
||
|
||
| API | 方法 | 说明 |
|
||
|-----|------|------|
|
||
| /reconstruction/task/page | GET | 重建任务列表 |
|
||
| /reconstruction/task/add | POST | 新建重建任务 |
|
||
| /reconstruction/task/complete/{id} | PUT | 完成重建 |
|
||
| /reconstruction/result/list/{taskId} | GET | 重建结果列表 |
|
||
| /reconstruction/report/add | POST | 新建报告 |
|
||
| /reconstruction/report/verify/{id} | PUT | 审核报告 |
|
||
| /reconstruction/stats | GET | 统计(任务数/完成率/类型分布) |
|