- 新增 MD/specs/IRON_RULES.md — 执行铁律汇总(v2.0, 8条铁律) - 新增 MD/specs/BACKEND_DEVELOPMENT_STANDARD.md — 后端开发规范 - 新增 MD/specs/FRONTEND_DEVELOPMENT_STANDARD.md — 前端开发规范 - 新增 healthlink-his-ui/AGENTS.md — 前端铁律引用 - 更新 healthlink-his-server/AGENTS.md — 同步规范文档引用 - 修复10个文档缺失的元数据(文档类型标签) - 全部30个文档通过命名规范和元数据检查
777 lines
24 KiB
Markdown
777 lines
24 KiB
Markdown
# HealthLink HIS 三甲医院达标开发计划
|
||
|
||
> **文档类型**: 开发计划
|
||
> **适用范围**: 三甲达标开发
|
||
> **版本**: v1.0
|
||
|
||
> **目标**: 完全符合三级甲等综合医院信息化评审标准
|
||
> **依据**: 《三级医院评审标准(2022年版)》、电子病历评级≥4级、互联互通≥四级甲等
|
||
> **编制日期**: 2026-06-06
|
||
> **开发原则**:
|
||
> 1. 不修改原有函数签名,扩展功能通过新建Service/AppService实现
|
||
> 2. 新建表和字段通过Flyway框架管理
|
||
> 3. 每个模块开发完成后必须通过完整测试
|
||
|
||
---
|
||
|
||
## 一、现状差距分析
|
||
|
||
### 1.1 已有能力(✅ 可用)
|
||
|
||
| 模块 | 状态 | 说明 |
|
||
|---|---|---|
|
||
| 门诊挂号 | ✅ | 预约/当日/退号/多身份 |
|
||
| 门诊收费 | ✅ | 收费/退费/日结 |
|
||
| 门诊医生站 | ✅ | 处方/检验检查申请/病历 |
|
||
| 护士工作站 | ✅ | 医嘱执行/生命体征/护理记录 |
|
||
| 药品管理 | ✅ | 药库/药房/发药/退药 |
|
||
| 住院管理 | ✅ | 入院/床位/转科/出院/押金 |
|
||
| 检验检查 | ✅ | LIS配置/检查类型/项目管理 |
|
||
| 统计报表 | ✅ | 20+报表接口 |
|
||
| DRG/DIP | ✅ | 基础框架已有 |
|
||
|
||
### 1.2 关键差距(❌ 需开发)
|
||
|
||
| 差距模块 | 三甲要求 | 当前状态 | 优先级 |
|
||
|---|---|---|---|
|
||
| **手术麻醉系统** | 评审必查 | 仅有1个Controller,功能不完整 | 🔴 P0 |
|
||
| **合理用药系统** | 处方100%审核 | 完全缺失 | 🔴 P0 |
|
||
| **电子签名/CA** | 三甲硬性要求 | 仅有基础框架 | 🔴 P0 |
|
||
| **院感管理** | 评审必查 | 完全缺失 | 🔴 P0 |
|
||
| **病案管理** | 病案首页数据质量 | 仅有1个Controller | 🔴 P0 |
|
||
| **护理评估体系** | 多种量表评估 | 仅基础护理记录 | 🟡 P1 |
|
||
| **医嘱闭环管理** | 开立→审核→执行→完成 | 部分实现 | 🟡 P1 |
|
||
| **处方点评** | 合理用药管控 | 完全缺失 | 🟡 P1 |
|
||
| **抗菌药物管控** | 分级管理/权限控制 | 完全缺失 | 🟡 P1 |
|
||
| **危急值管理** | 检验危急值闭环 | 完全缺失 | 🟡 P1 |
|
||
| **电子病历结构化** | 结构化+模板 | 基础模板已有 | 🟡 P1 |
|
||
| **数据集成平台(ESB)** | 互联互通四级甲等 | 完全缺失 | 🟡 P1 |
|
||
| **患者主索引(EMPI)** | 数据标准化基础 | 完全缺失 | 🟡 P1 |
|
||
| **药品追溯码** | 2026年新规 | 完全缺失 | 🟡 P1 |
|
||
|
||
---
|
||
|
||
## 二、分阶段开发计划
|
||
|
||
### Phase 1: 核心安全模块(3周)
|
||
> 目标:补齐三甲硬性要求的缺失模块
|
||
|
||
#### Sprint 7: 合理用药系统 (5天)
|
||
**业务描述**: 处方前置审核、药品相互作用检查、过敏检测、剂量审查、抗菌药物管控
|
||
**三甲依据**: 处方审核率≥100%、抗菌药物分级管理
|
||
|
||
**后端开发**:
|
||
1. `PrescriptionReviewService` — 处方前置审核引擎
|
||
- 药品相互作用检查(两药/三药配伍禁忌)
|
||
- 过敏史自动匹配
|
||
- 剂量范围检查(超剂量/低剂量预警)
|
||
- 重复用药检查(同类/同成分)
|
||
- 配伍禁忌(输液配伍审查)
|
||
- 妊娠/哺乳用药警示
|
||
- 儿童用药按体重计算
|
||
2. `AntibioticManageService` — 抗菌药物分级管理
|
||
- 非限制使用级/限制使用级/特殊使用级
|
||
- 医生抗菌药物处方权限管理
|
||
- 抗菌药物使用率实时监控
|
||
- DDD(限定日剂量)监测
|
||
3. `PrescriptionCommentService` — 处方点评
|
||
- 可配置点评规则库
|
||
- 系统自动筛查不合理处方
|
||
- 人工点评工作台
|
||
- 合理率统计、科室/医生排名
|
||
|
||
**前端开发**:
|
||
1. 处方审核弹窗(开方时实时拦截)
|
||
2. 抗菌药物管理界面
|
||
3. 处方点评工作台
|
||
|
||
**数据库设计**:
|
||
```sql
|
||
-- Flyway: V2026_007__rational_drug_use.sql
|
||
CREATE TABLE sys_drug_interaction (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
drug_code_a VARCHAR(50) NOT NULL,
|
||
drug_code_b VARCHAR(50) NOT NULL,
|
||
interaction_level VARCHAR(20) NOT NULL, -- 禁忌/严重/一般
|
||
description TEXT,
|
||
suggestion TEXT,
|
||
status CHAR(1) DEFAULT '0',
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_drug_allergy (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
patient_id BIGINT NOT NULL,
|
||
allergy_type VARCHAR(50), -- 药物/食物/其他
|
||
allergen_code VARCHAR(50),
|
||
allergen_name VARCHAR(200),
|
||
reaction VARCHAR(200),
|
||
severity VARCHAR(20), -- 轻度/中度/重度
|
||
status CHAR(1) DEFAULT '0',
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_prescription_review (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
doctor_id BIGINT NOT NULL,
|
||
prescription_type VARCHAR(20), -- 西药/中成药/中药
|
||
review_result VARCHAR(20), -- 合理/不合理/需人工审核
|
||
review_detail JSONB, -- 审查明细
|
||
reviewer_id BIGINT,
|
||
review_time TIMESTAMP,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_antibiotic_record (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
doctor_id BIGINT NOT NULL,
|
||
drug_code VARCHAR(50) NOT NULL,
|
||
drug_name VARCHAR(200),
|
||
usage_days INT,
|
||
ddd_value DECIMAL(10,2),
|
||
level VARCHAR(20), -- 非限制/限制/特殊
|
||
approval_status VARCHAR(20), -- 审批中/已批准/已拒绝
|
||
approver_id BIGINT,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_prescription_comment (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
prescription_id BIGINT,
|
||
encounter_id BIGINT,
|
||
doctor_id BIGINT,
|
||
department_id BIGINT,
|
||
comment_type VARCHAR(20), -- 自动/人工
|
||
comment_result VARCHAR(20), -- 合理/不合理
|
||
comment_detail TEXT,
|
||
commentator_id BIGINT,
|
||
comment_time TIMESTAMP,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
```
|
||
|
||
**测试用例** (20个):
|
||
1. 处方审核正常通过
|
||
2. 药品相互作用拦截
|
||
3. 过敏药物拦截
|
||
4. 超剂量预警
|
||
5. 重复用药拦截
|
||
6. 抗菌药物权限校验
|
||
7. 抗菌药物分级限制
|
||
8. 处方点评自动筛查
|
||
9. 人工点评提交
|
||
10. 合理率统计查询
|
||
...
|
||
|
||
---
|
||
|
||
#### Sprint 8: 手术麻醉系统 (5天)
|
||
**业务描述**: 手术预约→审批→排程→麻醉评估→麻醉记录→手术记录→术后管理
|
||
**三甲依据**: 互联互通测评必测项(I-13)
|
||
|
||
**后端开发**:
|
||
1. `SurgeryScheduleService` — 手术预约排程
|
||
- 手术申请→科室审批→医务科审批→排程→通知
|
||
- 手术间/手术台管理
|
||
- 手术医生/麻醉医生/器械护士排班
|
||
- 急诊手术绿色通道
|
||
2. `AnesthesiaAssessmentService` — 麻醉评估
|
||
- 术前评估(ASA分级、气道评估)
|
||
- 麻醉方案制定
|
||
- 知情同意书电子签署
|
||
3. `AnesthesiaRecordService` — 麻醉记录
|
||
- 术中监测数据记录(生命体征、用药、事件)
|
||
- 麻醉用药记录
|
||
- 麻醉苏醒评估
|
||
4. `SurgeryRecordService` — 手术记录
|
||
- 术者/助手/器械/巡回护士记录
|
||
- 植入物记录
|
||
- 手术出血/并发症记录
|
||
- 术后医嘱自动生成
|
||
5. `SurgeryStatisticsService` — 手术统计
|
||
- 手术量统计
|
||
- 手术并发症率
|
||
- 手术死亡率
|
||
|
||
**前端开发**:
|
||
1. 手术预约申请界面
|
||
2. 手术排程甘特图
|
||
3. 麻醉记录工作站
|
||
4. 手术记录表单
|
||
5. 手术统计仪表盘
|
||
|
||
**数据库设计**:
|
||
```sql
|
||
-- Flyway: V2026_008__surgery_anesthesia.sql
|
||
CREATE TABLE sys_surgery_schedule (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
patient_id BIGINT NOT NULL,
|
||
surgery_code VARCHAR(50),
|
||
surgery_name VARCHAR(200),
|
||
surgery_level VARCHAR(20), -- 一/二/三/四级
|
||
surgeon_id BIGINT,
|
||
anesthesiologist_id BIGINT,
|
||
手术_room VARCHAR(50),
|
||
surgery_table VARCHAR(50),
|
||
planned_start_time TIMESTAMP,
|
||
planned_end_time TIMESTAMP,
|
||
actual_start_time TIMESTAMP,
|
||
actual_end_time TIMESTAMP,
|
||
status VARCHAR(20), -- 申请/审批中/已排程/进行中/已完成/已取消
|
||
approval_status VARCHAR(20),
|
||
emergency_flag CHAR(1) DEFAULT '0',
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_anesthesia_record (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
surgery_schedule_id BIGINT NOT NULL,
|
||
encounter_id BIGINT NOT NULL,
|
||
anesthesia_type VARCHAR(50), -- 全麻/椎管内/神经阻滞/局部
|
||
asa_level VARCHAR(10),
|
||
airway_assessment VARCHAR(20),
|
||
pre_op_assessment TEXT,
|
||
anesthesia_plan TEXT,
|
||
intra_vital_signs JSONB, -- 术中生命体征
|
||
anesthesia_medications JSONB, -- 麻醉用药
|
||
intra_events JSONB, -- 术中事件
|
||
blood_loss_ml INT,
|
||
urine_output_ml INT,
|
||
fluid_input_ml INT,
|
||
extubation_time TIMESTAMP,
|
||
recovery_assessment TEXT,
|
||
status VARCHAR(20), -- 评估中/进行中/已结束
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_surgery_record (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
surgery_schedule_id BIGINT NOT NULL,
|
||
encounter_id BIGINT NOT NULL,
|
||
surgeon_id BIGINT,
|
||
assistants JSONB,
|
||
scrub_nurse_id BIGINT,
|
||
circulating_nurse_id BIGINT,
|
||
incision_time TIMESTAMP,
|
||
closure_time TIMESTAMP,
|
||
implant_records JSONB,
|
||
specimen_records JSONB,
|
||
blood_loss_ml INT,
|
||
complications JSONB,
|
||
post_op_diagnosis TEXT,
|
||
post_op_orders TEXT,
|
||
status VARCHAR(20), -- 进行中/已完成
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_surgery_room (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
room_code VARCHAR(50) NOT NULL,
|
||
room_name VARCHAR(100),
|
||
department_id BIGINT,
|
||
room_level VARCHAR(20), -- 洁净/普通/急诊
|
||
equipment_list JSONB,
|
||
status VARCHAR(20), -- 空闲/使用中/维护中
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
```
|
||
|
||
---
|
||
|
||
#### Sprint 9: 院感管理系统 (5天)
|
||
**业务描述**: 院感病例监测、抗菌药物使用监测、手卫生监测、职业暴露管理
|
||
**三甲依据**: 医院感染监测报告率达标
|
||
|
||
**后端开发**:
|
||
1. `InfectionMonitorService` — 院感监测
|
||
- 院感病例实时监测(自动预警)
|
||
- 院感发病率统计
|
||
- 部位感染分类
|
||
- 多重耐药菌监测
|
||
2. `HandHygieneService` — 手卫生管理
|
||
- 手卫生依从性监测
|
||
- 手卫生正确率统计
|
||
- 手卫生培训记录
|
||
3. `OccupationalExposureService` — 职业暴露
|
||
- 职业暴露登记
|
||
- 暴露后处置流程
|
||
- 跟踪随访管理
|
||
4. `EnvironmentMonitorService` — 环境监测
|
||
- 消毒灭菌监测记录
|
||
- 空气/物表/手培养监测
|
||
|
||
**前端开发**:
|
||
1. 院感监测仪表盘
|
||
2. 院感病例上报表单
|
||
3. 手卫生监测界面
|
||
4. 职业暴露登记界面
|
||
|
||
**数据库设计**:
|
||
```sql
|
||
-- Flyway: V2026_009__infection_control.sql
|
||
CREATE TABLE sys_infection_case (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
patient_id BIGINT NOT NULL,
|
||
infection_type VARCHAR(50), -- 医院感染/社区感染
|
||
infection_site VARCHAR(100), -- 下呼吸道/泌尿道/血液等
|
||
pathogen_code VARCHAR(50),
|
||
pathogen_name VARCHAR(200),
|
||
drug_resistance VARCHAR(200), -- 耐药类型
|
||
report_time TIMESTAMP,
|
||
reporter_id BIGINT,
|
||
status VARCHAR(20), -- 疑似/确认/已处理
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_hand_hygiene_record (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
staff_id BIGINT NOT NULL,
|
||
department_id BIGINT,
|
||
observation_time TIMESTAMP,
|
||
observation_type VARCHAR(50), -- 两前三后/手卫生时机
|
||
correct_flag CHAR(1),
|
||
observer_id BIGINT,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_occupational_exposure (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
staff_id BIGINT NOT NULL,
|
||
exposure_type VARCHAR(50), -- 锐器伤/血液暴露/其他
|
||
exposure_source VARCHAR(200),
|
||
exposure_time TIMESTAMP,
|
||
exposure_site VARCHAR(100),
|
||
immediate_handling TEXT,
|
||
follow_up_plan TEXT,
|
||
follow_up_result TEXT,
|
||
status VARCHAR(20), -- 登记中/处置中/已结案
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
```
|
||
|
||
---
|
||
|
||
### Phase 2: 病案与护理体系(3周)
|
||
> 目标:补齐病案管理和护理评估体系
|
||
|
||
#### Sprint 10: 病案管理系统 (5天)
|
||
**业务描述**: 病案首页数据质量、编码审核、DRG入组、病案归档
|
||
**三甲依据**: 病案首页24小时归档率≥90%
|
||
|
||
**后端开发**:
|
||
1. `MedicalRecordHomeService` — 病案首页管理
|
||
- 首页数据自动采集(诊断/手术/费用/护理)
|
||
- ICD-10编码自动推荐
|
||
- ICD-9-CM-3手术编码映射
|
||
- 首页数据质量校验(完整性/逻辑性/编码正确率)
|
||
2. `MedicalRecordAuditService` — 病案质控
|
||
- 运行质控(病历完成时限监控)
|
||
- 终末质控(出院后病历质量审核)
|
||
- 质控评分标准
|
||
3. `DRGGroupingService` — DRG入组
|
||
- 广西DRG分组方案对接
|
||
- 自动DRG分组
|
||
- 费用预警(超标提醒)
|
||
- CMI值计算
|
||
4. `MedicalRecordArchiveService` — 病案归档
|
||
- 电子病历归档
|
||
- 病案借阅管理
|
||
- 病案封存/解封
|
||
|
||
**前端开发**:
|
||
1. 病案首页填写界面(智能填充)
|
||
2. 病案质控工作台
|
||
3. DRG入组结果展示
|
||
4. 病案借阅管理界面
|
||
|
||
**数据库设计**:
|
||
```sql
|
||
-- Flyway: V2026_010__medical_record_management.sql
|
||
CREATE TABLE sys_medical_record_home (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
patient_id BIGINT NOT NULL,
|
||
admission_date TIMESTAMP,
|
||
discharge_date TIMESTAMP,
|
||
admission_diagnosis VARCHAR(200),
|
||
discharge_diagnosis VARCHAR(200),
|
||
primary_diagnosis_code VARCHAR(50),
|
||
other_diagnosis_codes JSONB,
|
||
surgery_codes JSONB,
|
||
drg_group VARCHAR(50),
|
||
drg_weight DECIMAL(10,4),
|
||
total_cost DECIMAL(12,2),
|
||
self_pay_cost DECIMAL(12,2),
|
||
medical_insurance_cost DECIMAL(12,2),
|
||
los INT, -- 住院天数
|
||
outcome VARCHAR(20), -- 治愈/好转/未愈/死亡/其他
|
||
quality_score INT,
|
||
quality_level VARCHAR(20), -- 甲级/乙级/丙级
|
||
archive_status VARCHAR(20), -- 未归档/已归档/已封存
|
||
archive_time TIMESTAMP,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_medical_record_audit (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
audit_type VARCHAR(20), -- 运行/终末
|
||
audit_item VARCHAR(100),
|
||
audit_result VARCHAR(20), -- 合格/不合格
|
||
audit_detail TEXT,
|
||
auditor_id BIGINT,
|
||
audit_time TIMESTAMP,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_drg_grouping (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
drg_code VARCHAR(50),
|
||
drg_name VARCHAR(200),
|
||
drg_weight DECIMAL(10,4),
|
||
drg_cost DECIMAL(12,2),
|
||
actual_cost DECIMAL(12,2),
|
||
profit_loss DECIMAL(12,2),
|
||
grouping_time TIMESTAMP,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
```
|
||
|
||
---
|
||
|
||
#### Sprint 11: 护理评估体系 (5天)
|
||
**业务描述**: 多种护理评估量表、护理计划、护理交接班
|
||
**三甲依据**: 《护理分级》WS/T 431-2013
|
||
|
||
**后端开发**:
|
||
1. `NursingAssessmentService` — 护理评估
|
||
- 入院护理评估(入院8小时内完成)
|
||
- Braden压疮风险评估(自动评分)
|
||
- Morse跌倒风险评估(自动评分)
|
||
- NRS2002营养风险评估
|
||
- NRS/VAS疼痛评估
|
||
- Caprini VTE风险评估
|
||
- Barthel自理能力评估
|
||
- 评估时间轴(动态变化追踪)
|
||
2. `NursingPlanService` — 护理计划
|
||
- 护理诊断(基于评估结果推荐)
|
||
- 护理目标设定
|
||
- 标准护理措施库
|
||
- 病种标准护理计划模板
|
||
3. `NursingHandoverService` — 护理交接班
|
||
- 交接班记录
|
||
- 患者信息汇总
|
||
- 重点患者交接
|
||
|
||
**前端开发**:
|
||
1. 护理评估量表工作台(自动评分)
|
||
2. 护理计划制定界面
|
||
3. 护理交接班界面
|
||
4. 评估趋势图
|
||
|
||
**数据库设计**:
|
||
```sql
|
||
-- Flyway: V2026_011__nursing_assessment.sql
|
||
CREATE TABLE sys_nursing_assessment (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
patient_id BIGINT NOT NULL,
|
||
assessment_type VARCHAR(50), -- 入院/Braden/Morse/NRS2002/NRS/Caprini/Barthel
|
||
assessment_score INT,
|
||
risk_level VARCHAR(20), -- 低危/中危/高危/极高危
|
||
assessment_data JSONB, -- 评估详细数据
|
||
assessor_id BIGINT,
|
||
assessment_time TIMESTAMP,
|
||
next_assessment_time TIMESTAMP,
|
||
status VARCHAR(20), -- 有效/已更新/已过期
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_nursing_plan (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
encounter_id BIGINT NOT NULL,
|
||
patient_id BIGINT NOT NULL,
|
||
nursing_diagnosis VARCHAR(200),
|
||
nursing_goal TEXT,
|
||
nursing_interventions JSONB,
|
||
plan_template_id BIGINT,
|
||
planner_id BIGINT,
|
||
plan_time TIMESTAMP,
|
||
review_status VARCHAR(20), -- 待审核/已审核/已驳回
|
||
reviewer_id BIGINT,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_nursing_handover (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
department_id BIGINT NOT NULL,
|
||
shift_type VARCHAR(20), -- 白班/小夜/大夜
|
||
handover_time TIMESTAMP,
|
||
handover_nurse_id BIGINT,
|
||
receiver_nurse_id BIGINT,
|
||
patient_summary JSONB, -- 患者交接信息
|
||
key_patients JSONB, -- 重点患者
|
||
pending_items JSONB, -- 待办事项
|
||
status VARCHAR(20), -- 进行中/已完成
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
```
|
||
|
||
---
|
||
|
||
### Phase 3: 数据集成与标准化(3周)
|
||
> 目标:满足互联互通四级甲等要求
|
||
|
||
#### Sprint 12: 患者主索引(EMPI) (3天)
|
||
**业务描述**: 统一患者身份标识、跨系统患者信息匹配
|
||
**三甲依据**: 互联互通四级甲等基础
|
||
|
||
**后端开发**:
|
||
1. `EMPIPatientService` — 患者主索引
|
||
- 患者身份信息标准化
|
||
- 跨系统患者信息匹配(EMPI算法)
|
||
- 患者身份合并/拆分
|
||
- 患者身份变更追溯
|
||
2. `EMPIPractitionerService` — 医护人员主索引
|
||
- 统一医护人员标识
|
||
- 资质信息管理
|
||
3. `MasterDataService` — 主数据管理
|
||
- 科室字典标准化
|
||
- 诊疗项目目录标准化
|
||
- 药品目录标准化
|
||
- 疾病编码(ICD-10)标准化
|
||
- 手术编码(ICD-9-CM-3)标准化
|
||
|
||
**数据库设计**:
|
||
```sql
|
||
-- Flyway: V2026_012__empi_master_data.sql
|
||
CREATE TABLE sys_empi_patient (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
empi_id VARCHAR(50) NOT NULL UNIQUE, -- 全局唯一患者标识
|
||
patient_id BIGINT, -- 原系统患者ID
|
||
id_card VARCHAR(50),
|
||
name VARCHAR(100),
|
||
gender CHAR(1),
|
||
birth_date DATE,
|
||
phone VARCHAR(20),
|
||
address TEXT,
|
||
identity_source VARCHAR(50), -- 来源系统
|
||
merge_status VARCHAR(20), -- 正常/已合并/已拆分
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_icd10_catalog (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
icd_code VARCHAR(20) NOT NULL,
|
||
icd_name VARCHAR(200),
|
||
category VARCHAR(50),
|
||
validity_status VARCHAR(20),
|
||
effective_date DATE,
|
||
expiration_date DATE,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_icd9cm3_catalog (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
procedure_code VARCHAR(20) NOT NULL,
|
||
procedure_name VARCHAR(200),
|
||
category VARCHAR(50),
|
||
validity_status VARCHAR(20),
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
```
|
||
|
||
---
|
||
|
||
#### Sprint 13: 数据集成平台(ESB) (5天)
|
||
**业务描述**: 系统间数据交换、消息路由、服务注册
|
||
**三甲依据**: 互联互通四级甲等核心
|
||
|
||
**后端开发**:
|
||
1. `ESBMessageService` — 消息总线
|
||
- HL7 FHIR R4 消息格式
|
||
- 消息路由、格式转换
|
||
- 消息可靠性保障(存储转发、确认机制)
|
||
2. `ESBServiceRegistryService` — 服务注册
|
||
- 服务注册与发现
|
||
- 接口版本管理
|
||
- 接口文档自动生成
|
||
3. `ESBMonitorService` — 集成监控
|
||
- 消息流量监控
|
||
- 接口调用日志
|
||
- 异常告警
|
||
4. `CDADocumentService` — CDA文档生成
|
||
- 入院记录CDA
|
||
- 出院记录CDA
|
||
- 检验报告CDA
|
||
- 检查报告CDA
|
||
- 处方CDA
|
||
- 手术记录CDA
|
||
- 护理记录CDA
|
||
|
||
**数据库设计**:
|
||
```sql
|
||
-- Flyway: V2026_013__esb_integration.sql
|
||
CREATE TABLE sys_esb_message (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
message_id VARCHAR(100) NOT NULL UNIQUE,
|
||
message_type VARCHAR(50),
|
||
source_system VARCHAR(50),
|
||
target_system VARCHAR(50),
|
||
message_content TEXT,
|
||
message_format VARCHAR(20), -- HL7/FHIR/CDA
|
||
status VARCHAR(20), -- 待发送/发送中/已发送/发送失败/已确认
|
||
retry_count INT DEFAULT 0,
|
||
error_message TEXT,
|
||
send_time TIMESTAMP,
|
||
ack_time TIMESTAMP,
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE sys_esb_service_registry (
|
||
id BIGSERIAL PRIMARY KEY,
|
||
service_name VARCHAR(100),
|
||
service_version VARCHAR(20),
|
||
service_endpoint VARCHAR(500),
|
||
service_description TEXT,
|
||
service_status VARCHAR(20), -- 启用/停用/维护中
|
||
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||
);
|
||
```
|
||
|
||
---
|
||
|
||
### Phase 4: 智能化与决策支持(3周)
|
||
> 目标:提升电子病历评级至4级以上
|
||
|
||
#### Sprint 14: 危急值管理系统 (3天)
|
||
**业务描述**: 检验危急值自动识别→弹窗→确认→处置→闭环
|
||
**三甲依据**: 医疗质量安全核心制度
|
||
|
||
**后端开发**:
|
||
1. `CriticalValueService` — 危急值管理
|
||
- 危急值规则配置(项目/上下限)
|
||
- 检验结果自动匹配危急值
|
||
- 危急值弹窗通知
|
||
- 危急值确认记录
|
||
- 危急值处置闭环
|
||
- 危急值统计分析
|
||
|
||
**前端开发**:
|
||
1. 危急值弹窗组件
|
||
2. 危急值处置界面
|
||
3. 危急值统计报表
|
||
|
||
---
|
||
|
||
#### Sprint 15: 电子病历结构化 (5天)
|
||
**业务描述**: 结构化病历、病历模板、修改留痕、版本管理
|
||
**三甲依据**: 电子病历应用管理规范
|
||
|
||
**后端开发**:
|
||
1. `StructuredEMRService` — 结构化病历
|
||
- 结构化病历模板引擎
|
||
- 病历字段自动填充
|
||
- 病历完整性检查
|
||
2. `EMRVersionService` — 版本管理
|
||
- 病历修改留痕
|
||
- 历史版本保存
|
||
- 版本对比
|
||
3. `EMRTemplateService` — 病历模板
|
||
- 系统模板管理
|
||
- 科室模板管理
|
||
- 个人模板管理
|
||
|
||
---
|
||
|
||
#### Sprint 16: 医保智能审核 (5天)
|
||
**业务描述**: 医保规则引擎、事前/事中/事后审核、DRG/DIP优化
|
||
**三甲依据**: 医保基金使用监督管理条例
|
||
|
||
**后端开发**:
|
||
1. `InsuranceAuditService` — 医保智能审核
|
||
- 事前审核(开方时拦截)
|
||
- 事中审核(住院中监控)
|
||
- 事后审核(结算后稽核)
|
||
2. `DRGOptimizationService` — DRG/DIP优化
|
||
- 主诊断编码推荐
|
||
- 主手术编码推荐
|
||
- 费用结构优化建议
|
||
|
||
---
|
||
|
||
## 三、测试计划
|
||
|
||
### 每个Sprint测试要求
|
||
|
||
| 测试类型 | 内容 | 工具 |
|
||
|---|---|---|
|
||
| **接口测试** | 所有API端点正常/异常/边界 | JUnit + HTTP |
|
||
| **白盒测试** | Service层方法覆盖 | Mockito + JUnit |
|
||
| **黑盒测试** | 业务流程完整性 | 端到端测试 |
|
||
| **冒烟测试** | 核心功能可用性 | 手动+自动化 |
|
||
| **回归测试** | 原有功能不受影响 | 全量接口测试 |
|
||
|
||
### 测试用例设计原则
|
||
|
||
1. **正常流程测试**: 每个API至少1个正常用例
|
||
2. **边界条件测试**: 空值/极值/特殊字符
|
||
3. **异常处理测试**: 无权限/参数错误/数据不存在
|
||
4. **数据一致性测试**: 事务完整性
|
||
5. **性能测试**: 并发场景(可选)
|
||
|
||
---
|
||
|
||
## 四、实施路线图
|
||
|
||
```
|
||
Phase 1 (Week 1-3): 核心安全模块
|
||
├── Sprint 7: 合理用药系统 (5天)
|
||
├── Sprint 8: 手术麻醉系统 (5天)
|
||
└── Sprint 9: 院感管理系统 (5天)
|
||
|
||
Phase 2 (Week 4-6): 病案与护理
|
||
├── Sprint 10: 病案管理系统 (5天)
|
||
└── Sprint 11: 护理评估体系 (5天)
|
||
|
||
Phase 3 (Week 7-9): 数据集成
|
||
├── Sprint 12: EMPI + 主数据 (3天)
|
||
└── Sprint 13: ESB集成平台 (5天)
|
||
|
||
Phase 4 (Week 10-12): 智能化
|
||
├── Sprint 14: 危急值管理 (3天)
|
||
├── Sprint 15: 电子病历结构化 (5天)
|
||
└── Sprint 16: 医保智能审核 (5天)
|
||
|
||
总计: 12周 (约3个月)
|
||
总用例数: 预计 300+ 个接口测试
|
||
```
|
||
|
||
---
|
||
|
||
## 五、质量保障
|
||
|
||
### 5.1 开发规范
|
||
1. **不修改原有函数签名** — 扩展功能通过新建Service/AppService实现
|
||
2. **数据库变更通过Flyway** — 所有新建表和字段使用Flyway版本化管理
|
||
3. **代码审查** — 每个PR必须经过Code Review
|
||
4. **单元测试** — Service层覆盖率≥80%
|
||
|
||
### 5.2 铁律
|
||
1. 修改完必须测试才能提交
|
||
2. 新建表和字段必须通过Flyway
|
||
3. 测试通过后才提交代码
|
||
4. 前后端API路径必须对齐
|
||
5. 每个Sprint完成后进行完整回归测试
|
||
|
||
---
|
||
|
||
> **文档版本**: v1.0
|
||
> **最后更新**: 2026-06-06
|