4.2 KiB
4.2 KiB
病理管理模块 — 深度设计文档
版本: v1.0 | 编制日期: 2026-06-07 依据: 《病理科建设与管理指南》+ 《临床病理质量控制标准》
一、业务背景
病理诊断是手术后诊断的"金标准",三甲医院必须具备:
- 病理标本全流程追溯(从手术室到病理科)
- 三级审核制度(住院医师→主治→副主任)
- 病理报告质量控制
- 肿瘤登记上报
二、业务流程
[手术/活检/穿刺] → 病理申请单
↓
[标本采集] ←→ [条码打印] ←→ [标本固定(10%福尔马林)]
↓ (运送至病理科)
[标本接收] ←→ [标本核对(条码扫码)]
↓ (不合格退回)
[取材描述] ←→ [组织处理(脱水/包埋)]
↓
[切片制作] ←→ [染色(HE/免疫组化/特殊染色)]
↓
[初诊阅片] ←→ [上级医师审核]
↓ (疑难病例会诊)
[病理会诊] ←→ [最终诊断]
↓
[报告编写] ←→ [三级审核]
↓
[报告签发] ←→ [临床科室领取]
↓
[肿瘤登记] ←→ [随访]
三、数据模型
-- 病理申请
CREATE TABLE pathology_order (
id BIGSERIAL PRIMARY KEY,
patient_id BIGINT NOT NULL,
patient_name VARCHAR(50),
encounter_id BIGINT,
specimen_type VARCHAR(50), -- 手术标本/活检/穿刺/细胞学
clinical_diagnosis TEXT,
sample_site VARCHAR(100),
urgency VARCHAR(20) DEFAULT 'NORMAL', -- URGENT/NORMAL
order_status VARCHAR(20) DEFAULT 'PENDING',
apply_doctor VARCHAR(64),
apply_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
tenant_id BIGINT DEFAULT 0,
is_deleted INT NOT NULL DEFAULT 0,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 病理标本
CREATE TABLE pathology_specimen (
id BIGSERIAL PRIMARY KEY,
order_id BIGINT NOT NULL,
barcode VARCHAR(100) NOT NULL,
specimen_desc TEXT,
collection_site VARCHAR(100),
fixative VARCHAR(50),
fixative_time TIMESTAMP,
receive_time TIMESTAMP,
receiver VARCHAR(64),
is_qualified BOOLEAN DEFAULT TRUE,
reject_reason TEXT,
tenant_id BIGINT DEFAULT 0,
is_deleted INT NOT NULL DEFAULT 0,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 病理处理
CREATE TABLE pathology_process (
id BIGSERIAL PRIMARY KEY,
specimen_id BIGINT NOT NULL,
process_type VARCHAR(30), -- 取材/脱水/包埋/切片/染色/免疫组化
process_desc TEXT,
operator VARCHAR(64),
operate_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
tenant_id BIGINT DEFAULT 0,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 病理诊断
CREATE TABLE pathology_diagnosis (
id BIGSERIAL PRIMARY KEY,
order_id BIGINT NOT NULL,
specimen_id BIGINT,
diagnosis_type VARCHAR(30), -- 初诊/复诊/会诊/最终
diagnosis_result TEXT,
immunostain_result TEXT,
doctor_name VARCHAR(64),
doctor_title VARCHAR(20),
diagnose_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
tenant_id BIGINT DEFAULT 0,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 病理报告
CREATE TABLE pathology_report (
id BIGSERIAL PRIMARY KEY,
order_id BIGINT NOT NULL,
patient_id BIGINT,
specimen_desc TEXT,
macroscopic_desc TEXT, -- 肉眼所见
microscopic_desc TEXT, -- 镜下所见
diagnosis_result TEXT, -- 病理诊断
suggestion TEXT,
report_doctor VARCHAR(64),
report_time TIMESTAMP,
audit_doctor VARCHAR(64),
audit_time TIMESTAMP,
final_doctor VARCHAR(64),
final_time TIMESTAMP,
status VARCHAR(20) DEFAULT 'DRAFT',
tenant_id BIGINT DEFAULT 0,
is_deleted INT NOT NULL DEFAULT 0,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
四、接口设计
| API | 方法 | 说明 |
|---|---|---|
| /pathology/order/page | GET | 病理申请列表 |
| /pathology/order/add | POST | 新建病理申请 |
| /pathology/specimen/scan | POST | 标本扫码接收 |
| /pathology/specimen/reject/{id} | PUT | 标本拒收 |
| /pathology/process/record | POST | 记录处理过程 |
| /pathology/diagnosis/add | POST | 录入诊断 |
| /pathology/report/page | GET | 病理报告列表 |
| /pathology/report/add | POST | 新建报告 |
| /pathology/report/audit/{id} | PUT | 审核报告 |
| /pathology/stats | GET | 病理统计(标本数/诊断分布/周转时间) |