diff --git a/docs/compose/plans/2026-06-17-grade3a-implementation.md b/docs/compose/plans/2026-06-17-grade3a-implementation.md new file mode 100644 index 000000000..77086ce06 --- /dev/null +++ b/docs/compose/plans/2026-06-17-grade3a-implementation.md @@ -0,0 +1,676 @@ +# HealthLink-HIS 三甲达标完整实施计划 + +> **For agentic workers:** REQUIRED SUB-SKILL: Use compose:subagent (recommended) or compose:execute to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. + +**Goal:** 将 HealthLink-HIS 从当前 53% 完成率提升至 100%,满足三甲医院评审全部 142 项必备能力 + +**Architecture:** 4 Phase 递进式实施 — P0核心达标 → P1评审保障 → P2空壳补全 → P3地方特色。每个 Phase 独立可交付,Phase 间有依赖关系。 + +**Tech Stack:** Spring Boot 4.0.6 + JDK 25 + MyBatis-Plus 3.5.16 + Vue 3 + Vite + Element Plus + PostgreSQL 15+ + Flyway + +--- + +## 0. 项目概况 + +### 0.1 当前状态(代码审计 2026-06-17) + +| 维度 | 数值 | 说明 | +|------|:----:|------| +| 后端模块 | 74个 | 12个完整 + 13个部分 + 9个骨架 + 25个最小 + 15个微小 | +| 前端模块 | 89个 | 653个.vue文件,~130个空壳 | +| 数据库表 | 293个实体 | 149个Flyway迁移 + 144个基线表 | +| Java代码 | ~160,000行 | 核心业务流程6条已贯通 | +| Vue代码 | ~342,000行 | 大型模块已实现 | + +### 0.2 142项能力完成度 + +| 模块 | 必备能力 | ✅已实现 | ⚠️基础 | ❌缺失 | 完成率 | +|------|:-------:|:-------:|:------:|:------:|:-----:| +| 门诊医生站 | 10 | 7 | 2 | 1 | 80% | +| 住院医生站 | 10 | 4 | 2 | 4 | 50% | +| 护士站 | 10 | 5 | 2 | 3 | 60% | +| 合理用药 | 12 | 10 | 1 | 1 | 83% | +| 手术麻醉 | 12 | 6 | 2 | 4 | 58% | +| 检验(LIS) | 10 | 5 | 2 | 3 | 60% | +| 检查(PACS) | 10 | 3 | 3 | 4 | 45% | +| 电子病历 | 10 | 4 | 2 | 4 | 50% | +| 病案管理 | 10 | 2 | 3 | 5 | 35% | +| 院感管理 | 10 | 3 | 1 | 6 | 35% | +| 护理评估 | 10 | 4 | 3 | 3 | 55% | +| ESB集成 | 10 | 0 | 4 | 6 | 20% | +| EMPI | 8 | 2 | 3 | 3 | 38% | +| 统计报表 | 10 | 4 | 1 | 5 | 45% | +| **合计** | **142** | **59** | **31** | **52** | **53%** | + +### 0.3 代码审计关键发现 + +| 发现 | 严重度 | 影响 | 修复策略 | +|------|:------:|------|---------| +| YbController 1065行God Controller | 🔴 | 维护困难,内联硬编码 | 拆分为3个Controller | +| 207+端点无@PreAuthorize | 🔴 | 无RBAC权限控制 | 全局添加权限注解 | +| inspection/ 10个vue全无script | 🟡 | PACS前端空壳 | 需实现全部页面 | +| medicationmanagement/ 57个空壳 | 🟡 | 药品管理前端缺逻辑 | 需补全业务逻辑 | +| NursingVitalSignsChartController 违反分层 | 🟡 | Controller直接查数据库 | 迁移到AppService | +| ScheduleSlotController 死代码 | 🟡 | 占用路由无功能 | 删除或实现 | +| 3个orphan Flyway表无entity | 🟡 | 数据库有表无Java映射 | 创建entity或删除表 | + +--- + +## 1. Phase 1: P0核心达标(Sprint 1-5,5周) + +> **目标**: 补齐三甲硬性缺失能力,电子病历4级核心就绪 +> **详细设计**: `MD/design/PHASE1_CORE_DESIGN.md`(78KB) + +### Sprint 1: 住院医生站闭环(Week 1) + +**依赖**: 无 +**交付物**: 医嘱执行闭环 + 输血管理 + 临床路径 + 危急值处理 + +- [ ] **T1.1: 医嘱执行闭环追踪** + - Files: `regdoctorstation/` 新增 `OrderClosedLoopController.java` + - DB: V38已建 `order_execute_record`/`order_execute_step`,补AppService逻辑 + - Frontend: `inpatientDoctor/` 新增 `OrderClosedLoop.vue` + - Test: 医嘱开立→执行→完成全链路状态流转 + - Commit: `feat(order): 医嘱执行闭环追踪` + +- [ ] **T1.2: 输血管理** + - Files: 新建 `bloodtransfusion/` 模块(Controller/AppService/Service/Mapper/Entity) + - DB: 新建 `blood_transfusion_record`/`blood_transfusion_observation` 表 + - Frontend: `inpatientDoctor/` 新增 `BloodTransfusion.vue` + - Test: 输血申请→审批→配血→输注→观察全流程 + - Commit: `feat(blood): 输血管理全流程` + +- [ ] **T1.3: 临床路径执行** + - Files: `clinical/` 已有 `ClinicalPathwayController.java` + - DB: V30已建 `clinical_pathway`/`clinical_pathway_execution`,补执行逻辑 + - Frontend: `inpatientDoctor/` 新增 `ClinicalPathway.vue` + - Test: 入径评估→路径执行→变异记录→出径 + - Commit: `feat(pathway): 临床路径执行管理` + +- [ ] **T1.4: 危急值处理记录** + - Files: `criticalvalue/` 已有 `CriticalValueController.java`(133行,需扩展) + - DB: V8已建 `critical_value` 表,补住院端处理入口 + - Frontend: `inpatientDoctor/` 新增 `CriticalValueHandle.vue` + - Test: 危急值通知→确认→处理→复查闭环 + - Commit: `feat(critical): 危急值住院端处理` + +- [ ] **T1.5: Sprint 1 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test -pl healthlink-his-application` + - 验证: 4个新接口返回 `{code:200, data:...}` + - Commit: `test: Sprint 1 验证通过` + +### Sprint 2: 手术麻醉系统(Week 2) + +**依赖**: Sprint 1 +**交付物**: 麻醉评估 + 术中记录 + 麻醉小结 + 术后随访 + +- [ ] **T2.1: 麻醉评估(ASA分级)** + - Files: `anesthesia/` 扩展 `AnesthesiaController.java` + - DB: V3已建 `anes_record`,新增 `anes_assessment` 表 + - Frontend: `anesthesia/` 新增 `AnesthesiaAssessment.vue` + - Test: ASA分级评估→气道评估→禁食确认→知情同意 + - Commit: `feat(anesthesia): ASA麻醉评估` + +- [ ] **T2.2: 术中生命体征(5min间隔)** + - Files: `anesthesia/` 新增 `AnesthesiaVitalSignController.java` + - DB: V3已建 `anes_vital_sign`,补自动采集逻辑 + - Frontend: `anesthesiaenhanced/` 新增 `IntraopVitalSign.vue` + - Test: 5分钟间隔生命体征记录+实时曲线 + - Commit: `feat(anesthesia): 术中生命体征监测` + +- [ ] **T2.3: 麻醉小结** + - Files: `anesthesia/` 新增 `AnesthesiaSummaryController.java` + - DB: 新建 `anes_summary` 表(麻醉总结+并发症) + - Frontend: `anesthesia/` 新增 `AnesthesiaSummary.vue` + - Test: 麻醉总结→并发症记录→归档 + - Commit: `feat(anesthesia): 麻醉小结` + +- [ ] **T2.4: 术后随访记录** + - Files: `anesthesia/` 扩展已有 `anes_postoperative_followup` 表 + - DB: V19已建 `anes_postoperative_followup`,补24h/48h/72h随访 + - Frontend: `anesthesiaenhanced/` 新增 `PostopFollowup.vue` + - Test: 术后24h/48h/72h随访+疼痛评估 + - Commit: `feat(anesthesia): 术后随访记录` + +- [ ] **T2.5: Sprint 2 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test -pl healthlink-his-application` + - 验证: 麻醉全流程4个新接口正常 + - Commit: `test: Sprint 2 验证通过` + +### Sprint 3: 电子病历增强(Week 3) + +**依赖**: Sprint 1 +**交付物**: 修改留痕 + 版本管理 + 完整性检查 + 时效监控 + +- [ ] **T3.1: 病历修改留痕** + - Files: `emr/` 扩展 `EmrController.java` + - DB: V5已建 `emr_revision`,补diff追踪逻辑 + - Frontend: `emr/` 新增 `EmrRevisionTrack.vue` + - Test: 修改病历→自动记录原文+修改人+时间+差异 + - Commit: `feat(emr): 病历修改留痕` + +- [ ] **T3.2: 病历版本管理** + - Files: `emr/` 扩展已有逻辑 + - DB: 扩展 `doc_emr` 增加 `version` 字段,V27已建 `emr_archive_record` + - Frontend: `emr/` 新增 `EmrVersionCompare.vue` + - Test: 历史版本保存+版本对比 + - Commit: `feat(emr): 病历版本管理` + +- [ ] **T3.3: 病历完整性检查** + - Files: `emr/` 扩展 `EmrController.java` + - DB: V5已建 `emr_completeness_check`,补自动校验逻辑 + - Frontend: `emr/` 新增 `EmrCompletenessCheck.vue` + - Test: 必填项+逻辑一致性自动检查 + - Commit: `feat(emr): 病历完整性检查` + +- [ ] **T3.4: 病历时效监控** + - Files: 新建 `emrtimeliness/` 模块 + - DB: V5已建 `emr_timeliness`,补超时提醒逻辑 + - Frontend: `emr/` 新增 `EmrTimelinessMonitor.vue` + - Test: 入院记录24h/首次病程8h/日常病程超时提醒 + - Commit: `feat(emr): 病历时效监控` + +- [ ] **T3.5: Sprint 3 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test -pl healthlink-his-application` + - 验证: 电子病历4个增强功能正常 + - Commit: `test: Sprint 3 验证通过` + +### Sprint 4: 病案管理(Week 4) + +**依赖**: Sprint 3 +**交付物**: 首页质控 + HQMS上报 + 终末质控 + 病案示踪 + 死亡讨论 + +- [ ] **T4.1: 病案首页数据质量校验** + - Files: `mrhomepage/` 扩展 `MrHomepageController.java` + - DB: V4已建 `mr_homepage`/`mr_homepage_quality_check`,补校验规则 + - Frontend: `mrhomepage/` 新增 `MrHomepageQualityCheck.vue` + - Test: 首页必填项+逻辑校验+ICD编码验证 + - Commit: `feat(mr): 病案首页质量校验` + +- [ ] **T4.2: 病案首页HQMS上报** + - Files: `mrhomepage/` 新增 `MrHomepageReportController.java` + - DB: 新建 `mr_hqms_report` 表 + - Frontend: `mrhomepage/` 新增 `MrHomepageReport.vue` + - Test: 首页数据→HQMS格式→上报→状态追踪 + - Commit: `feat(mr): HQMS首页上报` + +- [ ] **T4.3: 病案终末质控** + - Files: `quality/` 扩展 `EmrQualityController.java` + - DB: V11已建 `emr_defect`/`emr_quality_score`,补终末质控逻辑 + - Frontend: `quality/` 新增 `TerminalQualityCheck.vue` + - Test: 出院后质控评分→缺陷记录→整改跟踪 + - Commit: `feat(quality): 病案终末质控` + +- [ ] **T4.4: 病案示踪管理** + - Files: `mrhomepage/` 扩展已有逻辑 + - DB: V18已建 `mr_tracking`/`mr_borrowing`/`mr_sealing`,补状态追踪 + - Frontend: `hospitalRecord/` 新增 `MrTracking.vue` + - Test: 在架/借出/归档状态追踪+借阅审批 + - Commit: `feat(mr): 病案示踪管理` + +- [ ] **T4.5: 死亡病例讨论记录** + - Files: `mrhomepage/` 扩展已有逻辑 + - DB: V18已建 `mr_death_discussion`,补7日内完成提醒 + - Frontend: `hospitalRecord/` 新增 `DeathDiscussion.vue` + - Test: 死亡讨论记录→7日内完成提醒→归档 + - Commit: `feat(mr): 死亡病例讨论` + +- [ ] **T4.6: Sprint 4 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test -pl healthlink-his-application` + - 验证: 病案管理5个功能正常 + - Commit: `test: Sprint 4 验证通过` + +### Sprint 5: P0收尾 + Phase 1集成测试(Week 5) + +**依赖**: Sprint 1-4 +**交付物**: 合理用药增强 + 传染病报告 + 全链路集成测试 + +- [ ] **T5.1: 合理用药-肝肾功能自动调量** + - Files: `rationaldrug/` 扩展已有逻辑 + - DB: V2已建 `drug_dosage_range`,补肝肾功能调量规则 + - Frontend: `rationaldrug/` 实现已有空壳页面 + - Test: 肝肾功能化验结果→自动建议调量 + - Commit: `feat(rationaldrug): 肝肾功能自动调量` + +- [ ] **T5.2: 门诊传染病报告卡** + - Files: `epidemic/` 扩展已有逻辑 + - DB: 扩展已有表,补填报+审核流程 + - Frontend: `diseaseReportManagement/` 实现已有页面 + - Test: 传染病诊断→自动匹配→报卡填报→审核→上报 + - Commit: `feat(epidemic): 传染病报告卡` + +- [ ] **T5.3: Phase 1 全链路集成测试** + - Test: 住院全流程(入院→医嘱→执行→护理→出院→病案) + - Test: 门诊全流程(挂号→就诊→收费→发药) + - Test: 手术全流程(申请→排程→麻醉→手术→记录) + - 验证: 所有新接口返回正确状态 + - Commit: `test: Phase 1 全链路集成测试通过` + +- [ ] **T5.4: Phase 1 里程碑评审** + - 输出: 电子病历4级自评报告 + - 输出: Phase 1 完成度报告(17项→完成率评估) + - Commit: `docs: Phase 1 里程碑评审报告` + +--- + +## 2. Phase 2: P1评审保障(Sprint 6-10,5周) + +> **目标**: 补齐P1模块,三甲评审17项必测项全覆盖 +> **详细设计**: `MD/design/PHASE2_REVIEW_DESIGN.md`(40.5KB) + +### Sprint 6: 院感管理(Week 6) + +**依赖**: Phase 1完成 +**交付物**: 院感6项缺失能力 + +- [ ] **T6.1: 院感病例自动筛查** + - Files: `infection/` 扩展 `InfectionController.java` + - DB: V9已建 `hir_infection_case`,补规则引擎筛查逻辑 + - Frontend: `infection/` 实现筛查工作台 + - Test: 诊断+检验结果→自动匹配疑似病例 + - Commit: `feat(infection): 院感病例自动筛查` + +- [ ] **T6.2: 暴发预警** + - Files: `infection/` 扩展已有逻辑 + - DB: V17已建 `hir_outbreak_warning`,补预警算法 + - Frontend: `infection/` 新增预警仪表盘 + - Test: 同科室短时间多例感染→预警触发 + - Commit: `feat(infection): 暴发预警` + +- [ ] **T6.3: 目标性监测(ICU/手术部位)** + - Files: `infection/` 扩展已有逻辑 + - DB: V17已建 `hir_targeted_surveillance`,补ICU导管/手术部位监测 + - Frontend: `infection/` 新增目标监测页面 + - Test: ICU导管感染率/手术部位感染率统计 + - Commit: `feat(infection): 目标性监测` + +- [ ] **T6.4: 手卫生+环境+耐药菌** + - Files: `infection/` 扩展已有逻辑 + - DB: V17已建 `hir_hand_hygiene`/`hir_environmental_monitor`/`hir_multi_drug_resistant` + - Frontend: `infection/` 实现3个监测页面 + - Test: 手卫生依从性/环境监测/耐药菌跟踪 + - Commit: `feat(infection): 手卫生+环境+耐药菌监测` + +- [ ] **T6.5: Sprint 6 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test -pl healthlink-his-application` + - Commit: `test: Sprint 6 验证通过` + +### Sprint 7: 护理评估+护士站(Week 7) + +**依赖**: Sprint 6 +**交付物**: 护理3项缺失 + 护士站3项缺失 + +- [ ] **T7.1: 管道滑脱风险评估** + - Files: `nursing/` 扩展已有逻辑 + - DB: V26已建 `nursing_assessment_intervention`,补管道评估 + - Frontend: `nursingenhanced/` 新增管道评估页面 + - Test: 导管类型/位置/状态评估→风险分级 + - Commit: `feat(nursing): 管道滑脱风险评估` + +- [ ] **T7.2: 营养风险筛查NRS2002** + - Files: `nursing/` 扩展已有逻辑 + - DB: 扩展 `nursing_assessment` 表,补NRS2002量表 + - Frontend: `nursingenhanced/` 新增营养筛查页面 + - Test: NRS2002量表→自动评分→营养干预 + - Commit: `feat(nursing): 营养风险筛查` + +- [ ] **T7.3: 疼痛评估NRS/VAS** + - Files: `nursing/` 扩展已有逻辑 + - DB: 扩展 `nursing_assessment` 表,补NRS/VAS评分 + - Frontend: `nursingenhanced/` 新增疼痛评估页面 + - Test: NRS/VAS评分→干预→再评估 + - Commit: `feat(nursing): 疼痛评估` + +- [ ] **T7.4: 护理文书+质量指标+交接班** + - Files: `inhospitalnursestation/` 扩展已有逻辑 + - DB: V21已建 `nursing_execution_scan`/`nursing_handoff_record`/`nursing_infusion_patrol` + - Frontend: `inpatientNurse/` 新增3个页面 + - Test: 护理记录单/质量指标采集/交接班重点患者 + - Commit: `feat(nursing): 护理文书+质量指标+交接班` + +- [ ] **T7.5: Sprint 7 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test -pl healthlink-his-application` + - Commit: `test: Sprint 7 验证通过` + +### Sprint 8: LIS+PACS(Week 8) + +**依赖**: Sprint 7 +**交付物**: 检验3项 + 检查4项 + +- [ ] **T8.1: 室内质控Westgard规则** + - Files: `lab/` 扩展已有逻辑 + - DB: V19已建 `lab_internal_qc`,补Westgard规则引擎 + - Frontend: `labenhanced/` 新增质控图页面 + - Test: 质控数据→Westgard规则判断→失控处理 + - Commit: `feat(lab): 室内质控Westgard规则` + +- [ ] **T8.2: 室间质评+报告打印** + - Files: `lab/` 扩展已有逻辑 + - DB: V19已建 `lab_external_eqa` + - Frontend: `labenhanced/` 新增室间质评+报告打印页面 + - Test: 室间质评结果录入+标准报告单打印 + - Commit: `feat(lab): 室间质评+报告打印` + +- [ ] **T8.3: DICOM图像采集+结构化报告** + - Files: `check/` 扩展已有逻辑 + - DB: V30已建 `radiology_image`/`radiology_image_report`/`dicom_print_record` + - Frontend: `inspection/` 实现全部10个空壳页面 + - Test: DICOM图像接收→存储→结构化报告 + - Commit: `feat(check): DICOM图像+结构化报告` + +- [ ] **T8.4: 影像对比+DICOM打印** + - Files: `check/` 扩展已有逻辑 + - DB: V22已建 `radiology_image_comparison` + - Frontend: `radiologycomparison/` 实现影像对比页面 + - Test: 历史影像对比+胶片打印接口 + - Commit: `feat(check): 影像对比+DICOM打印` + +- [ ] **T8.5: Sprint 8 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test -pl healthlink-his-application` + - Commit: `test: Sprint 8 验证通过` + +### Sprint 9: ESB集成平台(Week 9-10) + +**依赖**: Sprint 8 +**交付物**: ESB 6项缺失能力 + +- [ ] **T9.1: HL7 FHIR R4消息转换** + - Files: `esbmanage/` 扩展已有逻辑 + - DB: V18已建 `esb_fhir_resource`,补FHIR资源映射 + - Frontend: `esbmanage/` 实现FHIR管理页面 + - Test: HIS内部格式↔FHIR R4格式转换 + - Commit: `feat(esb): HL7 FHIR R4消息转换` + +- [ ] **T9.2: CDA临床文档** + - Files: `esbmanage/` 扩展已有逻辑 + - DB: V18已建 `esb_cda_document`,补CDA生成 + - Frontend: `fhircda/` 实现CDA管理页面 + - Test: 入院/出院/检验/处方CDA文档生成 + - Commit: `feat(esb): CDA临床文档` + +- [ ] **T9.3: 编码映射+监控+可靠性** + - Files: `esbmanage/` 扩展已有逻辑 + - DB: V18已建 `esb_code_mapping`,V29已建 `esb_dead_letter`/`esb_monitor_stats` + - Frontend: `esbmanage/` 实现监控仪表盘 + - Test: ICD-10/LOINC映射+消息监控+死信处理 + - Commit: `feat(esb): 编码映射+监控+可靠性` + +- [ ] **T9.4: Sprint 9-10 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test -pl healthlink-his-application` + - 验证: ESB消息路由+FHIR转换+CDA生成 + - Commit: `test: ESB集成平台验证通过` + +- [ ] **T9.5: Phase 2 里程碑评审** + - 输出: 三甲评审17项必测项覆盖报告 + - 输出: Phase 2 完成度报告 + - Commit: `docs: Phase 2 里程碑评审报告` + +--- + +## 3. Phase 3: 空壳补全+其他(Sprint 11-14,4周) + +> **目标**: 补全31项空壳 + 统计报表 + EMPI + 其他 +> **详细设计**: `MD/design/PHASE3_FILL_DESIGN.md`(46.4KB) + +### Sprint 10: EMPI+质量+随访(Week 11) + +- [ ] **T10.1: EMPI患者身份合并/拆分** + - Files: `empi/` 扩展已有逻辑 + - DB: V2026_0616_1已建 `empi_person`/`empi_person_id_mapping` + - Frontend: `empienhanced/` 实现合并/拆分页面 + - Test: 多来源患者信息合并+拆分+日志 + - Commit: `feat(empi): 患者身份合并拆分` + +- [ ] **T10.2: EMPI重复检测+跨系统同步** + - Files: `empi/` 扩展已有逻辑 + - DB: V20已建 `empi_merge_log`/`empi_family_member`/`empi_patient_photo` + - Frontend: `empienhanced/` 实现重复检测页面 + - Test: 身份证+姓名+手机号模糊匹配+跨系统同步 + - Commit: `feat(empi): 重复检测+跨系统同步` + +- [ ] **T10.3: 质控指标自动采集** + - Files: `quality/` 扩展已有逻辑 + - DB: V20已建 `quality_core_indicator`,补采集逻辑 + - Frontend: `qualityenhanced/` 实现指标采集页面 + - Test: 十八项核心制度执行指标自动采集 + - Commit: `feat(quality): 质控指标自动采集` + +- [ ] **T10.4: 随访管理** + - Files: `followup/` 扩展已有逻辑 + - DB: V32已建 `followup_plan`/`followup_record`/`followup_task` + - Frontend: `followup/` 实现已有5个vue页面 + - Test: 随访计划生成→任务分配→执行→满意度调查 + - Commit: `feat(followup): 随访管理` + +- [ ] **T10.5: Sprint 10 验证** + - Run: `mvn clean compile -DskipTests` + - Commit: `test: Sprint 10 验证通过` + +### Sprint 11: 药品追溯+CSSD+术前管理(Week 12) + +- [ ] **T11.1: 药品追溯码扫描** + - Files: `drugtrace/` 扩展已有逻辑 + - DB: V36已建 `drug_trace_*` 4张表,补扫描+追踪逻辑 + - Frontend: `drugtrace/` 实现已有4个vue页面 + - Test: 药品入库扫描→全链追踪→追溯预警 + - Commit: `feat(drugtrace): 药品追溯码扫描` + +- [ ] **T11.2: CSSD消毒供应** + - Files: `cssd/` 扩展已有逻辑 + - DB: V31已建 `cssd_*` 5张表,补器械包追溯逻辑 + - Frontend: `cssd/` 实现CSSD管理页面 + - Test: 器械包→灭菌批次→效期预警→追溯 + - Commit: `feat(cssd): CSSD消毒供应追溯` + +- [ ] **T11.3: 术前讨论记录** + - Files: `preopmanage/` 扩展已有逻辑 + - DB: V14已建 `sys_preop_discussion`/`sys_preop_participant` + - Frontend: `preopmanage/` 实现术前讨论页面 + - Test: 三级/四级手术强制讨论→记录→签名审核 + - Commit: `feat(preop): 术前讨论记录` + +- [ ] **T11.4: 3D影像重建** + - Files: `reconstruction/` 扩展已有逻辑 + - DB: V31已建 `reconstruction_*` 3张表 + - Frontend: `reconstruction/` 实现已有2个vue页面 + - Test: DICOM三维重建+MPR+体积渲染 + - Commit: `feat(reconstruction): 3D影像重建` + +- [ ] **T11.5: Sprint 11 验证** + - Run: `mvn clean compile -DskipTests` + - Commit: `test: Sprint 11 验证通过` + +### Sprint 12: 统计报表+合理用药增强(Week 13) + +- [ ] **T12.1: DRG/DIP分析** + - Files: `reportmanage/` 扩展已有逻辑 + - DB: V28已建 `mr_drg_grouping`/`drg_analysis_stats`,V33已建 `drg_performance` + - Frontend: `crossmodule/` 新增DRG分析页面 + - Test: 病组分布/费用结构/时间消耗分析 + - Commit: `feat(report): DRG/DIP分析` + +- [ ] **T12.2: 经营分析+数据导出** + - Files: `reportmanage/` 扩展已有逻辑 + - DB: V23已建 `business_analytics` + - Frontend: `crossmodule/` 新增经营分析页面 + - Test: 科室成本/收益/绩效+Excel/PDF导出 + - Commit: `feat(report): 经营分析+数据导出` + +- [ ] **T12.3: 可视化仪表盘** + - Files: `system/` 扩展 `DashboardController.java` + - DB: V20已建 `sys_dashboard_config` + - Frontend: `dashboard/` 新增数据大屏 + - Test: 数据大屏+图表展示 + - Commit: `feat(dashboard): 可视化仪表盘` + +- [ ] **T12.4: Sprint 12 验证** + - Run: `mvn clean compile -DskipTests` + - Commit: `test: Sprint 12 验证通过` + +### Sprint 13: Phase 3集成测试(Week 14) + +- [ ] **T13.1: Phase 3 全链路集成测试** + - Test: EMPI→HIS/LIS/PACS/EMR跨系统数据流 + - Test: 统计报表全量数据验证 + - Test: 药品追溯全链路 + - Commit: `test: Phase 3 集成测试通过` + +- [ ] **T13.2: Phase 3 里程碑评审** + - 输出: 142项能力完成率报告 + - 输出: Phase 3 完成度报告 + - Commit: `docs: Phase 3 里程碑评审报告` + +--- + +## 4. Phase 4: 广西地方特色(Sprint 14-16,3周) + +> **目标**: 满足广西地方要求 +> **详细设计**: `MD/design/PHASE4_LOCAL_DESIGN.md`(42.6KB) + +### Sprint 14: 壮医/中医+传染病(Week 15) + +- [ ] **T14.1: 壮医/中医特色模块** + - Files: `tcm/` 扩展已有逻辑 + - DB: V39已建 `tcm_prescription`/`tcm_constitution_assessment`,补5张新表 + - Frontend: `tcm/` 实现2个空壳页面+新增页面 + - Test: 壮医望诊/脉诊/目诊+中医处方+体质辨识+民族药编码 + - Commit: `feat(tcm): 壮医/中医特色模块` + +- [ ] **T14.2: 传染病直报增强** + - Files: `epidemic/` 扩展已有逻辑 + - DB: 补4张新表(筛查/命中/直报/病种) + - Frontend: `diseaseReportManagement/` 增强已有页面 + - Test: 传染病自动筛查+广西疾控直报对接+统计分析 + - Commit: `feat(epidemic): 传染病直报增强` + +- [ ] **T14.3: Sprint 14 验证** + - Run: `mvn clean compile -DskipTests` + - Commit: `test: Sprint 14 验证通过` + +### Sprint 15: 电子健康卡+电子票据(Week 16) + +- [ ] **T15.1: 电子健康卡模块** + - Files: 新建 `ehcard/` 模块(Controller/AppService/Service/Mapper/Entity) + - DB: 新建 `ehcard_card`/`ehcard_usage_log` 2张表 + - Frontend: 新建 `ehcard/` 前端模块 + - Test: 健康卡申领+就诊使用+挂失/补办/注销 + - Commit: `feat(ehcard): 电子健康卡` + +- [ ] **T15.2: 电子票据模块** + - Files: 新建 `invoice/` 模块 + - DB: 新建 `invoice_header`/`invoice_detail`/`invoice_segment`/`invoice_reconciliation` 4张表 + - Frontend: 新建 `invoice/` 前端模块 + - Test: 电子发票生成+核销+退票+查询 + - Commit: `feat(invoice): 电子票据` + +- [ ] **T15.3: Sprint 15 验证** + - Run: `mvn clean compile -DskipTests` + - Commit: `test: Sprint 15 验证通过` + +### Sprint 16: DRG/DIP深化+最终验收(Week 17) + +- [ ] **T16.1: DRG/DIP深化** + - Files: `ybmanage/` 扩展已有逻辑 + - DB: 补5张新表(广西方案/DIP分值/优化/质控/对账) + - Frontend: `ybmanagement/` 增强已有页面 + - Test: 广西DRG/DIP分组+费用预警+优化建议+医保对账 + - Commit: `feat(yb): DRG/DIP深化` + +- [ ] **T16.2: Phase 4 验证** + - Run: `mvn clean compile -DskipTests` + - Run: `mvn test` + - Commit: `test: Phase 4 验证通过` + +- [ ] **T16.3: 全项目最终验收** + - Test: 142项必备能力全部验证 + - Test: 电子病历4级自评 + - Test: 互联互通四级甲等自评 + - 输出: 三甲评审达标报告 + - Commit: `docs: 三甲评审最终验收报告` + +--- + +## 5. 工时汇总 + +| Phase | Sprint数 | 周数 | 模块数 | 人天 | +|-------|:--------:|:----:|:------:|:----:| +| Phase 1 P0核心 | 5 | 5 | 17项 | 51天 | +| Phase 2 P1评审 | 5 | 5 | 25项 | 67天 | +| Phase 3 空壳补全 | 4 | 4 | 37项 | 67天 | +| Phase 4 地方特色 | 3 | 3 | 5项 | 35天 | +| **合计** | **17** | **17** | **84项** | **220天** | + +> 并行开发: 2人≈17周,3人≈12周,4人≈9周 + +--- + +## 6. 关键里程碑 + +| 里程碑 | Sprint | 日期 | 验收标准 | 评审支撑 | +|--------|:------:|------|---------|---------| +| **M1** | Sprint 5 | Week 5 | 电子病历4级核心能力就绪 | 电子病历评级申请 | +| **M2** | Sprint 9 | Week 10 | 三甲评审17项必测项全覆盖 | 三甲评审自查 | +| **M3** | Sprint 13 | Week 14 | 142项能力完成率≥90% | 评审材料准备 | +| **M4** | Sprint 16 | Week 17 | 142项能力100%覆盖 | 地方评审加分 | + +--- + +## 7. 风险管理 + +| 风险 | 概率 | 影响 | 缓解措施 | +|------|:----:|:----:|---------| +| ESB集成复杂度高 | 高 | Phase 2延期 | 使用开源集成引擎(Kafka) | +| PACS设备对接不确定 | 中 | Sprint 8延期 | 先做框架,设备延后 | +| 医保接口联调周期长 | 中 | Sprint 16延期 | 预留联调缓冲期 | +| God Controller重构风险 | 高 | 引入新BUG | 小步拆分+测试覆盖 | +| 前端空壳数量超预期 | 低 | Sprint 11-12延期 | 优先核心页面 | + +--- + +## 8. 验证命令速查 + +```bash +# 后端编译 +mvn clean compile -DskipTests + +# 后端测试 +mvn test -pl healthlink-his-application + +# 前端编译 +cd healthlink-his-ui && npm run build:dev + +# 前端lint +cd healthlink-his-ui && npm run lint + +# 全量验证(每个Sprint结束) +mvn clean compile -DskipTests && mvn test -pl healthlink-his-application +``` + +--- + +## 9. 设计文档索引 + +| 文档 | 路径 | 内容 | +|------|------|------| +| 代码审计 | `MD/design/CODEBASE_REALITY_CHECK.md` | 74个后端+89个前端模块真实状态 | +| Phase 1 设计 | `MD/design/PHASE1_CORE_DESIGN.md` | 17项P0核心模块详细设计(78KB) | +| Phase 2 设计 | `MD/design/PHASE2_REVIEW_DESIGN.md` | 25项P1评审保障详细设计(40.5KB) | +| Phase 3 设计 | `MD/design/PHASE3_FILL_DESIGN.md` | 37项空壳补全详细设计(46.4KB) | +| Phase 4 设计 | `MD/design/PHASE4_LOCAL_DESIGN.md` | 5项广西地方特色详细设计(42.6KB) | +| 三甲标准 | `MD/standards/GRADE3A_HIS_STANDARD.md` | 国家标准汇编 | +| 能力清单 | `MD/standards/MODULE_CAPABILITY_REQUIREMENTS.md` | 142项必备能力清单 | +| 差距分析 | `MD/architecture/GRADE3A_GAP_ANALYSIS_AND_DESIGN.md` | 差距分析+初步设计 | + +--- + +> **文档版本**: v1.0 +> **最后更新**: 2026-06-17 +> **下一步**: 确认后从 Sprint 1 Task 1.1 开始执行 diff --git a/healthlink-his-ui/src/assets/icons/drug.svg b/healthlink-his-ui/src/assets/icons/drug.svg deleted file mode 100755 index 5653b9706..000000000 --- a/healthlink-his-ui/src/assets/icons/drug.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/healthlink-his-ui/src/assets/icons/svg/analysis.svg b/healthlink-his-ui/src/assets/icons/svg/analysis.svg new file mode 100644 index 000000000..eb1d5894a --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/analysis.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/healthlink-his-ui/src/assets/icons/svg/bell.svg b/healthlink-his-ui/src/assets/icons/svg/bell.svg new file mode 100644 index 000000000..1c59a15b2 --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/bell.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/healthlink-his-ui/src/assets/icons/svg/connection.svg b/healthlink-his-ui/src/assets/icons/svg/connection.svg new file mode 100644 index 000000000..98dfda84c --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/connection.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/healthlink-his-ui/src/assets/icons/svg/consultation.svg b/healthlink-his-ui/src/assets/icons/svg/consultation.svg new file mode 100644 index 000000000..eb1d5894a --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/consultation.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/healthlink-his-ui/src/assets/icons/svg/drug.svg b/healthlink-his-ui/src/assets/icons/svg/drug.svg new file mode 100644 index 000000000..eb1d5894a --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/drug.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/healthlink-his-ui/src/assets/icons/svg/emr.svg b/healthlink-his-ui/src/assets/icons/svg/emr.svg new file mode 100644 index 000000000..eb1d5894a --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/emr.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/healthlink-his-ui/src/assets/icons/svg/hospital.svg b/healthlink-his-ui/src/assets/icons/svg/hospital.svg new file mode 100644 index 000000000..eb1d5894a --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/hospital.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/healthlink-his-ui/src/assets/icons/svg/sample.svg b/healthlink-his-ui/src/assets/icons/svg/sample.svg new file mode 100644 index 000000000..eb1d5894a --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/sample.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/healthlink-his-ui/src/assets/icons/svg/warning.svg b/healthlink-his-ui/src/assets/icons/svg/warning.svg new file mode 100644 index 000000000..815bc8555 --- /dev/null +++ b/healthlink-his-ui/src/assets/icons/svg/warning.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file