V0.1 讨论稿

面向华法林患者的抗凝管理工具

这是一份可视化的产品需求方案,用来把“抗凝日记 / INR Tool”从文字需求转成可讨论、可开发、可部署的页面化方案。 重点聚焦:服药计划INR 记录风险提示PDF 导出未来家属协同扩展

一句话定位

帮助长期服用华法林的患者安全、连续地完成服药、INR 监测、异常记录与复查管理。

目标药物 仅华法林
一期定位 单用户自管
长期定位 患者 + 家属协同
交付形态 App + 微信小程序
Why now

用户痛点地图

一期产品必须优先解决真实高频问题,而不是一次性做成“大而全平台”。

服药容易出错

  • 不同日期不同剂量
  • 漏服 / 重复服 / 临时停服混乱
  • 剂量与片数换算容易出错

INR 管理断档

  • 需要定期复查但容易拖延
  • 检测周期不固定
  • 结果散落在纸单、相册、聊天记录中

风险感知不足

  • 用户不知道是否在目标范围
  • 异常时不知道优先关注什么
  • 症状与 INR 无法形成连续记录

长期管理难持续

  • 每天只需几秒,但最怕中断
  • 复诊时缺少完整记录
  • 家属协同需求未来会很强
Scope

MVP 范围分层

把范围分清楚,才能稳住节奏,避免第一版过重。

基础能力

  • 登录 / 注册 / 账号绑定
  • 抗凝档案
  • INR 范围设置
  • 检测周期设置

服药管理

  • 品牌 + 规格管理
  • 固定每日剂量 / 每 N 天轮训(1-7)
  • 临时调药与停服
  • 每日执行记录

INR 与复查

  • 手动录入 INR
  • 异常状态提示
  • 医生建议简版
  • 下次复查日期

风险与日志

  • 症状/出血记录
  • 连续日志沉淀
  • 基础统计图表
  • 仅信息提示,不输出医疗建议

导出与多端

  • PDF 双版本导出(自查版 / 复诊版)
  • App 主端
  • 小程序与 App 功能同步实现
  • 底部 Tab 导航统一设计

可做但不宜过重

  • 检查报告图片上传
  • INR 趋势图基础版
  • 服药完成率统计
  • 首页摘要卡片增强

为什么放在 P1

  • 不影响核心闭环成立
  • 可在交互定稿后自然补充
  • 避免第一版在非关键处消耗过多时间

二期方向

  • 家属协同 / 代录 / 权限
  • OCR 识别 INR 报告
  • 用药知识科普
  • 多语言
  • 医生端/后台增强

二期前提

  • 先验证单用户日常留存
  • 先跑通服药 + INR + PDF 主闭环
  • 保证数据模型支持角色扩展
Core Loop

核心业务闭环

每天打开一次,每次操作尽量在 10 秒内完成。

01

设置抗凝档案

设置品牌、规格、目标 INR 范围、检测周期,以及固定剂量或每 N 天轮训计划。

02

每日服药提醒

用户查看今日应服剂量,记录已服 / 漏服 / 停服。

03

定期复查 INR

到期提醒后手动录入 INR,系统按目标范围标记状态。

04

记录医嘱与症状

补充医生建议、下次复查日期、出血/不适症状,形成完整上下文。

05

导出 PDF

输出自查版与复诊版两类 PDF,满足个人留存与就诊沟通两种场景。

Modules

核心模块可视化

产品重心不在“页面数量”,而在“模块边界是否清楚”。

抗凝档案

固定药物为华法林;记录品牌、规格、目标 INR、检测周期、当前状态。

配置型

服药计划

以固定每日剂量或每 N 天轮训为主,支持临时调整与停服方案,不采用按周循环。

最核心

每日服药记录

把计划变成执行日志,明确区分已服、漏服、停服。

高频

INR 记录

手动录入数值,形成趋势线并与目标范围联动。

高价值

医嘱 / 症状

用最轻的方式承载复查建议、症状上下文与后续扩展空间。

增强闭环

登录与身份

小程序支持微信登录并强制绑定手机号;App 同步支持微信登录,并预留苹果 / Google 一键登录。

账号体系

PDF 导出

把散落记录沉淀为可打印、可复诊、可分享的结构化报告,并区分两种输出模板。

