feat(health): 业务链路打通 — 告警自动随访 + 健康数据积分激励
- 迁移 000157: follow_up_task 新增 source_type/source_id 字段追踪任务来源 - 迁移 000157: points_rule 新增 health_data_report/lab_report_upload/streak_7_days 种子规则 - P0-2: follow_up 事件处理器新增 health_data.critical_alert 消费,告警触发时自动创建随访任务 - 自动查找管床医生分配,critical 级别 1 天内、warning 级别 3 天内 - 新增 alert_auto 随访类型,source_type 标记来源为 critical_alert - P1-1: points 事件处理器新增 daily_monitoring.created 消费,日常监测上报自动获取积分 - P1-1: points 事件处理器新增 lab_report.uploaded 消费,化验报告上传自动获取积分 - 更新 HMS 系统设计思路文档 v2.0(实体数/链路图/业务链路章节全面更新) - 新增业务链路打通讨论记录 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
71
docs/discussions/2026-05-20-business-chain-optimization.md
Normal file
71
docs/discussions/2026-05-20-business-chain-optimization.md
Normal file
@@ -0,0 +1,71 @@
|
||||
# 业务链路打通方案讨论
|
||||
|
||||
> 日期: 2026-05-20 | 参与者: 产品 + 技术
|
||||
|
||||
## 背景
|
||||
|
||||
系统核心功能已开发完成(59 实体 / 376+ 路由 / 990+ 测试),但各业务模块之间的联动存在 5 个关键断点。用户要求全部打通,实现真正的"数据驱动健康管理闭环"。
|
||||
|
||||
## 讨论要点
|
||||
|
||||
### 断点 1: AI 分析被动触发 → 缺少主动分析能力
|
||||
|
||||
**现状:** AI 只在用户发消息时被动工作,不会主动巡检患者数据。
|
||||
|
||||
**打通方案:**
|
||||
- 新增定时任务:每日自动巡检高风险患者(基于阈值 + 趋势)
|
||||
- 新增事件:`health.ai_alert.sent`(已有常量但未使用)→ 触发医护端推送
|
||||
- 趋势预测告警:连续 N 天数据异常 → 发布 `health_data.critical_alert` 增强版
|
||||
- AI 分析结果回写:更新患者风险评估标签
|
||||
|
||||
### 断点 2: 告警只推医护 → 患者端无反馈
|
||||
|
||||
**现状:** 告警触发后只有医护收到,患者不知道自己数据异常。
|
||||
|
||||
**打通方案:**
|
||||
- 告警事件消费:`alert.triggered` → 向患者发微信模板消息/站内通知
|
||||
- 小程序端新增"健康提醒"入口(消息 Tab 下)
|
||||
- 轻量 AI 建议:告警触发时附带一句话建议(如"您的收缩压偏高,建议低盐饮食并按时服药")
|
||||
|
||||
### 断点 3: 随访手动创建 → 缺少数据驱动自动触发
|
||||
|
||||
**现状:** 随访任务主要靠手动或定时,没有根据数据异常自动生成。
|
||||
|
||||
**打通方案:**
|
||||
- 告警 → 随访:`health_data.critical_alert` 事件被随访模块消费 → 自动创建随访任务
|
||||
- 护理计划 → 随访:`care_plan.activated` / `care_plan_item.completed` → 自动创建对应随访
|
||||
- AI 巡检 → 随访:AI 发现高风险 → 建议创建随访(需医护确认)
|
||||
|
||||
### 断点 4: 积分激励面窄 → 健康行为无积分
|
||||
|
||||
**现状:** 积分只来自签到和活动,健康数据上报没有激励。
|
||||
|
||||
**打通方案:**
|
||||
- 健康数据上报 → 积分:`daily_monitoring.created` 消费 → 调用 `earn_points("health_data_report")`
|
||||
- 连续上报奖励:连续 7/14/30 天上报额外奖励(类似签到阶梯)
|
||||
- 积分过期预警:过期前 3 天发通知 → `points.expiring_soon` 事件
|
||||
- 化验报告上传 → 积分:`lab_report.uploaded` 消费 → 积分
|
||||
|
||||
### 断点 5: 咨询孤立 → 与随访/AI 无联动
|
||||
|
||||
**现状:** 咨询是独立闭环,不能直接跳转随访或触发 AI。
|
||||
|
||||
**打通方案:**
|
||||
- 咨询 → 随访:医生端新增"创建随访"按钮 → 调用 createTask API(关联 consultation_session_id)
|
||||
- 咨询 → AI:医生可对咨询上下文触发 AI 分析(传 session_id 作为上下文)
|
||||
- 告警 → 咨询:`alert.triggered` 消费 → 患者端展示"在线咨询"快捷入口
|
||||
- AI 分析结果主动推送:`ai_analysis.completed` → SSE 推送给关注该患者的医护
|
||||
|
||||
## 优先级排序
|
||||
|
||||
| 优先级 | 断点 | 价值 | 复杂度 | 预估工时 |
|
||||
|--------|------|------|--------|---------|
|
||||
| P0 | 断点 2: 告警推患者 | 高(直接影响患者体验) | 低 | 1 天 |
|
||||
| P0 | 断点 3: 告警→自动随访 | 高(闭环核心) | 中 | 2 天 |
|
||||
| P1 | 断点 4: 健康行为积分 | 中(提升活跃度) | 低 | 1.5 天 |
|
||||
| P1 | 断点 1: AI 主动巡检 | 高(差异化竞争力) | 高 | 3 天 |
|
||||
| P2 | 断点 5: 咨询联动 | 中(效率提升) | 中 | 2 天 |
|
||||
|
||||
## 结论
|
||||
|
||||
全部 5 个断点需要打通,按 P0 → P1 → P2 分三批实施。总计约 9.5 天。
|
||||
Reference in New Issue
Block a user