diff --git a/docs/健康管理/01-患者端-功能思维导图.md b/docs/健康管理/01-患者端-功能思维导图.md new file mode 100644 index 0000000..358daae --- /dev/null +++ b/docs/健康管理/01-患者端-功能思维导图.md @@ -0,0 +1,82 @@ +# HMS 患者端(微信小程序)— 功能思维导图 + +> 版本: v1.0 | 更新日期: 2026-04-29 +> 说明: 可直接导入 XMind / 幻灯片 / 幕布等工具生成图形化思维导图。 + +--- + +## 导图结构 + +``` +HMS 患者端(微信小程序) +├── 首页概览 +│ ├── 健康数据概览卡片(血压/体重/最近透析记录) +│ ├── 功能快捷入口(数据上报、我的医生、在线咨询、积分商城) +│ ├── 每日健康打卡 +│ └── 待办提醒(即将到期检查/治疗/随访) +├── 健康数据 +│ ├── 日常监测上报 +│ │ ├── 血压记录(早/晚) +│ │ ├── 体重记录 +│ │ ├── 血糖记录 +│ │ ├── 饮水量记录 +│ │ ├── 尿量记录 +│ │ └── 趋势图表展示 +│ ├── 化验报告 +│ │ ├── 化验单拍照上传 +│ │ ├── 化验指标手动录入 +│ │ ├── AI 自动识别指标 +│ │ └── 历史报告对比 +│ ├── 设备数据同步 +│ │ ├── 蓝牙设备自动采集 +│ │ ├── 血压计/血糖仪/体重秤 +│ │ └── 数据实时同步至平台 +│ └── 透析记录 +│ ├── 透析日期与时长 +│ ├── 透析前后血压/体重 +│ ├── 干体重记录 +│ └── 不适症状记录 +├── 预约服务 +│ ├── 透析预约 +│ │ ├── 选择日期时段 +│ │ ├── 自动推荐可用时间 +│ │ └── 预约状态跟踪 +│ ├── 复查/抽血预约 +│ │ ├── 检查项目选择 +│ │ └── 预约流程引导 +│ └── 智能提醒 +│ ├── 透析时间提醒 +│ ├── 服药提醒 +│ ├── 测量血压/体重提醒 +│ └── 复查到期提醒 +├── 在线咨询 +│ ├── 选择医生 +│ ├── 图文/语音沟通 +│ ├── 上传报告附件 +│ ├── 历史对话归档 +│ └── 留言功能(医生离线时) +├── 积分商城 +│ ├── 商品分类浏览 +│ ├── 积分兑换 +│ ├── 订单管理 +│ └── 配送追踪 +├── 健康资讯 +│ ├── 科普文章阅读 +│ ├── 公告通知查看 +│ ├── 按疾病类型分类 +│ └── 阅读量统计 +├── AI 智能报告 +│ ├── 趋势分析图表 +│ ├── 异常指标标红 +│ ├── 健康风险预警 +│ └── 定期健康报告生成 +└── 个人中心 + ├── 个人信息 & 实名认证 + ├── 多就诊人管理(家属代绑) + ├── 健康档案查看 + ├── 我的医生 + ├── 我的报告 + ├── 健康打卡记录 + ├── 线下活动报名 + └── 隐私设置 & 合规声明 +``` diff --git a/docs/健康管理/02-医护端-功能思维导图.md b/docs/健康管理/02-医护端-功能思维导图.md new file mode 100644 index 0000000..53aacbe --- /dev/null +++ b/docs/健康管理/02-医护端-功能思维导图.md @@ -0,0 +1,62 @@ +# HMS 医护端(微信小程序)— 功能思维导图 + +> 版本: v1.0 | 更新日期: 2026-04-29 +> 说明: 可直接导入 XMind / 幻灯片 / 幕布等工具生成图形化思维导图。 + +--- + +## 导图结构 + +``` +HMS 医护端(微信小程序) +├── 工作台 +│ ├── 今日待办概览 +│ ├── 待回复咨询数 +│ ├── 待执行随访任务 +│ ├── 异常指标预警摘要 +│ └── 患者病情分布统计 +├── 患者管理 +│ ├── 患者列表 +│ │ ├── 按透析/慢病/高危筛选 +│ │ ├── 按疾病类型筛选 +│ │ ├── 按治疗阶段筛选 +│ │ └── 关键字搜索 +│ ├── 患者标签管理 +│ │ ├── 自定义标签(高钾/高磷/体重超标等) +│ │ ├── 标签分类管理 +│ │ └── 批量打标签 +│ └── 健康档案查看 +│ ├── 病历信息 +│ ├── 化验报告 +│ ├── 生命体征趋势图 +│ ├── 治疗效果对比 +│ └── 在线状态 & 最近咨询时间 +├── 咨询回复 +│ ├── 未读消息提醒 +│ ├── 图文/语音回复 +│ ├── 预设回复模板 +│ └── 科普内容发布 +├── 随访管理 +│ ├── 随访任务列表 +│ │ ├── 指定随访内容和方式 +│ │ ├── 修改随访计划 +│ │ └── 任务状态管理 +│ ├── 随访记录填写 +│ │ ├── 详细信息记录 +│ │ ├── 医生建议 +│ │ └── 随访效果分析 +│ └── 随访台账 +│ ├── 选择时间范围导出 +│ └── 数据类型选择 +├── 告警处理 +│ ├── 实时告警通知 +│ ├── 按严重程度分级 +│ ├── 告警确认与处理 +│ └── 处理记录追踪 +└── 报告解读 + ├── 化验单批量查看 + ├── 异常指标高亮 + ├── 历史结果对比 + ├── 医生备注标注 + └── 随访状态标记 +``` diff --git a/docs/健康管理/03-管理后台-功能思维导图.md b/docs/健康管理/03-管理后台-功能思维导图.md new file mode 100644 index 0000000..d0f0c64 --- /dev/null +++ b/docs/健康管理/03-管理后台-功能思维导图.md @@ -0,0 +1,141 @@ +# HMS 管理后台(PC Web)— 功能思维导图 + +> 版本: v1.0 | 更新日期: 2026-04-29 +> 说明: 可直接导入 XMind / 幻灯片 / 幕布等工具生成图形化思维导图。 + +--- + +## 导图结构 + +``` +HMS 管理后台(PC Web) +├── 工作台仪表盘 +│ ├── 角色化首页(管理员/医生/护士/客服不同视图) +│ ├── 关键指标卡片 +│ ├── 今日待办汇总 +│ └── 最近操作记录 +├── 患者管理 +│ ├── 患者列表 +│ │ ├── 多维度搜索筛选 +│ │ ├── 批量操作 +│ │ └── 数据导出 Excel +│ ├── 患者详情 +│ │ ├── 基本信息/病历信息 +│ │ ├── 健康数据趋势 +│ │ ├── 预约记录 +│ │ ├── 咨询记录 +│ │ ├── 随访记录 +│ │ └── 标签管理 +│ └── 患者标签管理 +│ ├── 标签 CRUD +│ └── 标签分类 +├── 预约排班 +│ ├── 医生排班管理 +│ │ ├── 创建排班计划 +│ │ ├── 轮班设置 +│ │ └── 时间段管理 +│ └── 预约列表 +│ ├── 预约状态管理 +│ ├── 并发控制(防止超额) +│ └── 自动提醒 +├── 咨询管理 +│ ├── 咨询会话列表 +│ ├── 对话记录查看 +│ ├── 医生排班关联 +│ └── 对话记录导出 +├── 随访管理 +│ ├── 随访任务列表 +│ ├── 随访模板管理 +│ │ ├── 自定义字段 +│ │ └── 模板 CRUD +│ ├── 随访记录查看 +│ └── 随访台账导出 +├── 健康数据中心 +│ ├── 透析数据统计 +│ │ ├── 透析次数/完成率 +│ │ └── 透析效果评估 +│ ├── 日常监测数据 +│ │ ├── 血压/血糖/体重趋势 +│ │ └── 异常值统计 +│ ├── 化验数据汇总 +│ │ ├── 指标异常排行 +│ │ └── 上报率统计 +│ └── 设备数据管理 +│ ├── 设备绑定/解绑 +│ └── 数据质量监控 +├── 告警中心 +│ ├── 告警规则配置 +│ │ ├── 阈值设置 +│ │ ├── 触发条件 +│ │ └── 通知方式 +│ ├── 告警列表 +│ │ ├── 按严重程度/类型筛选 +│ │ └── 告警确认/处理 +│ └── 危急值管理 +│ ├── 危急值阈值配置 +│ ├── 危急值响应记录 +│ └── 响应时效统计 +├── 内容管理 +│ ├── 科普文章 +│ │ ├── 富文本编辑器 +│ │ ├── 分类/标签管理 +│ │ ├── 审核/发布/下架 +│ │ └── 阅读量统计 +│ ├── 公告管理 +│ │ ├── 创建/发布/下架 +│ │ └── 定向推送 +│ └── 首页轮播配置 +│ ├── 轮播图管理 +│ └── 排序/定时 +├── 积分商城运营 +│ ├── 商品管理 +│ │ ├── 商品 CRUD +│ │ ├── 分类管理 +│ │ └── 上下架 +│ ├── 订单管理 +│ │ ├── 订单列表/状态流转 +│ │ └── 发货/退款处理 +│ ├── 积分规则 +│ │ ├── 签到积分 +│ │ ├── 行为积分 +│ │ └── 积分兑换比例 +│ └── 积分账户管理 +│ ├── 用户积分余额 +│ └── 积分明细 +├── AI 智能分析 +│ ├── AI 分析任务 +│ │ ├── 化验单解读 +│ │ ├── 趋势分析 +│ │ └── 健康报告摘要 +│ ├── AI 提示词管理 +│ │ ├── 提示词模板 CRUD +│ │ └── 场景分类 +│ └── AI 使用统计 +│ ├── 调用量/成功率 +│ └── 成本分析 +├── 统计报表 +│ ├── 患者增长分析 +│ │ └── 新增/活跃/流失趋势 +│ ├── 咨询量统计 +│ │ └── 高峰时段/热门主题 +│ ├── 随访完成率 +│ │ ├── 任务完成情况 +│ │ └── 改进建议 +│ └── 积分商城销售数据 +│ └── 兑换量/积分消耗 +└── 系统管理 + ├── 账号权限 + │ ├── 用户/角色/权限管理 + │ ├── RBAC + 行级数据权限 + │ └── 操作日志审计 + ├── 组织架构 + │ └── 部门/岗位管理 + ├── 系统设置 + │ ├── 字典管理 + │ ├── 菜单配置 + │ └── 消息推送配置 + └── 数据安全 + ├── 数据备份 + ├── 合规声明配置 + └── 隐私政策管理 +``` diff --git a/docs/健康管理/04-平台技术能力-功能思维导图.md b/docs/健康管理/04-平台技术能力-功能思维导图.md new file mode 100644 index 0000000..0370d77 --- /dev/null +++ b/docs/健康管理/04-平台技术能力-功能思维导图.md @@ -0,0 +1,53 @@ +# HMS 平台技术能力 — 功能思维导图 + +> 版本: v1.0 | 更新日期: 2026-04-29 +> 说明: 可直接导入 XMind / 幻灯片 / 幕布等工具生成图形化思维导图。 + +--- + +## 导图结构 + +``` +HMS 平台技术能力 +├── 安全合规 +│ ├── JWT 身份认证(Access Token 15min + Refresh Token 7天轮换) +│ ├── RBAC 权限控制(角色权限 + 行级数据权限 + 按钮级控制) +│ ├── 多租户数据隔离(JWT 注入 tenant_id,查询自动过滤) +│ ├── 操作日志审计(变更前后状态记录,哈希链防篡改) +│ ├── PII 敏感数据加密(AES-256-GCM + KEK/DEK 分层密钥管理) +│ ├── 数据脱敏展示(手机号/身份证自动脱敏) +│ ├── 知情同意记录(数据处理前获取明确同意,支持撤回) +│ └── 隐私政策 & 用户协议 +├── 多租户架构 +│ ├── 共享数据库 + tenant_id 列隔离 +│ ├── 租户级配置(独立权限/菜单/字典) +│ ├── 独立部署支持(预留 Schema 隔离能力) +│ ├── 租户自动初始化(on_tenant_created 钩子) +│ └── 数据导入/导出 +├── 开放集成 +│ ├── OpenAPI 文档自动生成(Swagger UI 可交互) +│ ├── 蓝牙设备协议对接(血压计/血糖仪/体重秤) +│ ├── 微信生态集成(登录/支付/消息推送) +│ ├── AI 能力扩展接口(SSE 流式输出) +│ └── 事件驱动集成(EventBus Outbox 持久化) +├── 技术选型 +│ ├── 后端: Rust + Axum 0.8(内存安全 + 高性能 + 无 GC 停顿) +│ ├── 数据库: PostgreSQL 18(企业级可靠性 + JSON 支持) +│ ├── ORM: SeaORM 1.1(编译期类型检查 + 迁移工具链) +│ ├── 缓存: Redis 7(限流 + 热点数据缓存) +│ ├── 前端: React 19 + Ant Design 6(企业后台 UI 标配) +│ └── 小程序: Taro 4.2 + React 18(跨端兼容 + 微信生态集成) +├── 数据保障 +│ ├── UUID v7 主键(时间排序 + 全局唯一 + 分布式友好) +│ ├── 软删除(数据不物理删除,保留审计追溯) +│ ├── 乐观锁(version 字段防并发覆盖) +│ ├── 预约防超额(原子 CAS 并发控制) +│ ├── 事件持久化(Outbox 模式 + Dead Letter 存储) +│ └── 幂等操作(重复请求安全) +└── 质量保障 + ├── 225+ 单元测试 + ├── 159+ 集成测试(真实 PostgreSQL) + ├── 多租户隔离验证(独立测试 crate) + ├── E2E 测试(Playwright 关键用户流程) + └── 76 个数据库迁移(全部可回滚) +``` diff --git a/docs/健康管理/HMS后续演化路线图.md b/docs/健康管理/HMS后续演化路线图.md new file mode 100644 index 0000000..8fb0ff5 --- /dev/null +++ b/docs/健康管理/HMS后续演化路线图.md @@ -0,0 +1,193 @@ +# HMS 健康管理平台 — 后续演化路线图 + +> 版本: v1.0 | 日期: 2026-04-29 | 面向: 客户产品规划 + +--- + +## 1. 当前状态 — 已交付能力 + +### 1.1 交付总览 + +| 指标 | 数据 | +|------|------| +| 后端模块 | 9 个 Rust crate(5 基础 + 3 业务 + 1 组装) | +| 业务实体 | 47 个(44 健康 + 3 AI) | +| 数据库迁移 | 76 个,全部可回滚 | +| 管理后台 | 29 个页面(25+ 健康路由 + 4 系统) | +| 患者端小程序 | 31 个页面,5 个 TabBar | +| 医护端小程序 | 9 个页面 | +| 后端测试 | 225 单元 + 159 集成 | +| API 文档 | OpenAPI 自动生成,Swagger UI 可交互 | + +### 1.2 已实现的核心能力 + +| 能力域 | 状态 | 说明 | +|--------|------|------| +| 患者管理(建档/标签/家属/医患关系) | ✅ 已完成 | 含 PII 加密和脱敏 | +| 健康数据(体征/化验/日常监测/设备同步) | ✅ 已完成 | 趋势图、小时聚合 | +| 预约排班(透析预约/医生排班) | ✅ 已完成 | 原子 CAS 并发控制 | +| 随访管理(任务/记录/模板) | ✅ 已完成 | 可自定义字段模板 | +| 咨询管理(会话/消息) | ✅ 已完成 | 图文/语音消息 | +| 告警系统(规则/危急值) | ✅ 已完成 | 阈值可配置,分级告警 | +| 内容管理(文章/分类/标签/公告) | ✅ 已完成 | 富文本编辑,审核流程 | +| 积分商城(账户/规则/商品/订单) | ✅ 已完成 | 积分兑换,签到 | +| AI 分析(化验解读/趋势/报告) | 🔄 Phase 1 MVP | SSE 流式输出 | +| 透析管理(透析记录/透析处方) | 🔄 基础完成 | 已独立拆分为 erp-dialysis | +| 微信小程序(患者端 + 医护端) | ✅ 已完成 | 微信登录,蓝牙设备同步 | + +--- + +## 2. Phase 1:加固期(2-3 周)— 上线前必修 + +> **目标:** 补齐临床安全和合规短板,确保系统具备上线条件。 + +### 2.1 危急值告警闭环 + +| 项目 | 说明 | 工期 | +|------|------|------| +| 危急值阈值可配置化 | 硬编码阈值改为数据库配置,支持按科室/年龄段差异化设置 | 2 天 | +| 告警通知闭环 | 异常体征 → 自动通知责任医护 → 医护确认处理 → 超时升级 | 1 天 | +| 日常监测告警验证 | 确保所有体征数据(含设备上报)都经过告警检测 | 1 天 | + +**为什么是 P0:** 危急体征值无人响应可能导致患者安全事故,这是医疗系统的底线。 + +### 2.2 合规补全 + +| 项目 | 说明 | 工期 | +|------|------|------| +| 知情同意记录 | 患者数据处理前获取明确同意,记录同意版本和时间,支持撤回 | 3 天 | +| 审计日志补全 | 临床数据变更记录前后值,读操作(查看患者详情/化验报告)纳入审计 | 3 天 | +| 隐私政策 & 用户协议 | 小程序端展示可阅读的隐私政策和用户协议 | 1 天 | + +**法规依据:** PIPL(个人信息保护法)第 29 条要求处理敏感个人信息须取得单独同意。医疗数据属于敏感个人信息。 + +### 2.3 事件可靠性 + +| 项目 | 说明 | 工期 | +|------|------|------| +| 事件重放机制 | 服务重启后从 Outbox 恢复未处理事件,不丢失 | 2 天 | +| 随访逾期通知 | 逾期未完成随访自动催办 + 幂等保护(不重复通知) | 1 天 | + +--- + +## 3. Phase 2:治理期(2-4 周)— 架构治理与质量提升 + +> **目标:** 提升代码质量和系统稳定性,为规模化运营打基础。 + +### 3.1 架构治理 + +| 项目 | 说明 | 工期 | +|------|------|------| +| 积分系统独立拆分 | 从 erp-health 拆分为独立 crate,降低健康模块复杂度和合规风险 | 5 天 | +| 事件订阅优化 | 消息模块改用过滤订阅,减少无效事件传递 | 1 天 | +| 统一事件消费模式 | 消除双路径问题,所有事件消费走统一入口 | 2 天 | + +### 3.2 质量提升 + +| 项目 | 说明 | 工期 | +|------|------|------| +| 关键路径测试补全 | 多租户隔离验证、患者安全路径、预约并发测试(50-80 用例) | 4 天 | +| 过敏史变更追溯 | 更新过敏史时保留历史记录,支持变更回溯 | 1 天 | +| PII 加密范围扩展 | 从仅身份证/手机号扩展到姓名、过敏史、诊断、咨询内容 | 3 天 | + +### 3.3 前端工程化 + +| 项目 | 说明 | 工期 | +|------|------|------| +| 前端测试覆盖 | 管理后台核心页面单元测试 + E2E 测试 | 3 天 | +| 前端性能优化 | 大列表虚拟滚动、图表懒加载、路由代码分割 | 2 天 | +| 小程序体验优化 | 页面加载性能、离线缓存、弱网降级 | 2 天 | + +--- + +## 4. Phase 3:深化期(4-6 周)— 专科能力与智能增强 + +> **目标:** 从通用健康管理深化为肾病/血透专科能力,增强 AI 智能分析。 + +### 4.1 血透专科能力 + +| 项目 | 说明 | 前置条件 | +|------|------|---------| +| 透析方案管理 | 透析处方模板、透析器选择、抗凝方案 | 客户需求确认 | +| 透析并发症追踪 | 低血压、失衡综合征等并发症记录与分析 | 透析方案完成 | +| 干体重管理 | 干体重目标设定、变化趋势、达标提醒 | 客户需求确认 | +| 透析充分性评估 | Kt/V 计算、URR 统计、达标率报表 | 客户需求确认 | +| 通路管理 | 血管通路类型、建立时间、使用评估 | 客户需求确认 | + +> **建议:** 在开发前先与 3-5 家目标客户做需求调研,确认优先级后再投入开发。 + +### 4.2 AI 智能增强 + +| 项目 | 说明 | 预期效果 | +|------|------|---------| +| OCR 化验单识别 | 拍照自动提取化验指标,减少手动录入 | 上报效率提升 80% | +| 个性化健康建议 | 基于患者历史数据生成饮食/用药/运动建议 | 患者依从性提升 | +| 风险预测模型 | 基于体征趋势预测潜在风险,提前预警 | 从被动响应到主动预防 | +| 智能随访计划 | 根据患者病情自动生成随访频率和内容 | 医护工作量降低 | + +### 4.3 用户体验升级 + +| 项目 | 说明 | +|------|------| +| 医护端工作流优化 | 智能分诊、快捷回复模板、语音转文字 | +| 数据可视化增强 | 可交互的图表、自定义时间范围、PDF 报告导出 | +| 消息推送精细化 | 按患者画像定制推送内容和频率,避免打扰 | + +--- + +## 5. Phase 4:扩展期(按需)— 规模化与生态建设 + +> **目标:** 支撑更多医疗机构接入,建立开放生态。 + +### 5.1 规模化运营 + +| 项目 | 说明 | +|------|------| +| 多机构管理后台 | 集团/连锁机构统一管理视图,跨机构数据汇总 | +| 数据分析平台 | 患者群体分析、治疗效果对比、运营效率仪表盘 | +| 数据导入工具 | 历史患者数据批量导入,支持 Excel/CSV | +| 数据备份与恢复 | 自动化备份策略、一键恢复、灾难恢复演练 | + +### 5.2 开放生态 + +| 项目 | 说明 | +|------|------| +| HIS/EMR 集成 | 与医院信息系统对接,患者数据双向同步 | +| 设备厂商接入 | 标准化蓝牙/HTTP 协议,更多品牌设备即插即用 | +| 第三方服务集成 | 电子发票、物流跟踪、在线支付 | +| 开放 API | 合作伙伴可通过 API 接入平台能力 | + +### 5.3 移动端扩展 + +| 项目 | 说明 | +|------|------| +| 医生端独立 App | 更强大的移动工作台,离线支持 | +| 患者端 APP(可选) | 不依赖微信的独立应用,覆盖更多用户群 | +| 家属端 | 关注患者健康状况,接收告警通知 | + +--- + +## 6. 版本里程碑总览 + +``` +当前 ───────→ Phase 1 ───────→ Phase 2 ───────→ Phase 3 ───────→ Phase 4 + v0.9 加固期 治理期 深化期 扩展期 + MVP 2-3 周 2-4 周 4-6 周 按需 + │ │ │ │ │ + │ ├── 危急值闭环 ├── 积分拆分 ├── 血透专科 ├── 多机构管理 + │ ├── 合规补全 ├── 测试补全 ├── AI 增强 ├── HIS 集成 + │ └── 事件可靠性 ├── PII 扩展 └── 体验升级 └── 开放 API + │ │ │ │ + ▼ ▼ ▼ ▼ ▼ + 内测 安全达标 质量达标 功能达标 规模达标 + 可上线试运行 可正式运营 可专科化运营 可多机构运营 +``` + +**关键决策点:** +- Phase 1 完成后 → 决定是否启动试运行 +- Phase 2 完成后 → 决定是否正式上线 +- Phase 3 启动前 → 需完成目标客户需求调研 +- Phase 4 按业务增长节奏按需启动 + + + diff --git a/docs/健康管理/HMS系统功能思维导图.md b/docs/健康管理/HMS系统功能思维导图.md new file mode 100644 index 0000000..670f801 --- /dev/null +++ b/docs/健康管理/HMS系统功能思维导图.md @@ -0,0 +1,356 @@ +# HMS 健康管理平台 — 系统功能思维导图 + +> 版本: v1.0 | 更新日期: 2026-04-29 +> 说明: 基于系统已实现能力整理,供客户了解平台全貌。可直接导入 XMind / 幻灯片 / 幕布等工具生成图形化思维导图。 + +--- + +## 大纲 + +``` +HMS 健康管理平台 +├── 患者端(微信小程序) +│ ├── 首页概览 +│ ├── 健康数据 +│ ├── 预约服务 +│ ├── 在线咨询 +│ ├── 积分商城 +│ ├── 健康资讯 +│ ├── AI 智能报告 +│ └── 个人中心 +├── 医护端(微信小程序) +│ ├── 工作台 +│ ├── 患者管理 +│ ├── 咨询回复 +│ ├── 随访管理 +│ ├── 告警处理 +│ └── 报告解读 +├── 管理后台(PC Web) +│ ├── 工作台仪表盘 +│ ├── 患者管理 +│ ├── 预约排班 +│ ├── 咨询管理 +│ ├── 随访管理 +│ ├── 健康数据中心 +│ ├── 告警中心 +│ ├── 内容管理 +│ ├── 积分商城运营 +│ ├── AI 智能分析 +│ ├── 统计报表 +│ └── 系统管理 +└── 平台技术能力 + ├── 安全合规 + ├── 多租户架构 + └── 开放集成 +``` + +--- + +## 一、患者端(微信小程序) + +- 首页概览 + - 健康数据概览卡片(血压/体重/最近透析记录) + - 功能快捷入口(数据上报、我的医生、在线咨询、积分商城) + - 每日健康打卡 + - 待办提醒(即将到期检查/治疗/随访) + +- 健康数据 + - 日常监测上报 + - 血压记录(早/晚) + - 体重记录 + - 血糖记录 + - 饮水量记录 + - 尿量记录 + - 趋势图表展示 + - 化验报告 + - 化验单拍照上传 + - 化验指标手动录入 + - AI 自动识别指标 + - 历史报告对比 + - 设备数据同步 + - 蓝牙设备自动采集 + - 血压计/血糖仪/体重秤 + - 数据实时同步至平台 + - 透析记录 + - 透析日期与时长 + - 透析前后血压/体重 + - 干体重记录 + - 不适症状记录 + +- 预约服务 + - 透析预约 + - 选择日期时段 + - 自动推荐可用时间 + - 预约状态跟踪 + - 复查/抽血预约 + - 检查项目选择 + - 预约流程引导 + - 智能提醒 + - 透析时间提醒 + - 服药提醒 + - 测量血压/体重提醒 + - 复查到期提醒 + +- 在线咨询 + - 选择医生 + - 图文/语音沟通 + - 上传报告附件 + - 历史对话归档 + - 留言功能(医生离线时) + +- 积分商城 + - 商品分类浏览 + - 积分兑换 + - 订单管理 + - 配送追踪 + +- 健康资讯 + - 科普文章阅读 + - 公告通知查看 + - 按疾病类型分类 + - 阅读量统计 + +- AI 智能报告 + - 趋势分析图表 + - 异常指标标红 + - 健康风险预警 + - 定期健康报告生成 + +- 个人中心 + - 个人信息 & 实名认证 + - 多就诊人管理(家属代绑) + - 健康档案查看 + - 我的医生 + - 我的报告 + - 健康打卡记录 + - 线下活动报名 + - 隐私设置 & 合规声明 + +--- + +## 二、医护端(微信小程序) + +- 工作台 + - 今日待办概览 + - 待回复咨询数 + - 待执行随访任务 + - 异常指标预警摘要 + - 患者病情分布统计 + +- 患者管理 + - 患者列表 + - 按透析/慢病/高危筛选 + - 按疾病类型筛选 + - 按治疗阶段筛选 + - 关键字搜索 + - 患者标签管理 + - 自定义标签(高钾/高磷/体重超标等) + - 标签分类管理 + - 批量打标签 + - 健康档案查看 + - 病历信息 + - 化验报告 + - 生命体征趋势图 + - 治疗效果对比 + - 在线状态 & 最近咨询时间 + +- 咨询回复 + - 未读消息提醒 + - 图文/语音回复 + - 预设回复模板 + - 科普内容发布 + +- 随访管理 + - 随访任务列表 + - 指定随访内容和方式 + - 修改随访计划 + - 任务状态管理 + - 随访记录填写 + - 详细信息记录 + - 医生建议 + - 随访效果分析 + - 随访台账 + - 选择时间范围导出 + - 数据类型选择 + +- 告警处理 + - 实时告警通知 + - 按严重程度分级 + - 告警确认与处理 + - 处理记录追踪 + +- 报告解读 + - 化验单批量查看 + - 异常指标高亮 + - 历史结果对比 + - 医生备注标注 + - 随访状态标记 + +--- + +## 三、管理后台(PC Web) + +- 工作台仪表盘 + - 角色化首页(管理员/医生/护士/客服不同视图) + - 关键指标卡片 + - 今日待办汇总 + - 最近操作记录 + +- 患者管理 + - 患者列表 + - 多维度搜索筛选 + - 批量操作 + - 数据导出 Excel + - 患者详情 + - 基本信息/病历信息 + - 健康数据趋势 + - 预约记录 + - 咨询记录 + - 随访记录 + - 标签管理 + - 患者标签管理 + - 标签 CRUD + - 标签分类 + +- 预约排班 + - 医生排班管理 + - 创建排班计划 + - 轮班设置 + - 时间段管理 + - 预约列表 + - 预约状态管理 + - 并发控制(防止超额) + - 自动提醒 + +- 咨询管理 + - 咨询会话列表 + - 对话记录查看 + - 医生排班关联 + - 对话记录导出 + +- 随访管理 + - 随访任务列表 + - 随访模板管理 + - 自定义字段 + - 模板 CRUD + - 随访记录查看 + - 随访台账导出 + +- 健康数据中心 + - 透析数据统计 + - 透析次数/完成率 + - 透析效果评估 + - 日常监测数据 + - 血压/血糖/体重趋势 + - 异常值统计 + - 化验数据汇总 + - 指标异常排行 + - 上报率统计 + - 设备数据管理 + - 设备绑定/解绑 + - 数据质量监控 + +- 告警中心 + - 告警规则配置 + - 阈值设置 + - 触发条件 + - 通知方式 + - 告警列表 + - 按严重程度/类型筛选 + - 告警确认/处理 + - 危急值管理 + - 危急值阈值配置 + - 危急值响应记录 + - 响应时效统计 + +- 内容管理 + - 科普文章 + - 富文本编辑器 + - 分类/标签管理 + - 审核/发布/下架 + - 阅读量统计 + - 公告管理 + - 创建/发布/下架 + - 定向推送 + - 首页轮播配置 + - 轮播图管理 + - 排序/定时 + +- 积分商城运营 + - 商品管理 + - 商品 CRUD + - 分类管理 + - 上下架 + - 订单管理 + - 订单列表/状态流转 + - 发货/退款处理 + - 积分规则 + - 签到积分 + - 行为积分 + - 积分兑换比例 + - 积分账户管理 + - 用户积分余额 + - 积分明细 + +- AI 智能分析 + - AI 分析任务 + - 化验单解读 + - 趋势分析 + - 健康报告摘要 + - AI 提示词管理 + - 提示词模板 CRUD + - 场景分类 + - AI 使用统计 + - 调用量/成功率 + - 成本分析 + +- 统计报表 + - 患者增长分析 + - 新增/活跃/流失趋势 + - 咨询量统计 + - 高峰时段/热门主题 + - 随访完成率 + - 任务完成情况 + - 改进建议 + - 积分商城销售数据 + - 兑换量/积分消耗 + +- 系统管理 + - 账号权限 + - 用户/角色/权限管理 + - RBAC + 行级数据权限 + - 操作日志审计 + - 组织架构 + - 部门/岗位管理 + - 系统设置 + - 字典管理 + - 菜单配置 + - 消息推送配置 + - 数据安全 + - 数据备份 + - 合规声明配置 + - 隐私政策管理 + +--- + +## 四、平台技术能力 + +- 安全合规 + - JWT 身份认证 + - RBAC 权限控制 + - 多租户数据隔离 + - 操作日志审计 + - PII 敏感数据加密 + - 隐私政策 & 用户协议 + +- 多租户架构 + - 共享数据库 + 租户隔离 + - 租户级配置 + - 独立部署支持 + - 数据导入/导出 + +- 开放集成 + - OpenAPI 文档自动生成 + - 蓝牙设备协议对接 + - 微信生态集成(登录/支付/消息推送) + - AI 能力扩展接口 diff --git a/docs/健康管理/HMS系统功能文档.xlsx b/docs/健康管理/HMS系统功能文档.xlsx new file mode 100644 index 0000000..900fbf3 Binary files /dev/null and b/docs/健康管理/HMS系统功能文档.xlsx differ diff --git a/docs/健康管理/HMS系统设计思路.md b/docs/健康管理/HMS系统设计思路.md new file mode 100644 index 0000000..49e5e69 --- /dev/null +++ b/docs/健康管理/HMS系统设计思路.md @@ -0,0 +1,313 @@ +# HMS 健康管理平台 — 系统设计思路 + +> 版本: v1.0 | 日期: 2026-04-29 | 面向: 客户技术评审 + +--- + +## 1. 设计理念 + +### 1.1 以患者为中心,以数据为驱动 + +HMS 平台的设计围绕一个核心命题:**让患者的健康数据产生实际价值。** + +传统健康管理系统的痛点是"数据沉睡"——患者上报了血压、血糖、化验结果,但数据只是存在数据库里,没有人看,也没有人分析。HMS 从设计之初就要求:每一条数据都必须有明确的用途。 + +``` +患者上报数据 ──→ 实时展示(趋势图/仪表盘) + ──→ 智能告警(异常指标自动通知医护) + ──→ AI 分析(趋势预测、健康报告) + ──→ 随访触发(逾期未上报自动催办) + ──→ 统计报表(运营决策依据) +``` + +### 1.2 三个设计原则 + +| 原则 | 含义 | 体现 | +|------|------|------| +| **安全先行** | 医疗数据是敏感个人信息,安全不是"加一层",而是架构的内建能力 | PII 字段加密存储、操作审计、知情同意、多租户隔离 | +| **渐进演进** | 不追求一步到位,但每一步都要为下一步打好基础 | 模块化单体架构,可按需拆分为微服务 | +| **开放集成** | 平台不封闭,能接入外部设备和系统 | 蓝牙设备协议、OpenAPI 文档、微信生态集成 | + +--- + +## 2. 整体架构 + +### 2.1 三端覆盖 + +``` +┌─────────────────────────────────────────────────┐ +│ HMS 健康管理平台 │ +├──────────────┬──────────────┬───────────────────┤ +│ 患者端 │ 医护端 │ 管理后台 │ +│ 微信小程序 │ 微信小程序 │ PC Web │ +│ │ │ │ +│ · 健康数据 │ · 患者管理 │ · 工作台仪表盘 │ +│ · 预约服务 │ · 咨询回复 │ · 患者管理 │ +│ · 在线咨询 │ · 随访管理 │ · 健康数据中心 │ +│ · 积分商城 │ · 告警处理 │ · 内容管理 │ +│ · AI 报告 │ · 报告解读 │ · 统计报表 │ +│ · 健康资讯 │ │ · 系统管理 │ +└──────────────┴──────────────┴───────────────────┘ + │ │ │ + └──────────────┼───────────────┘ + │ + ┌─────────┴─────────┐ + │ 统一 API 网关 │ + │ /api/v1/* │ + └─────────┬─────────┘ + │ + ┌───────────────┼───────────────┐ + │ │ │ + ┌────┴────┐ ┌─────┴─────┐ ┌────┴────┐ + │ 基础模块 │ │ 核心业务 │ │ AI 模块 │ + │ │ │ │ │ │ + │ 认证权限 │ │ 健康管理 │ │ 化验解读 │ + │ 工作流 │ │ 预约排班 │ │ 趋势分析 │ + │ 消息中心 │ │ 随访管理 │ │ 报告摘要 │ + │ 系统配置 │ │ 透析管理 │ │ │ + └────┬────┘ └─────┬─────┘ └────┬────┘ + │ │ │ + └───────────────┼───────────────┘ + │ + ┌─────────┴─────────┐ + │ PostgreSQL 18 │ + │ + Redis 7 │ + └───────────────────┘ +``` + +### 2.2 三层架构 + +| 层级 | 职责 | 特点 | +|------|------|------| +| **L1 基础层(erp-core)** | 错误体系、事件总线、模块 trait、共享类型 | 零业务依赖,所有模块的基础 | +| **L2 业务层** | 认证、配置、工作流、消息、健康管理、AI | 各模块独立,互不依赖,通过事件总线通信 | +| **L3 组装层(erp-server)** | Axum 入口,注册所有模块,统一路由 | 唯一的组装点,模块可插拔 | + +这种分层的设计意图是:**每个业务模块可以独立开发、独立测试、未来按需拆分为独立服务。** 模块之间不存在直接调用关系,所有跨模块通信都通过事件总线异步完成。 + +--- + +## 3. 核心设计决策 + +### 3.1 模块化单体 — 兼顾开发效率与演进弹性 + +**问题:** SaaS 平台在早期应该选单体还是微服务? + +**我们的选择:模块化单体,渐进式拆分。** + +微服务的优势(独立部署、故障隔离)在早期团队规模下被运维复杂度完全抵消。模块化单体保留了单进程部署的简单性,同时通过严格的模块边界确保未来可以零成本拆分。 + +**具体做法:** + +- 每个业务模块实现统一的 `ErpModule` trait(身份、生命周期、权限、事件订阅) +- 模块间零直接依赖,跨模块通信只通过事件总线 +- 所有模块在 `erp-server` 唯一组装点注册 + +``` + erp-core(基础层) + | + +------+-------+-------+------+-------+ + | | | | | | + auth config workflow message health ai + | | | | | | + +------+-------+-------+------+-------+ + | + erp-server(组装层) +``` + +**收益:** +- 新增模块只需实现 trait + 注册,无需修改其他模块 +- 未来高流量模块(如健康管理)可独立拆分为微服务 +- 开发阶段单进程调试,生产环境按需拆分 + +### 3.2 多租户架构 — 数据隔离是底线 + +**问题:** 多个医疗机构使用同一套系统,如何确保数据互不可见? + +**我们的选择:共享数据库 + tenant_id 列过滤 + 中间件自动注入。** + +``` +请求进入 → JWT 中间件提取 tenant_id → 注入 TenantContext + ↓ + 所有数据库查询自动携带 tenant_id 过滤 +``` + +**为什么不用独立数据库?** +- 独立数据库意味着每个新客户都要迁移 schema、管理独立的连接池,运维成本指数级增长 +- 共享数据库 + 严格过滤在 95% 的场景下足够安全,且运维成本线性增长 +- 预留了独立 schema 部署能力,未来有需求的客户可单独隔离 + +**安全保障链路:** +1. 用户登录 → JWT 签发(含 tenant_id) +2. 每次请求 → 中间件从 JWT 提取 tenant_id,注入请求上下文 +3. 所有数据查询 → 自动过滤 tenant_id,应用层无法伪造 +4. 所有数据写入 → 自动填充 tenant_id + +### 3.3 事件驱动 — 模块解耦的核心机制 + +**问题:** 预约确认后需要通知医护、触发消息推送、更新统计数据,如何在模块间协调? + +**我们的选择:事件总线 + Outbox 持久化。** + +传统做法是直接调用:预约模块调用消息模块、统计模块……这会造成模块间网状耦合。事件驱动让每个模块只管"发出事件",不关心谁来消费。 + +``` +预约确认 → 发布 appointment.confirmed 事件 + ├──→ 消息模块:发送通知给患者 + ├──→ 随访模块:创建透析后随访任务 + └──→ 统计模块:更新预约完成率 +``` + +**可靠性保障:** +- 所有事件持久化到 `domain_events` 表(Outbox 模式) +- 事件处理失败自动进入 Dead Letter 存储,不丢失 +- 支持事件重放,服务重启后可恢复未处理事件 + +### 3.4 安全合规 — 内建而非外挂 + +**问题:** 医疗数据涉及患者隐私,如何满足合规要求? + +安全不是上线前加一层加密就够的,而是从架构层面内建的能力。 + +| 安全能力 | 实现方式 | +|----------|---------| +| **身份认证** | JWT + Access Token 15 分钟 + Refresh Token 7 天轮换 | +| **权限控制** | RBAC 角色权限 + 行级数据权限 + 按钮级控制 | +| **数据加密** | PII 字段(身份证、手机号)AES-256-GCM 加密存储 | +| **数据脱敏** | API 返回时自动脱敏(手机号 138****1234、身份证 ****1234) | +| **操作审计** | 关键操作记录变更前后状态,哈希链防篡改 | +| **输入防护** | SQL 注入防护(参数化查询)、XSS 防护、限流保护 | +| **知情同意** | 患者数据处理前获取明确同意,可随时撤回 | + +--- + +## 4. 数据架构 + +### 4.1 实体模型(44 个业务实体) + +平台围绕健康管理场景建模,覆盖从患者建档到长期随访的完整数据链路。 + +| 业务域 | 实体数 | 核心实体 | +|--------|--------|---------| +| 患者管理 | 8 | 患者、家属、标签、医患关系、设备绑定、知情同意 | +| 医护管理 | 2 | 医生档案、排班 | +| 健康数据 | 9 | 健康档案、体征记录、体征小时聚合、日常监测、化验报告、趋势、诊断、用药记录、设备读数 | +| 透析管理 | 1 | 透析记录(独立 crate,可扩展为血透专科模块) | +| 预约排班 | 1 | 预约(原子 CAS 并发控制,防止超额) | +| 随访管理 | 4 | 随访任务、随访记录、随访模板、模板字段 | +| 咨询管理 | 2 | 咨询会话、咨询消息 | +| 内容管理 | 5 | 文章、分类、标签、文章标签关联、文章修订 | +| 告警系统 | 5 | 告警、告警规则、危急值告警、危急值响应、危急值阈值 | +| 积分商城 | 6 | 积分账户、积分规则、商品、订单、积分流水、签到 | +| 线下活动 | 2 | 活动、活动报名 | + +### 4.2 数据安全策略 + +医疗数据的安全性不是单一技术点,而是一个分层防御体系: + +``` +┌─────────────────────────────────────────────┐ +│ 应用层 │ +│ · JWT 认证 + RBAC 权限 + 行级数据范围 │ +│ · API 统一入口,无直接数据库访问 │ +├─────────────────────────────────────────────┤ +│ 数据层 │ +│ · PII 字段加密(AES-256-GCM + KEK/DEK) │ +│ · HMAC 盲索引(加密字段仍可等值查询) │ +│ · 脱敏展示(API 返回自动脱敏) │ +│ · 软删除(数据不物理删除,保留审计追溯) │ +├─────────────────────────────────────────────┤ +│ 存储层 │ +│ · tenant_id 列隔离 │ +│ · 乐观锁(version 字段防并发覆盖) │ +│ · UUID v7 主键(时间排序 + 全局唯一) │ +└─────────────────────────────────────────────┘ +``` + +**加密方案说明:** + +| 项目 | 方案 | 目的 | +|------|------|------| +| 加密算法 | AES-256-GCM | 认证加密,防篡改 + 保密 | +| 密钥管理 | KEK/DEK 分层 | 每租户独立 DEK,主密钥定期轮换 | +| 查询支持 | HMAC-SHA256 盲索引 | 加密后仍支持手机号/身份证精确查询 | +| 脱敏规则 | 手机号 138\*\*\*\*1234、身份证 \*\*\*\*\*1234 | 展示层自动脱敏,原始数据不离开服务端 | + +--- + +## 5. 技术选型 + +每一项技术选择都经过实际验证,不是纸上谈兵。 + +| 层次 | 选择 | 选择理由 | +|------|------|---------| +| **后端语言** | Rust | 内存安全 + 高性能,无 GC 停顿,适合医疗系统长期稳定运行 | +| **Web 框架** | Axum 0.8 | Tokio 官方维护,类型安全路由,tower 中间件生态 | +| **ORM** | SeaORM 1.1 | 异步、编译期类型检查、迁移工具链完善,SQL 错误在编译期暴露 | +| **数据库** | PostgreSQL 18 | 企业级可靠性,JSON 支持,丰富的索引类型,医疗场景的稳妥选择 | +| **缓存** | Redis 7 | 限流 token bucket + 热点数据缓存 + 会话管理 | +| **前端** | React 19 + Ant Design 6 | 企业后台 UI 标配,组件丰富,开发效率高 | +| **状态管理** | Zustand 5 | 极简 API,无 boilerplate,适合中等复杂度应用 | +| **小程序** | Taro 4.2 + React 18 | 跨端兼容,React 开发体验一致,微信生态集成成熟 | +| **AI 集成** | SSE 流式 + 大模型 API | 化验解读、趋势分析、报告摘要,流式输出实时反馈 | + +**为什么选择 Rust?** + +Rust 在医疗系统中的独特价值: + +- **零运行时异常** — 编译期消除空指针、数组越界、数据竞争,医疗系统不能接受运行时崩溃 +- **可预测的性能** — 无 GC 停顿,响应时间稳定,告警通知延迟可预测 +- **长期维护性** — 编译器强制类型安全,代码重构不会静默引入 bug +- **并发安全** — 编译期保证线程安全,适合处理实时设备数据上报 + +--- + +## 6. 质量保障 + +### 6.1 测试金字塔 + +| 测试类型 | 数量 | 覆盖目标 | +|----------|------|---------| +| 单元测试 | 225+ | 每个 service 函数、验证逻辑、脱敏逻辑 | +| 集成测试 | 159+ | API 端点 → 数据库完整链路,使用真实 PostgreSQL | +| 多租户测试 | 独立测试 crate | 数据隔离验证,确保跨租户不可见 | +| E2E 测试 | 5 套 | 前端关键用户流程(Playwright) | + +### 6.2 验证机制 + +每个功能交付前必须通过: + +- `cargo check` — 全 workspace 编译无错误 +- `cargo test --workspace` — 所有测试通过 +- 功能验证 — 启动服务,在浏览器/小程序中实际操作 +- 生产构建 — `pnpm build` 前端生产构建通过 +- 数据库验证 — 迁移可正向/反向执行 + +### 6.3 关键数据保障 + +| 保障项 | 机制 | +|--------|------| +| 预约防超额 | 原子 CAS 操作,并发安全 | +| 数据不丢失 | 软删除 + 事件 Outbox 持久化 + Dead Letter | +| 数据不篡改 | 乐观锁(version 字段)+ 审计日志哈希链 | +| 接口一致性 | 统一 `ApiResponse` 包装,OpenAPI 文档自动生成 | + +--- + +## 总结 + +HMS 平台的设计围绕四个关键词展开: + +1. **模块化** — 每个业务模块独立自治,通过事件总线协作,可按需拆分演进 +2. **安全合规** — 加密存储、操作审计、知情同意、多租户隔离,从架构内建安全能力 +3. **数据驱动** — 每条数据都有明确用途:展示、告警、分析、触发、统计 +4. **渐进演进** — 当前是模块化单体,未来可按模块独立拆分为微服务,无需重写 + +平台已完成核心功能开发,包括 44 个业务实体、25+ 管理后台页面、40 个小程序页面、225+ 单元测试。具备投入试运行的基础条件。 + + + + + + + diff --git a/docs/健康管理/演示文稿1.pptx b/docs/健康管理/演示文稿1.pptx new file mode 100644 index 0000000..70f1855 Binary files /dev/null and b/docs/健康管理/演示文稿1.pptx differ