一期必须
Dose Design

服药剂量设计原则

这一块是整个 MVP 最容易返工、也最值得提前定清的部分。

原则 1:优先输入片数

用户录入时以“几片”为主,更符合真实用药习惯,再由系统自动换算剂量;支持常用分数片输入。

原则 2:片数与 mg 双向换算

界面同时展示片数与 mg,并允许两者互相换算,例如 1 片 = 2.5mg;支持 1/4、1/2、1/3、2/3、3/4 片。

原则 3:先选规格再换算

品牌与规格分开管理;用户先选 2.5mg/片、3mg/片等规格,再联动输入 mg 或片数。

原则 4:停服必须单独建模

停服不等于漏服,它既可能是临时状态,也可能是计划级操作。

Brands

华法林品牌与规格建议

优先按国内常见销售品牌初始化,后续支持服务端配置文件增删改。

建议内置品牌(国内优先)

  • 信谊:上海上药信谊药厂有限公司,规格 2.5mg × 60 片
  • 齐普华:齐鲁制药有限公司,规格 2.5mg × 80 片
  • 中杰:河南中杰药业有限公司,规格 2.5mg × 40 片
  • Marevan:Orion Corporation,规格 3mg

配置策略

  • 服务端维护品牌配置文件 / 表
  • 字段至少包括:品牌名、厂家、mg_per_tablet、pack_size、启用状态、排序
  • 客户端下发后本地缓存,保证换算逻辑一致
  • 用户端可选“其他品牌”,但后台可持续补充标准品牌库
Screens

一期页面结构

App 与小程序功能同步实现,底部 Tab 导航完全一致,控制在 4-5 个入口。

App

  1. 登录:微信登录 / 手机验证码登录,并预留 Apple / Google
  2. 底部 Tab:首页 / 服药 / INR / 我的(如需第 5 个入口,可放记录)
  3. 首页:今日服药 / 最新 INR / 下次复查 / 信息提示
  4. 服药页:计划、执行、停服、历史
  5. INR 页:录入、列表、趋势
  6. 症状页:新增、查看、关联备注
  7. 导出页:从首页、记录页或“我的”进入,不单独占底部 Tab
  8. 设置页:档案、品牌、规格、提醒、目标范围

微信小程序

  1. 微信自动登录,首次必须绑定手机号
  2. 底部 Tab:首页 / 服药 / INR / 我的(与 App 完全一致)
  3. 功能范围与 App 同步实现
  4. 支持服药记录、INR 录入、图表查看、导出 PDF、基础设置
Prototypes

页面原型结构(文字线框版)

这部分不是视觉稿,而是信息架构原型。先把“每个页面放什么、主按钮在哪、入口怎么走”定下来。

信息架构

统一 Tab 架构

App 与小程序保持一致,先按 4 Tab 落地,预留第 5 个“记录”。

首页
服药
INR
我的
记录(预留)
  • 导出 PDF 不放到底部 Tab,避免低频能力占核心导航。
  • “记录”若后续单独成立,可承接服药、INR、症状、医嘱历史汇总。
  • 当前建议先做 4 Tab:首页 / 服药 / INR / 我的。
登录页

登录 / 绑定原型

小程序和 App 的主链路不同,但账号收口必须统一到手机号。

小程序登录
品牌 Logo + 产品名
微信授权登录按钮
首次登录后:绑定手机号
手机号输入
验证码输入 + 获取验证码
确认绑定并进入首页
App 登录
品牌 Logo + 产品名
微信登录
手机号验证码登录
Apple 登录(预留)
Google 登录(预留)
首次登录后进入建档引导
  • 所有登录方式最终统一到一个用户主账号。
  • 首次登录后建议强制完成:手机号、品牌、规格、INR 范围、检测周期。
首页

首页原型

首页只做高频决策页:今天该做什么、最近状态如何、下一步去哪。

首页
今日服药卡:应服 1/2 片(1.25mg)
已服
漏服
停服
最新 INR:2.4 | 2026-04-15
下次复查:3 天后
信息提示:你今天还有 1 次提醒未完成
快捷入口:录入 INR / 记录症状 / 导出 PDF
  • 首页不展示过重图表,以任务和状态为主。
  • “已服 / 漏服 / 停服”按钮必须单手可点、操作后可撤销。
