6.1 KiB
6.1 KiB
门诊随访管理模块 — 深度设计文档
版本: 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 核心表
-- 随访计划
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电话模块)
- 随访结果快速录入: 预设选项+自由文本
- 满意度雷达图: 多维度评分可视化