Files
his/MD/design/PHASE1_CORE_DESIGN.md
chenqi 575f5d6c32 fix(database): 修复数据库字典重复和表结构缺失问题
- 删除手术状态下拉框的重复字典数据,保留每组中dict_code最小的记录
- 修复HisBaseEntity列缺失问题,为多个表添加create_by、update_by、update_time等基础字段
- 为adm_patient表添加邮政编码、户籍地址、监护人信息、患者来源等缺失字段
- 添加文化程度字典类型和相关字典数据,补充3919到3914等10个学历级别选项
- 为adm_patient_identifier表创建tenant_id和patient_id的联合索引以提升查询性能
- 修复prescription_intercept_log和clinical_pathway_execution表的基础实体字段缺失
- 为wor_device_request表增加医嘱退回相关的back_reason、performer_check_id等字段
- 创建EMPI核心表empi_person和empi_person_id_mapping用于全局患者主索引管理
- 为empi_merge_log表添加create_time字段以完善审计信息
- 更新院感管理和评审保障模块的设计文档,明确各模块实现状态和缺失功能
2026-06-17 11:46:56 +08:00

78 KiB
Raw Blame History

Phase 1P0核心达标17模块详细设计

文档类型: 详细设计 版本: v1.0 日期: 2026-06-17 基于: 代码审计发现 + 三甲医院评审标准


总览

# 模块 已有文件数 已有端点 缺失核心功能
1 住院医生站 125 (87+38) 60+ 医嘱执行闭环、输血管理、临床路径、危急值
2 手术麻醉 57 30+ ASA评估、术中生命体征、麻醉小结、术后随访
3 电子病历 120+ 40+ 修改留痕、版本管理、完整性检查、时效监控
4 病案管理 35 20+ 首页质量校验、HQMS上报、终末质控、病案示踪
5 药品管理 148 139+ 药品交互检查、处方拦截、智能审核
6 护士站 55 31 护理任务管理、执行记录、交接班
7 检验 127 60+ 结果自动审核、危急值处理、自动采集
8 检查/影像 93 55+ PACS集成、结构化报告、影像后处理
9 放射增强 126 55+ 结构化报告模板、AI辅助诊断、对比分析
10 收费/计费 86 62+ 票据管理、对账、退费审核、费用报表
11 挂号 29 30 排队叫号、爽约管理、分时段预约
12 门诊 22 17 门诊病历、随访、复诊提醒
13 住院入出转 40 27 预住院、出院小结、转院、死亡登记
14 医保 55 35+ 对账明细、DRG预警、医保目录同步
15 系统管理 5 16 参数配置、消息通知、定时任务管理
16 字典/基础数据 101 77+ 批量导入校验、数据版本、变更审计
17 电子签名 3 5 签名模板、批量签名、签名验证增强

1. 住院医生站doctorstation + regdoctorstation

已有代码分析

doctorstation regdoctorstation
Controller 12 (Main/Advice/Emr/Diagnosis/Elep/InspectionLab/ChineseMedical/PtDetails/Phrase/TodayOutpatient/ReservationRecord/PendingEmr) 4 (AdviceManage/NurseManage/SpecialAdvice/RequestFormManage)
AppService 12 4
Mapper 11 3
DTO 36+ 17+
前端 doctorstation/ 45 vue inpatientDoctor/ 30 vue

已有功能: 门诊接诊/就诊流程、门诊医嘱开立签发签退、门诊处方、检验检查申请、诊断(中医+西医)、住院医嘱管理、护理医嘱、转科出院医嘱、申请单管理。

缺失功能清单

功能 描述 实现方式
医嘱执行闭环追踪 医嘱从开立→审核→执行→完成的全链路状态追踪 新增 order_execute_record/order_execute_step 表V38已建补前端闭环视图
输血管理 输血申请→审批→执行→观察记录完整流程 新增 blood_transfusion_record 表
临床路径执行 入径评估→路径执行→变异记录→出径评估 V30已建 clinical_pathway/clinical_pathway_execution补执行界面
危急值处理记录 危急值通知→确认→处理→复查的闭环 V8已建 critical_value 相关表,补住院医生站处理入口
住院病程记录 住院病程记录的查看和录入 复用 document 模块的 ProgressNote 功能
出院带药 出院处方开立与审核 复用门诊处方流程,增加出院标识

业务流程

住院医嘱执行闭环:
  医生开立医嘱 → 医嘱审核(上级医师) → 护士站接收 → 执行确认
     ↓                                      ↓
  停嘱/取消 ← 执行异常 ← 执行中(记录时间/用量)
     ↓
  医嘱完成 → 归档

输血管理流程:
  医生开立输血医嘱 → 填写输血申请单 → 科室主任审批
     → 输血科审核 → 交叉配血 → 血液出库
     → 护士执行输血 → 输血观察记录(15min/30min/1h)
     → 输血完成/不良反应处理

临床路径执行:
  入径评估(符合率判断) → 按日程执行路径项目
     → 变异记录(偏离原因) → 路径调整/出径
     → 出径评估(完成率统计)

数据库设计