服药页

服药页面原型

服药页是核心业务页,要解决“今天怎么吃、周期怎么设、历史怎么看”。

服药主页
当前品牌:信谊 2.5mg/片
当前计划:每 3 天轮训
Day1:1/2 片 | Day2:1/4 片 | Day3:3/4 片
今日应服:Day2 = 1/4 片
操作:已服 / 漏服 / 停服 / 修改今日记录
最近 7 天执行记录
服药计划编辑
计划模式:固定每日 / 每 N 天轮训
N = 1~7
分数片选择:1/4 1/3 1/2 2/3 3/4 1
自动换算 mg
提醒时间:一次 / 二次 / 多次
保存并立即生效
INR 页

INR 页面原型

INR 页兼顾录入、趋势与复查安排,应该是第二高频页面。

INR 首页
最近一次 INR:2.4
目标范围:2.0 - 3.0
趋势图(近 30 天)
下次复查日期:2026-04-18
按钮:录入 INR
录入 INR
检测日期
INR 数值输入
备注
医生建议
下次复查日期
保存
我的页

我的页面原型

承接低频能力:档案、设置、导出、账号、安全与模板配置入口。

我的
用户信息:昵称 / 手机号 / 已绑定微信
抗凝档案:品牌、规格、目标 INR、检测周期
提醒设置:一次 / 二次 / 多次提醒
PDF 导出:自查版 / 复诊版
账号与安全:手机号、更换绑定、第三方登录管理
关于与反馈
流程

导出与首次建档流程

把两个关键跨页流程先定下来,后面设计和接口才不会散。

首次建档

  1. 登录成功
  2. 绑定手机号(小程序首次必做)
  3. 选择品牌与规格
  4. 设置 INR 范围
  5. 设置检测周期
  6. 设置服药计划与提醒
  7. 进入首页

PDF 导出

  1. 首页 / 我的 / 记录进入导出
  2. 选择模板:自查版 / 复诊版
  3. 选择时间范围
  4. 预览摘要
  5. 生成 PDF
  6. 保存 / 分享
Data Model

业务对象骨架

先定对象边界,再进入接口和数据库设计。

User

账号、手机号、微信 unionid/openid、第三方登录预留字段。

AnticoagulationProfile

品牌、规格、INR 范围、检测周期、服药状态。

MedicationPlan

固定每日剂量 / 每 N 天轮训(1-7)/ 临时调整 / 停服计划。

MedicationPlanItem

cycle_day_index、tablet_count、dose_mg、提醒策略、允许分数片规则。

MedicationLog

每日计划剂量、实际剂量、状态、记录时间。

InrRecord

检测日期、INR 数值、结果状态、备注。

DoctorAdvice

医嘱文本、下次复查日期、调药备注。

SymptomLog

症状类型、程度、日期、备注。

ReminderRule

一次提醒、二次提醒、多次提醒、提醒间隔与失效条件。

BrandCatalog

服务端可配置品牌/规格字典,支持后续运营维护。

Attachment

为报告图片上传和后续 OCR 预留。

Roadmap

建议推进顺序

先定复杂规则,再做界面,再落表结构,整体效率最高。

Step 1

先定服药模块

片数优先输入、品牌规格换算、固定每日 / 每 N 天轮训(1-7)、停服逻辑、每日状态流转。

Step 2

再定页面信息架构

统一 App / 小程序 Tab,明确登录链路、首页、服药页、INR 页、我的页,以及非 Tab 的导出入口。

Step 3

最后定接口与数据库

基于已确认的业务对象,进入 Laravel / API / DB 设计,并把品牌目录与 PDF 模板做成可配置服务端资源。

Open Questions

当前仍需继续拍板的关键点

核心产品决策已基本确定,剩下主要是默认值与模板细节。

Q1多次提醒的默认节奏怎么定:例如首次提醒后 15 分钟、30 分钟、60 分钟?
Q2第 5 个 Tab 是否需要“记录”,还是保持 4 个 Tab 即可?
Q3PDF 自查版与复诊版的字段差异是否做成后台可配置模板?
Q4服务端品牌配置是否允许同一品牌多个规格并存下发?
Q5登录后是否需要首次引导用户立即完成:手机号、品牌、规格、INR 范围、检测周期?