后端: - FollowupController: 随访计划/任务/记录/满意度调查/投诉记录(完整CRUD+业务联动) - PathologyController: 病理医嘱/标本管理/三级审核报告(完整CRUD+业务联动) - EmergencyController: 急诊分诊(五级)/抢救/留观/绿色通道(完整CRUD+统计) 前端: - followup/plan: 随访计划管理(进度条+筛选+联动) - followup/task: 随访任务(今日任务+执行+异常标记) - followup/record: 随访记录(用药依从+复查+转诊) - followup/survey: 满意度调查(星级评分+统计面板) - followup/complaint: 投诉管理(登记→处理→关闭闭环) - pathology/order: 病理医嘱(加急标记+状态流转) - pathology/specimen: 标本管理(扫码接收+质检) - pathology/report: 病理报告(初诊→提交→审核→终审签发) - emergency/triage: 急诊分诊(五级分诊+实时看板+行列高亮) - emergency/rescue: 抢救管理(开始→过程记录→结果) - emergency/observation: 留观管理(时长计算+转归处置) - emergency/greentrack: 绿色通道(Door-to-Tx追踪+达标统计) 修复: - V24-V32 Flyway迁移: is_deleted→delete_flag对齐HisBaseEntity - V24: drug_interaction_rule表兼容V2已有结构(ADD COLUMN IF NOT EXISTS) - V28: CURRENT CURRENT_TIMESTAMP→CURRENT_TIMESTAMP修复 - 所有INDEX添加IF NOT EXISTS防止重复创建
196 lines
6.1 KiB
Markdown
196 lines
6.1 KiB
Markdown
# 门诊随访管理模块 — 深度设计文档
|
|
|
|
> **版本**: v1.0 | **编制日期**: 2026-06-07
|
|
> **依据**: 《三级医院评审标准》患者服务条款 + 慢病管理规范
|
|
|
|
---
|
|
|
|
## 一、业务背景
|
|
|
|
门诊随访是三甲医院患者服务的核心环节:
|
|
- 慢病患者(高血压/糖尿病/冠心病等)出院后需定期随访
|
|
- 手术患者术后需随访恢复情况
|
|
- 肿瘤患者需长期随访复发/转移
|
|
- 满意度调查是医院服务质量的核心指标
|
|
|
|
## 二、业务流程
|
|
|
|
### 2.1 随访计划生成
|
|
```
|
|
出院/门诊结束
|
|
↓
|
|
[自动触发] ← 根据病种+诊断自动生成随访计划
|
|
↓ (规则引擎)
|
|
┌─ 高血压: 每月1次电话随访, 持续1年
|
|
├─ 糖尿病: 每2周1次, 持续6个月
|
|
├─ 手术后: 术后1周/1月/3月/6月/1年
|
|
├─ 肿瘤: 每3个月复查, 持续5年
|
|
└─ 普通: 出院后1周电话随访1次
|
|
↓
|
|
[分配责任人] ← 根据科室+医生自动分配
|
|
```
|
|
|
|
### 2.2 随访执行
|
|
```
|
|
[随访任务列表] ← 责任医生/护士查看今日任务
|
|
↓
|
|
[选择联系方式] ← 电话/短信/微信/门诊
|
|
↓
|
|
[拨打电话/发送短信]
|
|
↓
|
|
[录入随访结果]
|
|
├─ 患者情况良好 → 标记完成
|
|
├─ 有异常症状 → 创建复查预约
|
|
├─ 需要调药 → 转诊门诊
|
|
└─ 失访 → 标记失访原因
|
|
↓
|
|
[更新随访记录]
|
|
```
|
|
|
|
### 2.3 满意度调查
|
|
```
|
|
[出院时] → 发放满意度问卷(纸质/电子)
|
|
↓
|
|
[患者填写] → 评分+建议
|
|
↓
|
|
[数据汇总] → 按科室/医生统计
|
|
↓
|
|
[问题整改] → 质量改进措施
|
|
```
|
|
|
|
## 三、数据模型
|
|
|
|
### 3.1 核心表
|
|
|
|
```sql
|
|
-- 随访计划
|
|
CREATE TABLE followup_plan (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
patient_id BIGINT NOT NULL,
|
|
patient_name VARCHAR(50),
|
|
encounter_id BIGINT,
|
|
disease_code VARCHAR(20),
|
|
disease_name VARCHAR(100),
|
|
followup_type VARCHAR(20) NOT NULL, -- PHONE/SMS/WECHAT/OUTPATIENT
|
|
frequency VARCHAR(20), -- DAILY/WEEKLY/MONTHLY/QUARTERLY
|
|
total_times INT DEFAULT 1,
|
|
completed_times INT DEFAULT 0,
|
|
responsible_doctor VARCHAR(64),
|
|
responsible_nurse VARCHAR(64),
|
|
start_date DATE,
|
|
end_date DATE,
|
|
status VARCHAR(20) DEFAULT 'ACTIVE', -- ACTIVE/COMPLETED/CANCELLED
|
|
tenant_id BIGINT DEFAULT 0,
|
|
is_deleted INT NOT NULL DEFAULT 0,
|
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
-- 随访任务
|
|
CREATE TABLE followup_task (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
plan_id BIGINT NOT NULL,
|
|
patient_id BIGINT NOT NULL,
|
|
patient_name VARCHAR(50),
|
|
phone VARCHAR(20),
|
|
scheduled_date DATE NOT NULL,
|
|
actual_date DATE,
|
|
contact_method VARCHAR(20),
|
|
operator_name VARCHAR(64),
|
|
result VARCHAR(20), -- SUCCESS/FAILED/NO_ANSWER/WRONG_NUMBER/LOST
|
|
abnormal_flag BOOLEAN DEFAULT FALSE,
|
|
next_action VARCHAR(200),
|
|
tenant_id BIGINT DEFAULT 0,
|
|
is_deleted INT NOT NULL DEFAULT 0,
|
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
-- 随访记录
|
|
CREATE TABLE followup_record (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
task_id BIGINT NOT NULL,
|
|
patient_id BIGINT NOT NULL,
|
|
contact_content TEXT,
|
|
patient_condition TEXT,
|
|
medication_compliance VARCHAR(20),
|
|
symptoms TEXT,
|
|
vital_signs JSONB,
|
|
reappointment_flag BOOLEAN DEFAULT FALSE,
|
|
reappointment_date DATE,
|
|
transfer_flag BOOLEAN DEFAULT FALSE,
|
|
transfer_reason TEXT,
|
|
operator_name VARCHAR(64),
|
|
operate_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
tenant_id BIGINT DEFAULT 0,
|
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
-- 满意度调查
|
|
CREATE TABLE satisfaction_survey (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
patient_id BIGINT,
|
|
patient_name VARCHAR(50),
|
|
survey_type VARCHAR(20) NOT NULL, -- INPATIENT/OUTPATIENT/EMERGENCY
|
|
department_name VARCHAR(100),
|
|
doctor_name VARCHAR(64),
|
|
overall_score INT,
|
|
service_score INT,
|
|
environment_score INT,
|
|
suggestions TEXT,
|
|
survey_date DATE DEFAULT CURRENT_DATE,
|
|
tenant_id BIGINT DEFAULT 0,
|
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
-- 投诉记录
|
|
CREATE TABLE complaint_record (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
patient_id BIGINT,
|
|
patient_name VARCHAR(50),
|
|
complaint_type VARCHAR(30) NOT NULL, -- SERVICE/TECHNIQUE/ENVIRONMENT/BILLING/OTHER
|
|
complaint_content TEXT NOT NULL,
|
|
department_name VARCHAR(100),
|
|
handler VARCHAR(64),
|
|
handle_result TEXT,
|
|
handle_time TIMESTAMP,
|
|
status VARCHAR(20) DEFAULT 'PENDING', -- PENDING/PROCESSING/RESOLVED/CLOSED
|
|
satisfaction_after INT,
|
|
tenant_id BIGINT DEFAULT 0,
|
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
```
|
|
|
|
### 3.2 接口设计
|
|
|
|
| API | 方法 | 说明 | 参数 |
|
|
|-----|------|------|------|
|
|
| /followup/plan/page | GET | 随访计划列表 | patientName,status,pageNo,pageSize |
|
|
| /followup/plan/add | POST | 新建随访计划 | patientId,diseaseCode,frequency,totalTimes |
|
|
| /followup/task/my | GET | 我的今日任务 | operatorName |
|
|
| /followup/task/page | GET | 任务列表(分页) | status,scheduledDate,pageNo,pageSize |
|
|
| /followup/task/complete/{id} | PUT | 完成任务 | result,abnormalFlag,nextAction |
|
|
| /followup/record/add | POST | 录入随访记录 | taskId,contactContent,patientCondition |
|
|
| /followup/survey/add | POST | 提交满意度 | surveyType,overallScore,suggestions |
|
|
| /followup/survey/stats | GET | 满意度统计 | departmentName,startDate,endDate |
|
|
| /followup/complaint/page | GET | 投诉列表 | status,complaintType,pageNo,pageSize |
|
|
| /followup/complaint/handle/{id} | PUT | 处理投诉 | handler,handleResult |
|
|
| /followup/stats/overview | GET | 随访概览 | startDate,endDate |
|
|
|
|
## 四、前端页面设计
|
|
|
|
### 4.1 页面结构
|
|
```
|
|
followup/
|
|
├── plan/ # 随访计划管理
|
|
├── task/ # 随访任务(今日任务/我的任务)
|
|
├── record/ # 随访记录查询
|
|
├── survey/ # 满意度调查
|
|
├── complaint/ # 投诉管理
|
|
└── stats/ # 统计分析
|
|
```
|
|
|
|
### 4.2 核心交互
|
|
- **今日任务看板**: 按优先级排序(异常>待随访>已完成)
|
|
- **一键拨号**: 点击患者电话直接拨打(集成HIS电话模块)
|
|
- **随访结果快速录入**: 预设选项+自由文本
|
|
- **满意度雷达图**: 多维度评分可视化
|