-- V2026_0618__blood_transfusion_record.sql
CREATE TABLE blood_transfusion_record (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  advice_id BIGINT,
  blood_type VARCHAR(10),
  blood_component VARCHAR(50) NOT NULL,
  blood_volume DECIMAL(10,2),
  blood_unit VARCHAR(50),
  cross_match_result VARCHAR(20),
  indication TEXT,
  doctor_id BIGINT NOT NULL,
  doctor_name VARCHAR(50),
  approval_status VARCHAR(20) DEFAULT 'PENDING',
  approver_id BIGINT,
  approver_name VARCHAR(50),
  approve_time TIMESTAMP,
  transfusion_start_time TIMESTAMP,
  transfusion_end_time TIMESTAMP,
  transfusion_nurse_id BIGINT,
  transfusion_nurse_name VARCHAR(50),
  pre_vital_signs TEXT,
  during_vital_signs TEXT,
  post_vital_signs TEXT,
  adverse_reaction TEXT,
  adverse_reaction_type VARCHAR(50),
  status VARCHAR(20) DEFAULT 'DRAFT',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE blood_transfusion_observation (
  id BIGSERIAL PRIMARY KEY,
  record_id BIGINT NOT NULL,
  observation_time TIMESTAMP NOT NULL,
  observation_phase VARCHAR(20),
  temperature DECIMAL(4,1),
  pulse INTEGER,
  respiration INTEGER,
  blood_pressure_high INTEGER,
  blood_pressure_low INTEGER,
  symptoms TEXT,
  nurse_id BIGINT,
  nurse_name VARCHAR(50),
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

-- V2026_0619__clinical_pathway_execution_enhancement.sql
CREATE TABLE clinical_pathway_variance (
  id BIGSERIAL PRIMARY KEY,
  execution_id BIGINT NOT NULL,
  pathway_id BIGINT NOT NULL,
  variance_date DATE NOT NULL,
  variance_type VARCHAR(20) NOT NULL,
  expected_item VARCHAR(200),
  actual_item VARCHAR(200),
  variance_reason TEXT,
  adjustment_action TEXT,
  record_by BIGINT,
  record_by_name VARCHAR(50),
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE critical_value_handle_record (
  id BIGSERIAL PRIMARY KEY,
  critical_value_id BIGINT NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  handle_type VARCHAR(20) NOT NULL,
  handler_id BIGINT NOT NULL,
  handler_name VARCHAR(50),
  handle_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  handle_result TEXT,
 复查结果 TEXT,
  doctor_id BIGINT,
  doctor_name VARCHAR(50),
  confirm_time TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

POST   /healthlink-his/api/v1/inpatient-doctor/blood-transfusion/apply       申请输血
GET    /healthlink-his/api/v1/inpatient-doctor/blood-transfusion/page         输血申请分页
PUT    /healthlink-his/api/v1/inpatient-doctor/blood-transfusion/approve/{id} 审批输血
POST   /healthlink-his/api/v1/inpatient-doctor/blood-transfusion/observe      输血观察记录
GET    /healthlink-his/api/v1/inpatient-doctor/blood-transfusion/record/{id}  输血记录详情

GET    /healthlink-his/api/v1/inpatient-doctor/pathway/evaluate/{encounterId}  入径评估
POST   /healthlink-his/api/v1/inpatient-doctor/pathway/admission              入径
POST   /healthlink-his/api/v1/inpatient-doctor/pathway/execution/record       执行记录
POST   /healthlink-his/api/v1/inpatient-doctor/pathway/variance/record        变异记录
POST   /healthlink-his/api/v1/inpatient-doctor/pathway/discharge              出径
GET    /healthlink-his/api/v1/inpatient-doctor/pathway/statistics             路径统计

GET    /healthlink-his/api/v1/inpatient-doctor/critical-value/pending         待处理危急值
POST   /healthlink-his/api/v1/inpatient-doctor/critical-value/handle          处理危急值
GET    /healthlink-his/api/v1/inpatient-doctor/critical-value/history         处理历史

GET    /healthlink-his/api/v1/inpatient-doctor/order-execute/trace/{adviceId} 医嘱执行追踪
GET    /healthlink-his/api/v1/inpatient-doctor/order-execute/statistics       执行统计

前端页面设计

页面 路径 类型 说明
输血管理 inpatientDoctor/BloodTransfusion.vue 新建 输血申请列表+审批+观察记录
临床路径执行 inpatientDoctor/ClinicalPathway.vue 新建 路径日程表+执行+变异记录
危急值处理 inpatientDoctor/CriticalValueHandle.vue 新建 待处理列表+处理表单+复查确认
医嘱执行追踪 inpatientDoctor/OrderExecuteTrace.vue 新建 时间轴视图展示医嘱全生命周期

关键业务规则

  1. 输血申请必须由主治及以上医师审批,紧急情况可由值班医师代签
  2. 输血前必须完成交叉配血试验,结果阴性方可执行
  3. 输血过程中15分钟、30分钟、1小时各记录一次生命体征
  4. 发生输血不良反应立即停止输血并报告
  5. 临床路径入径率≥50%完成率≥70%
  6. 危急值30分钟内必须确认处理

2. 手术麻醉anesthesia + clinicalmanage + surgicalschedule

已有代码分析

anesthesia clinicalmanage surgicalschedule
Controller 2 (AnesthesiaController + AnesthesiaEnhancedController) 2 (SurgeryController + SurgicalScheduleController) 1 (SurgerySafetyCheckController)
AppService 1 (IAnesthesiaAppService) 2 (ISurgeryAppService + ISurgicalScheduleAppService) 0
Domain Service 8 (Record/VitalSign/Medication/IoRecord/Followup/PostopFollowup/Specimen/QC) 0 2 (SurgerySafetyCheck/OpSchedule)
Entity 8 (AnesthesiaRecord/VitalSign/Medication/IoRecord/Followup/PostopFollowup/Specimen/QC) 0 2 (OpSchedule/SurgerySafetyCheck)
Flyway V3(VitalSign/Medication/IoRecord/Record), V19(Specimen/Followup/QC) V19(Schedule) V19(SafetyCheck)
前端 anesthesia/ 1 vue, anesthesiaenhanced/ 1 vue clinicalmanage/ 1 vue surgicalschedule/ 2 vue

已有功能: 麻醉记录CRUD、术中生命体征记录、用药记录、出入量、术后随访、标本管理、质控、手术CRUD、手术安排、安全核查。

缺失功能清单

功能 描述 实现方式
ASA分级评估 术前ASA分级(~Ⅵ级)评估表 新增 anes_asa_assessment 表
麻醉小结 麻醉结束后的综合小结记录 新增 anes_summary 表,扩展 AnesthesiaRecord 状态流转
麻醉前评估 术前访视、气道评估、禁食禁饮记录 新增 anes_preassess 表
术中事件记录 关键事件(插管/拔管/体位变换/异常)时间轴 新增 anes_event 表
麻醉复苏评分 PACU Aldrete 评分记录 新增 anes_recovery_score 表
手术安全核查增强 手术三方核对(Sign In/Time Out/Sign Out) 复用 SurgerySafetyCheck增加流程状态管理

业务流程

麻醉全流程:
  术前访视(ASA评估) → 麻醉方案制定 → 麻醉前准备
     → 麻醉诱导 → 术中维持(5min生命体征+事件记录)
     → 手术结束 → 麻醉苏醒(PACU评分)
     → 麻醉小结 → 术后随访(Day1/Day3/Day7)

手术安全三方核对:
  Sign In(麻醉前): 患者身份/手术部位/手术方式/过敏/气道风险
  Time Out(切皮前): 团队自我介绍/确认患者/抗生素/预期困难
  Sign Out(离开前): 手术名称/器械清点/标本/术后关注事项

数据库设计

-- V2026_0620__anesthesia_enhancement.sql
CREATE TABLE anes_asa_assessment (
  id BIGSERIAL PRIMARY KEY,
  record_id BIGINT NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  asa_grade VARCHAR(5) NOT NULL,
  assessment_time TIMESTAMP NOT NULL,
  assessor_id BIGINT NOT NULL,
  assessor_name VARCHAR(50),
  airway_assessment TEXT,
  mallampati_grade VARCHAR(5),
  neck_mobility VARCHAR(50),
  mouth_opening_cm DECIMAL(4,1),
  weight_kg DECIMAL(6,2),
  height_cm DECIMAL(5,1),
  bmi DECIMAL(5,1),
  npo_hours INTEGER,
  asa_factors TEXT,
  risk_level VARCHAR(20),
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE anes_preassess (
  id BIGSERIAL PRIMARY KEY,
  record_id BIGINT NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  assess_time TIMESTAMP NOT NULL,
  assessor_id BIGINT NOT NULL,
  assessor_name VARCHAR(50),
  chief_complaint TEXT,
  past_medical_history TEXT,
  allergy_history TEXT,
  family_history TEXT,
  physical_exam TEXT,
  lab_summary TEXT,
  ecg_summary TEXT,
  imaging_summary TEXT,
  npo_status VARCHAR(20),
  npo_start_time TIMESTAMP,
  proposed_surgery VARCHAR(200),
  proposed_anesthesia VARCHAR(50),
  special_notes TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE anes_summary (
  id BIGSERIAL PRIMARY KEY,
  record_id BIGINT NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  surgery_name VARCHAR(200),
  anesthesia_method VARCHAR(50),
  anesthesia_start_time TIMESTAMP,
  anesthesia_end_time TIMESTAMP,
  surgery_start_time TIMESTAMP,
  surgery_end_time TIMESTAMP,
  anesthesia_duration_min INTEGER,
  surgery_duration_min INTEGER,
  position VARCHAR(50),
  intubation_type VARCHAR(50),
  intubation_time TIMESTAMP,
  extubation_time TIMESTAMP,
  total_fluid_ml DECIMAL(10,2),
  total_blood_loss_ml DECIMAL(10,2),
  total_urine_ml DECIMAL(10,2),
  intraoperative_diagnosis TEXT,
  complications TEXT,
 blood_products TEXT,
  vasopressors_used TEXT,
  antibiotics_used TEXT,
  discharge_condition VARCHAR(20),
  discharge_destination VARCHAR(50),
  pacu_arrival_time TIMESTAMP,
  pacu_departure_time TIMESTAMP,
  summary_by BIGINT,
  summary_by_name VARCHAR(50),
  summary_time TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE anes_event (
  id BIGSERIAL PRIMARY KEY,
  record_id BIGINT NOT NULL,
  event_time TIMESTAMP NOT NULL,
  event_type VARCHAR(30) NOT NULL,
  event_detail TEXT,
  severity VARCHAR(10),
  handled_by BIGINT,
  handled_by_name VARCHAR(50),
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE anes_recovery_score (
  id BIGSERIAL PRIMARY KEY,
  record_id BIGINT NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  score_time TIMESTAMP NOT NULL,
  activity_score INTEGER DEFAULT 0,
  respiration_score INTEGER DEFAULT 0,
  circulation_score INTEGER DEFAULT 0,
  consciousness_score INTEGER DEFAULT 0,
  spo2_score INTEGER DEFAULT 0,
  total_score INTEGER DEFAULT 0,
  scorer_id BIGINT,
  scorer_name VARCHAR(50),
  discharge_ready BOOLEAN DEFAULT FALSE,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

POST   /healthlink-his/api/v1/anesthesia/asa-assessment                    ASA评估保存
GET    /healthlink-his/api/v1/anesthesia/asa-assessment/{recordId}          ASA评估查询
POST   /healthlink-his/api/v1/anesthesia/preassess                         术前访视保存
GET    /healthlink-his/api/v1/anesthesia/preassess/{recordId}              术前访视查询
POST   /healthlink-his/api/v1/anesthesia/summary                           麻醉小结保存
GET    /healthlink-his/api/v1/anesthesia/summary/{recordId}                麻醉小结查询
PUT    /healthlink-his/api/v1/anesthesia/complete/{recordId}               完成麻醉记录
POST   /healthlink-his/api/v1/anesthesia/event                             术中事件记录
GET    /healthlink-his/api/v1/anesthesia/event/{recordId}                  术中事件列表
POST   /healthlink-his/api/v1/anesthesia/recovery-score                    PACU评分保存
GET    /healthlink-his/api/v1/anesthesia/recovery-score/{recordId}         PACU评分历史

前端页面设计

页面 路径 类型 说明
ASA评估 anesthesia/AsaAssessment.vue 新建 ASA分级评估表单
术前访视 anesthesia/PreAssess.vue 新建 术前访视记录表单
麻醉小结 anesthesia/AnesSummary.vue 新建 综合小结表单+打印
术中事件 anesthesia/IntraopEvent.vue 新建 事件时间轴+录入
PACU评分 anesthesia/RecoveryScore.vue 新建 Aldrete评分表+趋势图
完整流程 anesthesia/AnesthesiaFlow.vue 扩展 整合术前→术中→术后全流程

关键业务规则

  1. ASA分级必须由麻醉医师在术前完成评估
  2. 术中生命体征每5分钟自动采集一次手动可补录
  3. 麻醉记录完成后不可修改,只能留痕
  4. PACU评分≥9分方可转出
  5. 术后随访D1/D3/D7必访记录并发症和恢复情况

3. 电子病历emr + document

已有代码分析

emr document
Controller 4 (StructuredEmr/EmrRevision/EmrArchive/EmrSearch) 8 (ProgressNote/InformedConsent/DocTemplate/DocStatisticsDefinition/DocStatistics/DocRecord/DocDefinitionOrganization/DocDefinition)
AppService 1 (IStructuredEmrAppService) 8+
Domain Entity 7 (Revision/CompletenessCheck/Timeliness/ArchiveRecord/SearchIndex/Template) 17+ (ProgressNote/InformedConsent/RequestForm/OrderProcess/EmrTemplate/Emr/EmrDict/EmrDetail/DocTemplate/DocRecord...)
Domain Service 14 30+
前端 emr/ 3 vue document/ (被 doctorstation 复用)

已有功能: 结构化病历模板、修改留痕(创建+查询+对比)、完整性检查、时限监控(超时列表+完成率统计)、病历归档(打印+归档+补打+统计)、病历检索、病程记录、知情同意书、文书定义/模板/统计。

缺失功能清单

功能 描述 实现方式
病历版本管理 多版本保存、版本切换、版本对比可视化 扩展 emr_revision 表增加 version_no 字段
病历完整性规则配置 可配置的完整性检查规则(必填项/必签名/时效) 新增 emr_completeness_rule 表
病历质量评分 根据完整性+时效+规范性自动评分 新增 emr_quality_score 表
病历锁定机制 病历归档后锁定,修改需申请解锁 扩展 emr 表增加 lock_status 字段
病历模板版本管理 模板的版本控制和发布管理 扩展 doc_template 表

业务流程

病历生命周期:
  创建/编辑 → 保存草稿 → 提交签名 → 归档锁定
     ↑                                      ↓
  申请解锁 ← 修改申请(留痕) ← 修改审核

完整性检查流程:
  系统定时检查 → 规则引擎匹配 → 生成检查报告
     → 推送提醒给责任医师 → 医师完善 → 重新检查

时限监控:
  入院记录(24h) → 首次病程(8h) → 日常病程(3天/次)
     → 手术记录(24h) → 出院小结(24h)
     → 超时预警 → 超时统计 → 质量考核

数据库设计

-- V2026_0621__emr_version_and_rules.sql
ALTER TABLE emr_revision ADD COLUMN IF NOT EXISTS version_no INTEGER DEFAULT 1;
ALTER TABLE emr_revision ADD COLUMN IF NOT EXISTS change_summary TEXT;
ALTER TABLE emr_revision ADD COLUMN IF NOT EXISTS diff_content TEXT;

CREATE TABLE emr_completeness_rule (
  id BIGSERIAL PRIMARY KEY,
  rule_name VARCHAR(100) NOT NULL,
  rule_type VARCHAR(30) NOT NULL,
  emr_type VARCHAR(30),
  rule_config TEXT NOT NULL,
  severity VARCHAR(10) DEFAULT 'WARNING',
  enabled CHAR(1) DEFAULT '1',
  sort_order INTEGER DEFAULT 0,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE emr_quality_score (
  id BIGSERIAL PRIMARY KEY,
  emr_id BIGINT NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  completeness_score DECIMAL(5,2),
  timeliness_score DECIMAL(5,2),
  standard_score DECIMAL(5,2),
  total_score DECIMAL(5,2),
  score_level VARCHAR(10),
  score_detail TEXT,
  score_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  scorer_id BIGINT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

ALTER TABLE emr ADD COLUMN IF NOT EXISTS lock_status VARCHAR(10) DEFAULT 'UNLOCKED';
ALTER TABLE emr ADD COLUMN IF NOT EXISTS lock_time TIMESTAMP;
ALTER TABLE emr ADD COLUMN IF NOT EXISTS lock_by VARCHAR(64);
ALTER TABLE emr ADD COLUMN IF NOT EXISTS current_version INTEGER DEFAULT 1;

API接口设计

GET    /healthlink-his/api/v1/emr/version/history/{emrId}       病历版本历史
GET    /healthlink-his/api/v1/emr/version/diff                  版本对比
GET    /healthlink-his/api/v1/emr/version/{emrId}/{versionNo}   获取指定版本

GET    /healthlink-his/api/v1/emr/quality/score/{emrId}         病历质量评分
GET    /healthlink-his/api/v1/emr/quality/statistics            质量统计
POST   /healthlink-his/api/v1/emr/quality/batch-check           批量质量检查

GET    /healthlink-his/api/v1/emr/completeness-rule/page        规则分页
POST   /healthlink-his/api/v1/emr/completeness-rule             规则保存
PUT    /healthlink-his/api/v1/emr/completeness-rule/{id}        规则更新
DELETE /healthlink-his/api/v1/emr/completeness-rule/{id}        规则删除

PUT    /healthlink-his/api/v1/emr/lock/{emrId}                  锁定病历
PUT    /healthlink-his/api/v1/emr/unlock/{emrId}                解锁病历(需申请)

前端页面设计

页面 路径 类型 说明
版本管理 emr/VersionHistory.vue 新建 版本列表+对比视图(差异高亮)
质量评分 emr/QualityScore.vue 新建 评分详情+趋势图
规则配置 emr/CompletenessRule.vue 新建 规则CRUD+测试
完整视图 emr/EmrCompleteView.vue 扩展 整合留痕/版本/质量/锁定

关键业务规则

  1. 病历归档后自动锁定,修改需提交申请经上级审批
  2. 每次修改自动创建新版本,保留完整历史
  3. 完整性规则可按科室/病种/文书类型配置
  4. 质量评分≥90为优秀80-89为良好70-79为合格<70为不合格
  5. 超时病历自动推送提醒连续超时3次升级至科室主任

4. 病案管理mrhomepage + inhospitalmanage

已有代码分析

mrhomepage inhospitalmanage
Controller 4 (MrHomepage/MrDrg/MrManagement/DrgAnalysis) 1 (InpatientDiagnosisController)
AppService 1 (IMrHomepageAppService) 0
Domain Entity 7 (MrHomepage/QualityCheck/Borrowing/Sealing/Tracking/DeathDiscussion/DrgGrouping) 0
Domain Service 14 0
前端 mrhomepage/ 3 vue, hospitalRecord/ 10 vue inHospitalManagement/ 43 vue

已有功能: 病案首页生成/更新/查询/质控/统计/提交、DRG/DIP分组、病案借阅(申请/审批/归还)、病案封存/解封、病案示踪、死亡病例讨论、归档统计。

缺失功能清单

功能 描述 实现方式
首页数据质量校验 自动校验首页必填项、编码正确性、逻辑一致性 扩展 QualityCheck增加校验规则引擎
首页HQMS上报 病案首页上报至HQMS国家平台 新增 mr_homepage_hqms_upload 表
终末质控 出院后7日内的病案质量终审 新增 mr_terminal_qc 表
病案示踪增强 条码/RFID示踪实时位置追踪 扩展 mr_tracking增加位置节点
DRG分组预警 分组异常预警和自动纠错 新增 mr_drg_alert 表
病案统计报表 按科室/病种/医师的病案质量统计 复用 mr_archive_stats增加维度

业务流程

病案首页全流程:
  自动生成(出院时) → 数据质量校验 → 人工复核
     → 修改完善 → 提交上报(HQMS) → 终末质控
     → 归档封存 → 统计分析

终末质控流程:
  出院7日内 → 系统自动分配质控员 → 质控员逐份审核
     → 标记问题(首页/病历/诊断/编码) → 退回修改
     → 修改完成 → 复审通过 → 质控完成

HQMS上报流程:
  首页提交 → 格式校验 → 数据脱敏 → 上传HQMS
     → 接收回执 → 处理异常 → 上报成功

数据库设计

-- V2026_0622__mr_management_enhancement.sql
CREATE TABLE mr_terminal_qc (
  id BIGSERIAL PRIMARY KEY,
  homepage_id BIGINT NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  qc_status VARCHAR(20) DEFAULT 'PENDING',
  qc_type VARCHAR(20) NOT NULL,
  qc_item VARCHAR(100),
  qc_result VARCHAR(20),
  qc_detail TEXT,
  qc_by BIGINT,
  qc_by_name VARCHAR(50),
  qc_time TIMESTAMP,
  review_by BIGINT,
  review_by_name VARCHAR(50),
  review_time TIMESTAMP,
  review_result VARCHAR(20),
  review_detail TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE mr_homepage_hqms_upload (
  id BIGSERIAL PRIMARY KEY,
  homepage_id BIGINT NOT NULL,
  upload_batch VARCHAR(50),
  upload_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  upload_status VARCHAR(20) DEFAULT 'PENDING',
  response_code VARCHAR(20),
  response_msg TEXT,
  retry_count INTEGER DEFAULT 0,
  last_retry_time TIMESTAMP,
  upload_by BIGINT,
  upload_by_name VARCHAR(50),
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE mr_drg_alert (
  id BIGSERIAL PRIMARY KEY,
  grouping_id BIGINT NOT NULL,
  alert_type VARCHAR(30) NOT NULL,
  alert_level VARCHAR(10) DEFAULT 'WARNING',
  alert_detail TEXT,
  suggested_fix TEXT,
  alert_status VARCHAR(20) DEFAULT 'OPEN',
  handler_id BIGINT,
  handler_name VARCHAR(50),
  handle_time TIMESTAMP,
  handle_result TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE mr_quality_check_rule (
  id BIGSERIAL PRIMARY KEY,
  rule_name VARCHAR(100) NOT NULL,
  rule_category VARCHAR(30) NOT NULL,
  rule_config TEXT NOT NULL,
  check_scope VARCHAR(30) DEFAULT 'HOMEPAGE',
  severity VARCHAR(10) DEFAULT 'ERROR',
  enabled CHAR(1) DEFAULT '1',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

API接口设计

POST   /healthlink-his/api/v1/mr-homepage/quality-check/batch/{homepageId}  批量质控检查
GET    /healthlink-his/api/v1/mr-homepage/quality-rules                     质控规则列表
POST   /healthlink-his/api/v1/mr-homepage/quality-rules                     保存质控规则

POST   /healthlink-his/api/v1/mr-homepage/hqms/upload/{homepageId}          HQMS上报
GET    /healthlink-his/api/v1/mr-homepage/hqms/upload-page                  上报记录分页
POST   /healthlink-his/api/v1/mr-homepage/hqms/retry/{id}                   重试上报

GET    /healthlink-his/api/v1/mr-management/terminal-qc/page                终末质控分页
POST   /healthlink-his/api/v1/mr-management/terminal-qc/assign              分配质控员
POST   /healthlink-his/api/v1/mr-management/terminal-qc/submit              提交质控结果
POST   /healthlink-his/api/v1/mr-management/terminal-qc/review              复审

GET    /healthlink-his/api/v1/mr-management/drg-alert/page                  DRG预警分页
POST   /healthlink-his/api/v1/mr-management/drg-alert/handle                处理预警

GET    /healthlink-his/api/v1/mr-management/statistics/quality               质量统计
GET    /healthlink-his/api/v1/mr-management/statistics/hqms                  HQMS统计

前端页面设计

页面 路径 类型 说明
终末质控 hospitalRecord/TerminalQc.vue 新建 质控任务列表+审核表单
HQMS上报 hospitalRecord/HqmsUpload.vue 新建 上报记录+重试+统计
DRG预警 hospitalRecord/DrgAlert.vue 新建 预警列表+处理
质量报表 hospitalRecord/QualityReport.vue 新建 多维度质量统计图表
质控规则 hospitalRecord/QcRuleConfig.vue 新建 规则配置管理

关键业务规则

  1. 出院后24小时内自动生成病案首页
  2. 首页上报前必须通过数据质量校验
  3. 终末质控在出院7日内完成质控员与主治医师不能为同一人
  4. DRG分组完成后自动检查CMI值合理性
  5. 病案借阅必须审批借阅期限14天

5. 药品管理pharmacymanage + pharmacyDispensarymanage + pharmacyWarehousemanage

已有代码分析

pharmacymanage pharmacyDispensarymanage pharmacyWarehousemanage
Controller 8 (WesternMedicineDispense/SummaryDispenseMedicine/ReturnMedicine/PendingMedicationDetails/MedicationDetails/MedicalDeviceDispense/InHospitalReturnMedicine/PharmacyStockAlert) 8 (TransferOut/TransferIn/Stocktaking/StockIn/ReturnToWarehouse/Requisition/ProfitLoss/Dispensing) 8 (StockOut/Stocktaking/Return/StockIn/ReturnToWarehouse/ProfitLoss/Purchase/DocumentManagement)
AppService 7 10 10
前端 pharmacymanagement/ 27 vue, drug/ 7 vue medicineStorage/ 28 vue medicineStorage/ 28 vue

已有功能: 西药发药/退药、汇总发药、住院退药、药品库存预警、药房/药库全套单据管理(调拨/入库/出库/盘点/报损/领用/退货/采购)。

缺失功能清单

功能 描述 实现方式
药品交互检查 开方时自动检查药物相互作用 新增 drug_interaction_rule 表 + 前端提示
处方前置审核 发药前自动审核处方合理性(配伍/剂量/禁忌) 新增 prescription_review_record 表
高危药品管理 高危药品标识、双人核对、剂量限制 扩展药品字典增加高危标识
药品效期管理 近效期预警、效期追踪 扩展库存表增加效期字段
智能用药提醒 基于患者病情的用药提醒 新增 medication_reminder 表

业务流程

处方审核流程:
  医生开方 → 系统自动审核(配伍/剂量/禁忌/过敏)
     → 审核通过 → 发药
     → 审核警告 → 人工确认 → 发药
     → 审核拦截 → 拒绝发药 → 通知医生修改

高危药品管理:
  药品标记(高危) → 发药时提示 → 双人核对
     → 核对签名 → 发药完成

数据库设计

-- V2026_0623__pharmacy_safety_enhancement.sql
CREATE TABLE drug_interaction_rule (
  id BIGSERIAL PRIMARY KEY,
  drug_code_a VARCHAR(50) NOT NULL,
  drug_name_a VARCHAR(100),
  drug_code_b VARCHAR(50) NOT NULL,
  drug_name_b VARCHAR(100),
  interaction_type VARCHAR(30) NOT NULL,
  severity VARCHAR(10) NOT NULL,
  description TEXT,
  suggestion TEXT,
  enabled CHAR(1) DEFAULT '1',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE prescription_review_record (
  id BIGSERIAL PRIMARY KEY,
  prescription_no VARCHAR(50) NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  review_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  review_result VARCHAR(20) NOT NULL,
  review_items TEXT,
  reviewer_id BIGINT,
  reviewer_name VARCHAR(50),
  manual_override CHAR(1) DEFAULT '0',
  override_reason TEXT,
  override_by BIGINT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE medication_reminder (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  advice_id BIGINT NOT NULL,
  reminder_type VARCHAR(30) NOT NULL,
  reminder_content TEXT,
  remind_time TIMESTAMP NOT NULL,
  remind_status VARCHAR(20) DEFAULT 'PENDING',
  handler_id BIGINT,
  handler_name VARCHAR(50),
  handle_time TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/pharmacy/interaction-check              药品交互检查
GET    /healthlink-his/api/v1/pharmacy/interaction-rule/page          交互规则分页
POST   /healthlink-his/api/v1/pharmacy/interaction-rule               保存规则

POST   /healthlink-his/api/v1/pharmacy/review/record                  审核记录保存
GET    /healthlink-his/api/v1/pharmacy/review/record/{prescriptionNo} 审核记录查询

GET    /healthlink-his/api/v1/pharmacy/expiry-warning/page            效期预警分页
GET    /healthlink-his/api/v1/pharmacy/expiry-warning/stats           效期预警统计

前端页面设计

页面 路径 类型 说明
交互检查 pharmacymanagement/InteractionCheck.vue 新建 交互规则配置+检查结果
处方审核 pharmacymanagement/PrescriptionReview.vue 新建 审核结果展示+人工确认
效期管理 pharmacymanagement/ExpiryWarning.vue 新建 近效期药品列表+预警

关键业务规则

  1. 高危药品必须双人核对后方可发药
  2. 药物相互作用检查在开方和发药两个环节均执行
  3. 药品距效期6个月预警3个月黄灯1个月红灯
  4. 处方审核拦截项不可人工跳过(需上级授权)
  5. 每日自动统计处方合理率

6. 护士站inhospitalnursestation

已有代码分析

文件数
Controller 6 (AdviceProcess/MedicineSummary/NurseBilling/ATDManage/EncounterAutoRoll/OrgDeviceStockTake)
AppService 6
Mapper 6
DTO 28
前端 inpatientNurse/ 56 vue

已有功能: 医嘱处理(审核/驳回/执行/取消/作废)、药品汇总(汇总发药/取消汇总)、护士划价/计费、入出转管理(入院/转科/出院/清床)、自动滚方、科室耗材盘点。

缺失功能清单

功能 描述 实现方式
护理评估 入院护理评估、压疮评估、跌倒评估、疼痛评估 新增 nurse_assessment 表
护理任务管理 护理任务生成、分配、执行、追踪 新增 nurse_task 表
交接班记录 班次交接记录(患者情况/特殊事项/物品交接) 新增 nurse_shift_handover 表
护理计划 基于评估结果的护理计划制定和执行 新增 nurse_care_plan 表
患者身份核对 扫码核对患者身份+腕带信息 复用 patientmanage 模块

业务流程

护理评估流程:
  患者入院 → 入院护理评估(首次) → 压疮风险评估(Braden)
     → 跌倒风险评估(Morse) → 疼痛评估(NRS)
     → 生成护理计划 → 定期复评(压疮/跌倒每7天)

交接班流程:
  当班护士 → 汇总患者情况(特殊医嘱/待执行任务/异常)
     → 填写交接记录 → 接班护士确认
     → 双方签名 → 归档

护理任务管理:
  医嘱生成任务 → 分配护士 → 执行记录
     → 执行确认 → 任务完成 → 统计

数据库设计

-- V2026_0624__nursing_enhancement.sql
CREATE TABLE nurse_assessment (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  assessment_type VARCHAR(30) NOT NULL,
  assessment_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  assessor_id BIGINT NOT NULL,
  assessor_name VARCHAR(50),
  assessment_data TEXT NOT NULL,
  risk_level VARCHAR(20),
  total_score DECIMAL(5,1),
  next_assessment_date DATE,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE nurse_task (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  advice_id BIGINT,
  task_type VARCHAR(30) NOT NULL,
  task_name VARCHAR(100) NOT NULL,
  task_detail TEXT,
  scheduled_time TIMESTAMP,
  assigned_to BIGINT,
  assigned_to_name VARCHAR(50),
  status VARCHAR(20) DEFAULT 'PENDING',
  execute_time TIMESTAMP,
  execute_by BIGINT,
  execute_by_name VARCHAR(50),
  execute_result TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE nurse_shift_handover (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  shift_date DATE NOT NULL,
  shift_type VARCHAR(10) NOT NULL,
  from_nurse_id BIGINT NOT NULL,
  from_nurse_name VARCHAR(50),
  to_nurse_id BIGINT NOT NULL,
  to_nurse_name VARCHAR(50),
  patient_count INTEGER,
  special_items TEXT,
  pending_tasks TEXT,
  abnormal_situations TEXT,
  handover_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  from_signature TEXT,
  to_signature TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE nurse_care_plan (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  plan_name VARCHAR(100) NOT NULL,
  diagnosis TEXT,
  nursing_goals TEXT,
  nursing_measures TEXT,
  evaluation_criteria TEXT,
  plan_status VARCHAR(20) DEFAULT 'ACTIVE',
  plan_by BIGINT,
  plan_by_name VARCHAR(50),
  plan_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

API接口设计

POST   /healthlink-his/api/v1/nurse-station/assessment              护理评估保存
GET    /healthlink-his/api/v1/nurse-station/assessment/{encounterId} 护理评估查询
GET    /healthlink-his/api/v1/nurse-station/assessment/pending       待评估列表

GET    /healthlink-his/api/v1/nurse-station/task/page                护理任务分页
POST   /healthlink-his/api/v1/nurse-station/task/assign              任务分配
POST   /healthlink-his/api/v1/nurse-station/task/execute             任务执行
GET    /healthlink-his/api/v1/nurse-station/task/statistics          任务统计

POST   /healthlink-his/api/v1/nurse-station/shift-handover/save      交接班保存
GET    /healthlink-his/api/v1/nurse-station/shift-handover/history   交接班历史
GET    /healthlink-his/api/v1/nurse-station/shift-handover/current   当前班次信息

POST   /healthlink-his/api/v1/nurse-station/care-plan               护理计划保存
GET    /healthlink-his/api/v1/nurse-station/care-plan/{encounterId}  护理计划查询

前端页面设计

页面 路径 类型 说明
护理评估 inpatientNurse/NurseAssessment.vue 新建 评估表单(多类型)+历史记录
护理任务 inpatientNurse/NurseTask.vue 新建 任务列表+分配+执行+统计
交接班 inpatientNurse/ShiftHandover.vue 新建 交接记录表单+历史查询
护理计划 inpatientNurse/CarePlan.vue 新建 计划制定+执行追踪

关键业务规则

  1. 入院8小时内完成首次护理评估
  2. Braden评分≤12分高危每4小时评估一次
  3. Morse评分≥45分高危需启动防跌倒措施
  4. 交接班必须双方签名确认
  5. 护理任务必须在计划时间内完成,超时自动预警

7. 检验lab + Inspection

已有代码分析

lab Inspection
Controller 5 (LabEnhanced/LabHistory/LabActivityDefinition/InspectionType/InspectionPackage) 9 (Laboratory/ObservationDef/SpecimenDef/Instrument/SampleCollect/LisConfig/LabReferenceRange/Icd10/ClinicalManageObservation)
Domain Entity 17 (InspectionPackage/Specimen/Observation/LabActivityDefinition/InspectionLabApply/BarCode/LabReferenceRange/Icd10Code/LabResultComparison/LabInternalQc/LabExternalEqa...) 0
前端 labenhanced/ 6 vue, labhistory/ 1 vue inspection/ 10 vue

已有功能: 检验套餐/项目/标本/仪器管理、检验申请、标本采集、LIS配置、参考范围、ICD-10编码、结果对比、室内质控、室间质评、检验历史趋势。

缺失功能清单

功能 描述 实现方式
结果自动审核 基于规则的自动审核(正常值/危急值/Delta校验) 新增 lab_auto_review_rule 表
危急值自动通知 危急值发现后自动通知主管医师 复用 criticalvalue 模块
标本追踪 标本从采集→送检→接收→检测→报告全流程 扩展 BarCode 表增加状态节点
检验报告打印 标准检验报告单生成和打印 新增 lab_report_template 表

业务流程

检验全流程:
  医生开立申请 → 生成条码 → 护士采集标本
     → 标本送检(LIS) → 实验室接收 → 上机检测
     → 结果审核(自动+人工) → 报告发布
     → 危急值通知(30min) → 临床处理

自动审核流程:
  结果返回 → 自动审核规则匹配
     → 规则通过(正常值+Delta校验OK) → 自动审核通过
     → 规则异常(危急值/异常变化) → 转人工审核
     → 人工确认 → 报告发布

数据库设计

-- V2026_0625__lab_enhancement.sql
CREATE TABLE lab_auto_review_rule (
  id BIGSERIAL PRIMARY KEY,
  rule_name VARCHAR(100) NOT NULL,
  observation_code VARCHAR(50),
  rule_type VARCHAR(30) NOT NULL,
  rule_config TEXT NOT NULL,
  enabled CHAR(1) DEFAULT '1',
  priority INTEGER DEFAULT 0,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE lab_report_template (
  id BIGSERIAL PRIMARY KEY,
  template_name VARCHAR(100) NOT NULL,
  template_type VARCHAR(30) NOT NULL,
  template_content TEXT,
  is_default CHAR(1) DEFAULT '0',
  enabled CHAR(1) DEFAULT '1',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/lab/auto-review-rule/page         自动审核规则分页
POST   /healthlink-his/api/v1/lab/auto-review-rule              保存规则
POST   /healthlink-his/api/v1/lab/execute-auto-review/{applyNo} 执行自动审核

GET    /healthlink-his/api/v1/lab/report/template/page          报告模板分页
POST   /healthlink-his/api/v1/lab/report/generate/{applyNo}     生成报告
GET    /healthlink-his/api/v1/lab/report/preview/{applyNo}      报告预览

GET    /healthlink-his/api/v1/lab/specimen/trace/{barcode}      标本追踪

前端页面设计

页面 路径 类型 说明
自动审核规则 labenhanced/AutoReviewRule.vue 新建 规则配置管理
标本追踪 labenhanced/SpecimenTrace.vue 新建 标本全流程追踪时间轴

关键业务规则

  1. 危急值必须在30分钟内通知临床并获得确认
  2. 自动审核通过率目标≥70%
  3. 标本溶血/脂血/凝块等不合格标本必须退回重采
  4. 检验报告签发后不可修改,修改需留痕
  5. 室内质控每日至少做一次

8. 检查/影像check

已有代码分析

check
Controller 11 (ExamApply/ExamAppointment/RadiologyImage/RadiologyEnhanced/RadiologyComparison/SpecimenBarcode/CheckType/CheckPart/CheckMethod/LisGroupInfo/ClinicalManageObservation)
Domain Entity 17 (ExamApply/ExamApplyItem/ExamAppointment/RadiologyImage/RadiologyImageReport/RadiologyUrgentReport/RadiologyStatistics/RadiologyImageComparison/DicomPrintRecord/SpecimenBarcode/CheckType/CheckPart/CheckMethod/CheckPackage...)
前端 inspection/ 10 vue, radiologyenhanced/ 1 vue, radiologycomparison/ 1 vue

已有功能: 检查申请、检查预约(签到/开始/完成/取消)、放射影像(上传/报告/提交/审核/打印)、影像对比、紧急报告、放射统计、DICOM打印、标本条码、检查类型/部位/方法/套餐管理。

缺失功能清单

功能 描述 实现方式
PACS集成接口 与PACS系统的影像调阅和传输 新增 pacs_integration_config 表
结构化检查报告 结构化报告模板+报告填写 复用 DocTemplate + 新增 report_data 字段
检查报告模板 按检查类型预设的报告模板 扩展 CheckType 增加模板关联
预约排队叫号 检查预约的排队叫号管理 新增 exam_queue 表
影像AI辅助 AI辅助诊断标注和辅助报告 新增 ai_assist_record 表

业务流程

检查全流程:
  医生开立检查 → 生成申请单 → 患者预约
     → 排队叫号 → 检查执行(影像采集)
     → 影像上传(PACS) → 影像诊断(报告)
     → 报告审核 → 报告发布 → 临床查看

结构化报告:
  选择报告模板 → 系统预填充(患者信息/检查所见)
     → 医师逐项填写 → AI辅助建议
     → 生成报告 → 审核签发

数据库设计

-- V2026_0626__check_enhancement.sql
CREATE TABLE pacs_integration_config (
  id BIGSERIAL PRIMARY KEY,
  config_name VARCHAR(100) NOT NULL,
  pacs_url VARCHAR(500),
  pacs_type VARCHAR(30),
  auth_config TEXT,
  enabled CHAR(1) DEFAULT '1',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE exam_queue (
  id BIGSERIAL PRIMARY KEY,
  appointment_id BIGINT NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  queue_no VARCHAR(20) NOT NULL,
  queue_date DATE NOT NULL,
  queue_status VARCHAR(20) DEFAULT 'WAITING',
  call_time TIMESTAMP,
  complete_time TIMESTAMP,
  exam_room VARCHAR(50),
  operator_id BIGINT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE ai_assist_record (
  id BIGSERIAL PRIMARY KEY,
  image_report_id BIGINT NOT NULL,
  ai_model VARCHAR(50),
  ai_version VARCHAR(20),
  input_data TEXT,
  output_data TEXT,
  confidence DECIMAL(5,4),
  assist_result TEXT,
  used_by BIGINT,
  used_by_name VARCHAR(50),
  use_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/exam/queue/today               今日排队列表
POST   /healthlink-his/api/v1/exam/queue/call/{id}           叫号
PUT    /healthlink-his/api/v1/exam/queue/start/{id}          开始检查
PUT    /healthlink-his/api/v1/exam/queue/complete/{id}       完成检查

POST   /healthlink-his/api/v1/radiology/ai-assist            AI辅助诊断
GET    /healthlink-his/api/v1/radiology/ai-assist/{reportId} AI辅助结果

GET    /healthlink-his/api/v1/pacs/config/page               PACS配置分页
POST   /healthlink-his/api/v1/pacs/config                    保存配置
POST   /healthlink-his/api/v1/pacs/image/view/{studyUid}     PACS影像调阅

前端页面设计

页面 路径 类型 说明
排队叫号 inspection/ExamQueue.vue 新建 实时排队列表+叫号+状态
PACS配置 inspection/PacsConfig.vue 新建 PACS系统集成配置
AI辅助 inspection/AiAssist.vue 新建 AI辅助诊断结果展示

关键业务规则

  1. 急诊检查30分钟内出报告
  2. 普通检查24小时内出报告
  3. 影像诊断报告必须由执业医师签发
  4. 紧急报告立即通知临床并记录通知时间
  5. AI辅助结果仅供参考最终诊断由医师确认

9. 放射增强radiologyenhanced

已有代码分析

后端功能全部在 check 模块中实现RadiologyEnhancedController/RadiologyImageController/RadiologyComparisonController前端有:

  • radiologyenhanced/ 1 vue
  • radiologycomparison/ 1 vue

已有功能: 紧急报告管理、放射统计、影像对比。

缺失功能清单

功能 描述 实现方式
结构化影像报告 按部位的结构化报告模板+智能填充 扩展 doc_template 增加影像报告模板
影像后处理 MPR/MIP/VR等后处理功能调用 前端集成 Cornerstone.js
随访管理 影像随访计划和提醒 新增 radiology_followup 表

数据库设计

-- V2026_0627__radiology_enhancement.sql
CREATE TABLE radiology_followup (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  image_report_id BIGINT,
  followup_type VARCHAR(30) NOT NULL,
  followup_reason TEXT,
  planned_date DATE NOT NULL,
  actual_date DATE,
  status VARCHAR(20) DEFAULT 'PLANNED',
  reminder_sent CHAR(1) DEFAULT '0',
  result_report_id BIGINT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/radiology/followup/page          随访分页
POST   /healthlink-his/api/v1/radiology/followup               创建随访
GET    /healthlink-his/api/v1/radiology/followup/pending       待随访列表
POST   /healthlink-his/api/v1/radiology/followup/complete/{id} 完成随访

前端页面设计

页面 路径 类型 说明
影像随访 radiologyenhanced/Followup.vue 新建 随访计划管理+提醒

关键业务规则

  1. 影像随访计划基于检查结果自动生成
  2. 随访提醒在计划日期前3天发送
  3. 随访结果必须关联新的影像报告

10. 收费/计费chargemanage + paymentmanage + inhospitalcharge

已有代码分析

chargemanage paymentmanage inhospitalcharge
Controller 5 (OutpatientCharge/InpatientCharge/OutpatientRegistration/OutpatientRefund/OutpatientPricing) 5 (ThreePartPay/PaymentReconciliation/PaymentContract/EleInvoice/ChargeBill) 2 (InHospitalRegister/AdvancePaymentManage)
AppService 5 5 2
前端 charge/ 18 vue, outpatientFinance/ 1 vue (含在charge中) (含在charge中)

已有功能: 门诊/住院收费、挂号收费、退费、三方支付(签到/签退/支付/查询)、支付对账(预冲正/冲正/收费/查询)、合同管理、电子发票(开票/重开/作废/查看)、费用明细/汇总、住院登记、预交金管理。

缺失功能清单

功能 描述 实现方式
票据打印管理 收据打印、补打、作废记录 新增 billing_receipt_record 表
费用日报 每日收费汇总报表 新增 billing_daily_report 表
退费审核流程 大额退费需审批 新增 billing_refund_approval 表
费用对账 HIS与医保/第三方对账 扩展 payment_reconciliation 增加状态追踪
住院一日清单 住院患者每日费用明细推送 新增 billing_daily_detail 表

业务流程

退费审核流程:
  退费申请 → 系统校验(是否已结算/是否在退费期限内)
     → 金额≤1000 → 直接退费
     → 金额>1000 → 科室主任审批 → 财务审批
     → 退费执行 → 原路退款

住院一日清单:
  每日定时任务 → 汇总当日费用明细
     → 生成一日清单 → 推送至患者/家属
     → 可打印/查看

数据库设计

-- V2026_0628__billing_enhancement.sql
CREATE TABLE billing_receipt_record (
  id BIGSERIAL PRIMARY KEY,
  receipt_no VARCHAR(50) NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  receipt_type VARCHAR(20) NOT NULL,
  amount DECIMAL(12,2) NOT NULL,
  print_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  print_by BIGINT,
  print_by_name VARCHAR(50),
  void_status VARCHAR(20) DEFAULT 'VALID',
  void_time TIMESTAMP,
  void_by BIGINT,
  void_reason TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE billing_refund_approval (
  id BIGSERIAL PRIMARY KEY,
  refund_amount DECIMAL(12,2) NOT NULL,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  charge_item_ids TEXT,
  refund_reason TEXT,
  applicant_id BIGINT,
  applicant_name VARCHAR(50),
  apply_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  approval_level INTEGER DEFAULT 1,
  approver_id BIGINT,
  approver_name VARCHAR(50),
  approve_time TIMESTAMP,
  approval_result VARCHAR(20),
  approval_remark TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE billing_daily_detail (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  bill_date DATE NOT NULL,
  total_amount DECIMAL(12,2),
  self_pay_amount DECIMAL(12,2),
  insurance_amount DECIMAL(12,2),
  item_count INTEGER,
  detail_data TEXT,
  generated_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/billing/refund/approval/page        退费审批分页
POST   /healthlink-his/api/v1/billing/refund/approval/submit      提交审批
POST   /healthlink-his/api/v1/billing/refund/approval/approve/{id} 审批

GET    /healthlink-his/api/v1/billing/daily-detail/{encounterId}  一日清单查询
POST   /healthlink-his/api/v1/billing/daily-detail/generate       生成一日清单

GET    /healthlink-his/api/v1/billing/receipt/page                票据记录分页
PUT    /healthlink-his/api/v1/billing/receipt/void/{id}           票据作废

前端页面设计

页面 路径 类型 说明
退费审批 charge/RefundApproval.vue 新建 退费审批列表+审批表单
一日清单 charge/DailyDetail.vue 新建 患者每日费用明细
票据管理 charge/ReceiptManage.vue 新建 票据记录+补打+作废

关键业务规则

  1. 退费金额>1000元需两级审批(科室+财务)
  2. 住院一日清单每日自动生成,支持在线查看和打印
  3. 票据作废需记录原因,作废后不可恢复
  4. 三方支付退费必须原路退回
  5. 对账差异>0.01元需人工核实

11. 挂号appointmentmanage

已有代码分析

appointmentmanage
Controller 7 (Ticket/ScheduleSlot(空)/SchedulePool/DoctorSchedule/Dept/DeptAppthours/ClinicRoom)
AppService 8
前端 appoinmentmanage/ 5 vue, appointmentmanage/ 1 vue

已有功能: 号源管理(查询/预约/取消/取签到/停诊)、医生排班(CRUD+今日排班)、号源池管理、科室管理、预约工作时间、诊室管理。

缺失功能清单

功能 描述 实现方式
排队叫号 现场挂号排队叫号系统 新增 registration_queue 表
爽约管理 爽约记录+黑名单管理 新增 registration_no_show 表
分时段预约 按时间段细分预约时段 复用 ScheduleSlot目前为空Controller
挂号统计 按科室/医生/时段的挂号量统计 复用现有数据,增加统计接口
预约提醒 预约前一天短信/微信提醒 新增 appointment_reminder 表

业务流程

预约挂号流程:
  选择科室/医生/日期/时段 → 选择号源 → 确认预约
     → 预约成功(生成预约号) → 发送预约提醒(D-1)
     → 患者到院 → 取号签到 → 排队等候 → 叫号就诊

现场挂号流程:
  选择科室 → 选择医生 → 确认挂号
     → 缴费(挂号费) → 生成排队号 → 排队叫号

数据库设计

-- V2026_0629__appointment_enhancement.sql
CREATE TABLE registration_queue (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  queue_date DATE NOT NULL,
  queue_no VARCHAR(20) NOT NULL,
  queue_type VARCHAR(20) NOT NULL,
  dept_id BIGINT,
  doctor_id BIGINT,
  queue_status VARCHAR(20) DEFAULT 'WAITING',
  call_time TIMESTAMP,
  call_count INTEGER DEFAULT 0,
  complete_time TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE registration_no_show (
  id BIGSERIAL PRIMARY KEY,
  patient_id BIGINT NOT NULL,
  appointment_id BIGINT,
  no_show_date DATE NOT NULL,
  reason VARCHAR(50),
  blacklisted CHAR(1) DEFAULT '0',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE appointment_reminder (
  id BIGSERIAL PRIMARY KEY,
  appointment_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  reminder_type VARCHAR(20) NOT NULL,
  reminder_time TIMESTAMP NOT NULL,
  reminder_content TEXT,
  send_status VARCHAR(20) DEFAULT 'PENDING',
  send_time TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/appointment/queue/today                今日排队列表
POST   /healthlink-his/api/v1/appointment/queue/call                 叫号
PUT    /healthlink-his/api/v1/appointment/queue/complete/{id}        就诊完成
GET    /healthlink-his/api/v1/appointment/queue/stats                排队统计

POST   /healthlink-his/api/v1/appointment/no-show/record             爽约记录
GET    /healthlink-his/api/v1/appointment/no-show/page               爽约分页

GET    /healthlink-his/api/v1/appointment/statistics                 挂号统计

前端页面设计

页面 路径 类型 说明
排队叫号 appoinmentmanage/QueueCall.vue 新建 实时排队列表+叫号按钮
爽约管理 appoinmentmanage/NoShow.vue 新建 爽约记录+黑名单
挂号统计 appoinmentmanage/Statistics.vue 新建 统计图表

关键业务规则

  1. 爽约3次自动进入黑名单限制预约
  2. 叫号3次未到自动跳过
  3. 预约提醒在就诊前1天发送
  4. 同一患者同一医生每天只能挂1个号

12. 门诊outpatientmanage

已有代码分析

outpatientmanage
Controller 3 (OutpatientTreatment/OutpatientSkinTestApp/OutpatientInfusion)
AppService 3
前端 outpatientenhanced/ 1 vue

已有功能: 门诊处置(执行/取消)、皮试记录(CRUD)、门诊输液(患者列表/待执行/执行/撤销)。

缺失功能清单

功能 描述 实现方式
门诊病历 门诊病历的书写和查看 复用 document 模块的 DocRecord
随访管理 门诊患者随访计划和执行 新增 outpatient_followup 表
复诊提醒 慢病患者复诊自动提醒 新增 outpatient_reminder 表
门诊处方点评 处方合理性点评和统计 新增 outpatient_prescription_review 表

业务流程

门诊处置流程:
  护士站查询处置单 → 扫码核对患者 → 执行处置
     → 记录执行结果 → 标记完成

随访流程:
  出院/门诊结束 → 生成随访计划 → 按计划提醒
     → 电话/短信随访 → 记录随访结果 → 统计分析

数据库设计

-- V2026_0630__outpatient_enhancement.sql
CREATE TABLE outpatient_followup (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT,
  patient_id BIGINT NOT NULL,
  doctor_id BIGINT,
  doctor_name VARCHAR(50),
  followup_type VARCHAR(30) NOT NULL,
  followup_reason TEXT,
  planned_date DATE NOT NULL,
  actual_date DATE,
  status VARCHAR(20) DEFAULT 'PLANNED',
  followup_result TEXT,
  followup_by BIGINT,
  followup_by_name VARCHAR(50),
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE outpatient_reminder (
  id BIGSERIAL PRIMARY KEY,
  patient_id BIGINT NOT NULL,
  encounter_id BIGINT,
  reminder_type VARCHAR(30) NOT NULL,
  reminder_content TEXT,
  remind_date DATE NOT NULL,
  send_status VARCHAR(20) DEFAULT 'PENDING',
  send_time TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/outpatient/followup/page          随访分页
POST   /healthlink-his/api/v1/outpatient/followup               创建随访
POST   /healthlink-his/api/v1/outpatient/followup/complete/{id} 完成随访
GET    /healthlink-his/api/v1/outpatient/followup/pending       待随访列表

GET    /healthlink-his/api/v1/outpatient/reminder/pending       待提醒列表
POST   /healthlink-his/api/v1/outpatient/reminder/generate      生成提醒

前端页面设计

页面 路径 类型 说明
随访管理 outpatientenhanced/Followup.vue 新建 随访计划+执行+统计
复诊提醒 outpatientenhanced/Reminder.vue 新建 提醒列表+发送

关键业务规则

  1. 慢病患者每次就诊后自动生成随访计划
  2. 随访提醒通过短信/微信推送
  3. 随访完成率纳入科室考核

13. 住院入出转inpatientmanage

已有代码分析

inpatientmanage
Controller 5 (NursingVitalSignsChart/VitalSigns/PatientHome/NursingRecord/Deposit)
AppService 4
前端 inHospitalManagement/ 43 vue

已有功能: 三测单(体温单)管理、生命体征记录、患者首页(入院/转床/转科/出院)、护理记录单(CRUD+模板)、预交金管理。

缺失功能清单

功能 描述 实现方式
预住院管理 预住院登记、检查、正式入院转归 新增 pre_admission 表
出院小结 出院小结自动生成和填写 复用 document 模块的 DischargeSummary
转院管理 转院申请、审批、执行 新增 transfer_record 表
死亡登记 死亡病例登记和报告 新增 death_register 表
入院评估 入院护理评估(生活自理能力/营养/心理) 复用 nurse_assessment模块6

业务流程

预住院流程:
  预住院登记 → 术前检查 → 检查结果审核
     → 确认入院 → 分配床位 → 正式入院
     → 预住院费用转入住院费用

出院流程:
  医生开立出院医嘱 → 护士核对(药品/费用/物品)
     → 出院宣教 → 结算出院 → 出院小结
     → 病案归档 → 随访计划

转院流程:
  转院申请(转出科室) → 接收医院确认 → 审批
     → 转院准备(病历/药品/物品) → 转院执行
     → 转出登记 → 接收确认

数据库设计

-- V2026_0631__inpatient_enhancement.sql
CREATE TABLE pre_admission (
  id BIGSERIAL PRIMARY KEY,
  patient_id BIGINT NOT NULL,
  expected_dept_id BIGINT,
  expected_doctor_id BIGINT,
  expected_diagnosis TEXT,
  admission_reason TEXT,
  pre_admission_status VARCHAR(20) DEFAULT 'PENDING',
  register_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  register_by BIGINT,
  register_by_name VARCHAR(50),
  admission_time TIMESTAMP,
  admission_encounter_id BIGINT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE transfer_record (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  transfer_type VARCHAR(20) NOT NULL,
  from_dept_id BIGINT,
  from_dept_name VARCHAR(100),
  to_dept_id BIGINT,
  to_dept_name VARCHAR(100),
  to_hospital_name VARCHAR(200),
  transfer_reason TEXT,
  transfer_time TIMESTAMP,
  transfer_by BIGINT,
  transfer_by_name VARCHAR(50),
  receive_by BIGINT,
  receive_by_name VARCHAR(50),
  status VARCHAR(20) DEFAULT 'PENDING',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE death_register (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  death_time TIMESTAMP NOT NULL,
  death_cause TEXT,
  death_certificate_no VARCHAR(50),
  reporter_id BIGINT,
  reporter_name VARCHAR(50),
  report_time TIMESTAMP,
  status VARCHAR(20) DEFAULT 'REPORTED',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

API接口设计

POST   /healthlink-his/api/v1/inpatient/pre-admission            预住院登记
GET    /healthlink-his/api/v1/inpatient/pre-admission/page       预住院分页
PUT    /healthlink-his/api/v1/inpatient/pre-admission/admit/{id} 确认入院

POST   /healthlink-his/api/v1/inpatient/transfer/apply           转院申请
GET    /healthlink-his/api/v1/inpatient/transfer/page            转院分页
PUT    /healthlink-his/api/v1/inpatient/transfer/approve/{id}    转院审批
PUT    /healthlink-his/api/v1/inpatient/transfer/execute/{id}    转院执行

POST   /healthlink-his/api/v1/inpatient/death-register           死亡登记
GET    /healthlink-his/api/v1/inpatient/death-register/page      死亡登记分页

前端页面设计

页面 路径 类型 说明
预住院 inHospitalManagement/PreAdmission.vue 新建 预住院登记+检查+入院转归
转院管理 inHospitalManagement/Transfer.vue 新建 转院申请+审批+执行
死亡登记 inHospitalManagement/DeathRegister.vue 新建 死亡登记表单+查询

关键业务规则

  1. 预住院期间的检查费用在正式入院时转入住院费用
  2. 转院必须经科室主任审批
  3. 死亡病例必须在24小时内完成死亡登记
  4. 死亡病例必须进行死亡讨论(复用 mrhomepage 模块)
  5. 出院后48小时内完成出院小结

14. 医保ybmanage

已有代码分析

ybmanage
Controller 3 (YbController 1065行/YbInpatientController/YbElepController)
Service 3 (IYbService/IYbEleHttpService/IYbEleBaseService)
Mapper 2
DTO 28+
前端 ybmanagement/ 15 vue

已有功能: 医保签到/人员信息/慢病/目录对照(3301/3302)/对总账(3201)/对明细账(3202)/清算(3203A-3205A)/商品管理(3501-3507)/结算清单(4101A)/事前事中(3101/3103)/门诊退费(2208)/冲正(2601)/费用明细(2204)/住院登记(2401-2403)/住院出院/病案上传/电子处方全生命周期。

缺失功能清单

功能 描述 实现方式
对账明细增强 对账差异自动标记和处理 新增 yb_reconcile_detail_enhance 表
DRG预警 医保DRG分组异常预警和CMI监控 新增 yb_drg_alert 表
医保目录同步 定期同步医保目录更新 新增 yb_catalog_sync_log 表
医保费用监控 实时监控医保费用占比和异常 复用现有数据,增加统计接口

数据库设计

-- V2026_0632__yb_enhancement.sql
CREATE TABLE yb_drg_alert (
  id BIGSERIAL PRIMARY KEY,
  encounter_id BIGINT NOT NULL,
  patient_id BIGINT NOT NULL,
  alert_type VARCHAR(30) NOT NULL,
  alert_level VARCHAR(10) DEFAULT 'WARNING',
  drg_code VARCHAR(20),
  drg_name VARCHAR(100),
  cmi_value DECIMAL(6,3),
  expected_cmi DECIMAL(6,3),
  alert_detail TEXT,
  alert_status VARCHAR(20) DEFAULT 'OPEN',
  handler_id BIGINT,
  handler_name VARCHAR(50),
  handle_time TIMESTAMP,
  handle_result TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE yb_catalog_sync_log (
  id BIGSERIAL PRIMARY KEY,
  sync_type VARCHAR(30) NOT NULL,
  sync_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  sync_status VARCHAR(20) DEFAULT 'PENDING',
  total_count INTEGER DEFAULT 0,
  success_count INTEGER DEFAULT 0,
  fail_count INTEGER DEFAULT 0,
  error_msg TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/yb/drg-alert/page              DRG预警分页
POST   /healthlink-his/api/v1/yb/drg-alert/handle            处理预警
GET    /healthlink-his/api/v1/yb/drg-alert/stats             预警统计

POST   /healthlink-his/api/v1/yb/catalog-sync/trigger         触发目录同步
GET    /healthlink-his/api/v1/yb/catalog-sync/log             同步日志

GET    /healthlink-his/api/v1/yb/fee-monitor/stats            费用监控统计
GET    /healthlink-his/api/v1/yb/fee-monitor/abnormal         异常费用列表

前端页面设计

页面 路径 类型 说明
DRG预警 ybmanagement/DrgAlert.vue 新建 预警列表+处理+统计
费用监控 ybmanagement/FeeMonitor.vue 新建 实时费用监控+异常告警

关键业务规则

  1. DRG分组后自动检查CMI值偏差>20%预警
  2. 医保目录每月自动同步,有更新时通知
  3. 医保费用占比超过85%自动预警
  4. 异常费用必须48小时内处理

15. 系统管理system

已有代码分析

system
Controller 5 (DataExport/SysAuditLog/Dashboard/ApiAuth/Home)
前端 system/ 20 vue, monitor/ 9 vue

已有功能: 通用Excel/PDF导出、审计日志(CRUD)、仪表盘配置(CRUD+概览)、API认证管理、首页统计。

缺失功能清单

功能 描述 实现方式
系统参数配置 全局参数管理(可热更新) 新增 sys_config 表
消息通知 站内消息/短信/微信通知 新增 sys_notification 表
定时任务管理 可视化管理Quartz定时任务 新增 sys_scheduled_job 表
操作日志增强 增加请求/响应体记录 扩展 audit_log 增加字段

数据库设计

-- V2026_0633__system_enhancement.sql
CREATE TABLE sys_config (
  id BIGSERIAL PRIMARY KEY,
  config_group VARCHAR(50) NOT NULL,
  config_key VARCHAR(100) NOT NULL,
  config_value TEXT,
  config_type VARCHAR(10) DEFAULT 'STRING',
  description VARCHAR(200),
  enabled CHAR(1) DEFAULT '1',
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE sys_notification (
  id BIGSERIAL PRIMARY KEY,
  title VARCHAR(200) NOT NULL,
  content TEXT,
  notification_type VARCHAR(30) NOT NULL,
  sender_id BIGINT,
  sender_name VARCHAR(50),
  receiver_id BIGINT,
  receiver_name VARCHAR(50),
  send_channel VARCHAR(20) DEFAULT 'SYSTEM',
  send_status VARCHAR(20) DEFAULT 'PENDING',
  read_status VARCHAR(20) DEFAULT 'UNREAD',
  read_time TIMESTAMP,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

CREATE TABLE sys_scheduled_job (
  id BIGSERIAL PRIMARY KEY,
  job_name VARCHAR(100) NOT NULL,
  job_group VARCHAR(50) DEFAULT 'DEFAULT',
  invoke_target TEXT NOT NULL,
  cron_expression VARCHAR(100) NOT NULL,
  misfire_policy VARCHAR(20) DEFAULT 'DO_NOTHING',
  concurrent CHAR(1) DEFAULT '0',
  enabled CHAR(1) DEFAULT '1',
  last_run_time TIMESTAMP,
  next_run_time TIMESTAMP,
  run_count INTEGER DEFAULT 0,
  description VARCHAR(200),
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/system/config/page             参数分页
GET    /healthlink-his/api/v1/system/config/group/{group}    按组查询
POST   /healthlink-his/api/v1/system/config                  保存参数
DELETE /healthlink-his/api/v1/system/config/{id}             删除参数

GET    /healthlink-his/api/v1/system/notification/page       消息分页
GET    /healthlink-his/api/v1/system/notification/unread     未读消息
POST   /healthlink-his/api/v1/system/notification/read/{id}  标记已读
POST   /healthlink-his/api/v1/system/notification/read-all   全部已读

GET    /healthlink-his/api/v1/system/scheduled-job/page      定时任务分页
POST   /healthlink-his/api/v1/system/scheduled-job           保存任务
PUT    /healthlink-his/api/v1/system/scheduled-job/{id}      更新任务
PUT    /healthlink-his/api/v1/system/scheduled-job/pause/{id}  暂停
PUT    /healthlink-his/api/v1/system/scheduled-job/resume/{id} 恢复

前端页面设计

页面 路径 类型 说明
参数配置 system/SysConfig.vue 新建 参数分组+CRUD
消息中心 system/Notification.vue 新建 消息列表+已读/未读
定时任务 system/ScheduledJob.vue 新建 任务CRUD+暂停/恢复+执行日志

关键业务规则

  1. 系统参数修改立即生效(热更新)
  2. 定时任务支持Cron表达式配置
  3. 消息通知支持站内消息+短信+微信
  4. 操作日志保留至少180天

16. 字典/基础数据datadictionary + basedatamanage

已有代码分析

datadictionary basedatamanage
Controller 7 (Supplier/Medication/ItemDefinition/ICDCode/Disease/DiagnosisTreatment/Device) 8 (PractitionerRole/Practitioner/OrganizationLocation/Organization/OperatingRoom/Location/Frequency/BodyStructure)
AppService 8 7
前端 basicmanage/ 39 vue, catalog/ 13 vue, drug/ 7 vue

已有功能: 供应商/药品目录/项目定价/ICD-10/病种/诊疗目录/器材目录管理(全部CRUD+导入导出)、岗位/参与者/机构/位置/手术室/频次/身体部位管理。

缺失功能清单

功能 描述 实现方式
数据版本管理 字典数据变更版本追踪 新增 dict_change_log 表
批量导入校验 导入时的数据校验和错误反馈 扩展现有导入功能增加校验
数据导出审计 字典导出操作审计 复用 audit_log
字典数据对比 两套字典数据差异对比 新增 dict_diff 表

数据库设计

-- V2026_0634__dict_enhancement.sql
CREATE TABLE dict_change_log (
  id BIGSERIAL PRIMARY KEY,
  dict_type VARCHAR(50) NOT NULL,
  dict_code VARCHAR(50),
  change_type VARCHAR(20) NOT NULL,
  old_value TEXT,
  new_value TEXT,
  change_by BIGINT,
  change_by_name VARCHAR(50),
  change_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  change_reason TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/dict/change-log/page             变更日志分页
GET    /healthlink-his/api/v1/dict/change-log/type/{dictType}  按类型查询

POST   /healthlink-his/api/v1/dict/import/validate             导入校验
GET    /healthlink-his/api/v1/dict/import/validate/{taskId}    校验结果

前端页面设计

页面 路径 类型 说明
变更日志 basicmanage/ChangeLog.vue 新建 变更历史+对比视图

关键业务规则

  1. 字典数据变更必须记录操作日志
  2. 已被引用的字典数据不可删除,只能停用
  3. 批量导入必须先校验再导入
  4. 字典编码全局唯一

17. 电子签名ca

已有代码分析

ca
Controller 1 (CaSignatureController)
AppService 1 (ICaSignatureAppService)
前端 casignature/ 3 vue

已有功能: 签名、验证签名、签名历史、撤销签名、签名统计。

缺失功能清单

功能 描述 实现方式
签名模板 常用签名模板管理 新增 ca_signature_template 表
批量签名 批量签署多份文书 扩展签名接口支持批量
签名验证增强 验证签名完整性和时间戳 复用现有功能,增加验证维度
签名日志 签名操作详细日志 新增 ca_signature_log 表

数据库设计

-- V2026_0635__ca_enhancement.sql
CREATE TABLE ca_signature_template (
  id BIGSERIAL PRIMARY KEY,
  template_name VARCHAR(100) NOT NULL,
  document_type VARCHAR(50) NOT NULL,
  signature_config TEXT,
  is_default CHAR(1) DEFAULT '0',
  enabled CHAR(1) DEFAULT '1',
  created_by BIGINT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64),
  update_time TIMESTAMP,
  update_by VARCHAR(64)
);

CREATE TABLE ca_signature_log (
  id BIGSERIAL PRIMARY KEY,
  signature_id BIGINT NOT NULL,
  action VARCHAR(30) NOT NULL,
  document_type VARCHAR(50),
  document_id BIGINT,
  signer_id BIGINT,
  signer_name VARCHAR(50),
  action_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  action_result VARCHAR(20),
  ip_address VARCHAR(50),
  user_agent TEXT,
  del_flag CHAR(1) DEFAULT '0',
  create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  create_by VARCHAR(64)
);

API接口设计

GET    /healthlink-his/api/v1/ca-signature/template/page          模板分页
POST   /healthlink-his/api/v1/ca-signature/template               保存模板
DELETE /healthlink-his/api/v1/ca-signature/template/{id}          删除模板

POST   /healthlink-his/api/v1/ca-signature/batch-sign             批量签名
GET    /healthlink-his/api/v1/ca-signature/log/{documentType}/{documentId} 签名日志

前端页面设计

页面 路径 类型 说明
签名模板 casignature/SignatureTemplate.vue 新建 模板CRUD

关键业务规则

  1. 签名后文书不可篡改
  2. 签名操作必须记录IP和设备信息
  3. 批量签名最多100份/次
  4. 签名证书到期前30天提醒更新

附录Flyway迁移文件清单

文件名 模块 说明
V2026_0618__blood_transfusion_record.sql 住院医生站 输血管理表
V2026_0619__clinical_pathway_execution_enhancement.sql 住院医生站 临床路径+危急值处理
V2026_0620__anesthesia_enhancement.sql 手术麻醉 ASA评估+术前访视+麻醉小结+事件+PACU
V2026_0621__emr_version_and_rules.sql 电子病历 版本管理+规则+质量评分+锁定
V2026_0622__mr_management_enhancement.sql 病案管理 终末质控+HQMS+DRG预警+规则
V2026_0623__pharmacy_safety_enhancement.sql 药品管理 交互检查+处方审核+用药提醒
V2026_0624__nursing_enhancement.sql 护士站 评估+任务+交接班+护理计划
V2026_0625__lab_enhancement.sql 检验 自动审核规则+报告模板
V2026_0626__check_enhancement.sql 检查/影像 PACS+排队+AI辅助
V2026_0627__radiology_enhancement.sql 放射增强 影像随访
V2026_0628__billing_enhancement.sql 收费/计费 票据+退费审批+一日清单
V2026_0629__appointment_enhancement.sql 挂号 排队+爽约+提醒
V2026_0630__outpatient_enhancement.sql 门诊 随访+提醒
V2026_0631__inpatient_enhancement.sql 住院入出转 预住院+转院+死亡登记
V2026_0632__yb_enhancement.sql 医保 DRG预警+目录同步
V2026_0633__system_enhancement.sql 系统管理 参数+通知+定时任务
V2026_0634__dict_enhancement.sql 字典/基础数据 变更日志
V2026_0635__ca_enhancement.sql 电子签名 模板+日志