基于Java的SpringBoot 智能预问诊系统源码|门诊病史采集 支持H5/小程序 可二开
给医院做过项目的人都有一个共识:挂号、缴费、检查检验都上了系统,唯独医生问病史这一环,还是靠医生一句一句问、患者凭记忆口头描述。
这篇文章讲清楚预问诊要怎么落地、为什么值得做,最后附一套可运行的完整源码。
技术栈:SpringBoot + MyBatis-Plus + MySQL + Vue + uni-app,一套代码可二开编译 H5 / 微信小程序 / App。
一、病史采集为什么值得先做
预问诊解决的是信息质量和信息遗漏的问题。
问诊本身花不了多少时间,医生的经验也体现在问诊上。真正的问题在于:
- 患者紧张、语速快、记不清,漏说过敏史、说错用药剂量很常见,医生拿到的第一手信息本身就可能是残缺的
- 主诉之外的背景信息(既往病史、用药情况、过敏史等)每次问诊都要从头问一遍,而这些信息本来就能在问诊之前收集好
- 口头描述没有标准结构,医生还要在心里把患者的话重新组织成病历结构,这一步同样占用接诊时间
预问诊做的事情,就是把这一部分信息在患者候诊的空档提前收好、整理好,医生接诊时手里已经有了一份可查看的结构化记录,问诊时可以直接从关键点切入,把时间留给真正需要医生判断的部分。
病史采集工具有什么用
| 关注点 | 具体做法 |
|---|---|
| 信息完整度 | 用药史、过敏史、既往史等列为必填,由流程层面控制 |
| 标准化 | 主诉、现病史、既往史、过敏史等分区块组织、结构化记录,不是一段聊天记录 |
| 阅读效率 | 患者自述中出现需要重点关注的内容,在记录顶部原样显示 |
| 采集时机 | 利用候诊的空档填写,不占用医生接诊时间 |
| 可维护 | 科室、症状、题目、流程全部在后台配置,不用改代码 |
二、一套可用的预问诊系统长什么样
先说明这套系统做的事情边界:它是病史信息采集工具,负责把患者说的话记录下来、整理好、呈现给医生看,不输出任何结论性内容。 是否属于需要重点处理的情况,始终由接诊医生自己判断。
患者端:对话式引导,不需要组织语言
患者进入后先确认科室、性别、年龄等信息,再选择本次不适的症状,之后系统按症状特点逐题引导,全程点选或简单填写。
流程前置了两道合规动作:首次进入弹隐私协议与个人信息说明,正式问诊前还有一页知情同意,明确写明"仅供医生参考、不构成诊断意见"。

科室按性别和年龄自动过滤,男性看不到妇科,儿童看不到老年医学科,减少挂错号。
症状库支持关键字搜索,部分症状旁附带通俗解释,不会描述病情的患者也能选得准。
追问逻辑:按症状单独设计,不是套模板
这是整套系统最花时间的部分。患者选完症状后,系统按该症状的采集要点逐层追问:诱因、持续时间、严重程度、伴随症状等内容。
关键在于每个症状的题目是独立设计的。选"发热"和选"咳嗽",题目、选项、追问深度完全不同,而不是拿一套通用模板套所有症状。

几个影响实际使用体验的细节:
- 选项通俗化:部分专业术语旁配解释图标,患者看不懂也能选对
- 题型自动切换:遇到体温这类数值,自动切成带单位的数值输入并做范围校验
- 多症状逐个问:同时选"发热 + 咳嗽",系统逐个完成对应症状的追问,之后才进入用药史、既往史、过敏史等内容
- 多选逐条追:既往病史勾了几个病,就逐个追问每个病的病程和控制情况
输出:分区块的结构化记录

记录按门诊常用的书写结构分区块:摘要、主诉、现病史、过敏史等内容,以及按条件显示的提示专区。
提示专区只做一件事:把患者自述里医生通常会优先关注的内容原样前置显示。系统不生成结论、不给出建议。
三、技术架构与二次开发空间
系统是 B/S 架构,前后端分离、三端独立,单个JAR加两个前端静态包就能跑起来。
| 端 | 技术选型 | 说明 |
|---|---|---|
| 患者端 | uni-app + Vue | 一套代码可二开编译 H5 / 微信小程序 / App,也可嵌进医院自助机 |
| 管理端 | Vue + Element Plus | 独立后台,维护科室、症状、题目与流程 |
| 服务端 | SpringBoot | 接口层 / 业务层 / 数据层分层清晰 |
后台能配到什么程度: 科室增删改查、性别年龄准入条件、症状库维护、题目与选项编辑、采集流程编排,全部在后台完成。医院加科室、改选项文案、调流程顺序,运营人员自己就能做完,不需要程序员介入。
安全方面: 管理端JWT鉴权、接口公私分离;全站接口限流;参数化查询防注入;对同一会话的重复提交做了拦截,患者连点按钮不会写入脏数据;入参统一校验,异常时返回规范错误码而不是堆栈信息。
二次开发的空间: 接院内系统、加语音输入、接入大模型做语义理解,都不需要动核心采集逻辑。作为模块嵌进现有互联网诊疗产品也比较方便。
四、这套系统适合什么场景用
| 场景 | 怎么用 |
|---|---|
| 医院门诊 | 挂号后推送链接,患者在候诊区填完,医生打开工作站直接看记录 |
| 互联网医院 | 图文或视频问诊前先采集,减少线上沟通中的重复提问 |
| 医院自助机 | 不熟悉手机操作的患者也能在机器上填写 |
| 相关软件公司 | 作为独立模块嵌入现有产品,补齐病史采集这块短板 |
| 基层医疗 / 社区 | 没有HIS也能独立部署,当作标准化病史采集工具 |
五、源码交付内容
- 后端完整源码:SpringBoot 工程,关键逻辑有注释
- 管理后台源码:Vue + Element Plus,覆盖登录、看板、科室、症状、题目、流程、采集记录等页面
- 患者端源码:uni-app,多种题型组件,可二开编译 H5 / 小程序 / App
- 全量业务数据:科室、症状、题目、选项与流程规则含知识库随源码一并交付
结语
预问诊这件事,难点从来不在"能不能问出一段对话",而在问得完整、问得标准、问完能被医生直接查看。
把医生接诊前要问的那些事,做成一套可配置、可复用、可审计的采集流程,患者在候诊的十几分钟里填完,医生接诊时手上已经有一份条理清楚的记录——这才是这套系统真正的价值。
如果你在做医院信息化、互联网医院,或者想给现有产品补一块模块、或作为独立系统使用,都欢迎交流。想看在线演示或了解源码细节,直接私信我。
本系统为在线病史信息采集工具,仅用于患者自述信息的记录与结构化整理,不含诊断或治疗相关功能,不属于医疗器械,不能替代医师面诊。
该系统基于SpringBoot+uni-app构建,支持H5/小程序多端运行,实现门诊病史结构化采集。采用症状驱动的对话式引导、独立设计的追问逻辑与分区块结构化输出,提升信息完整性与医生接诊效率。后端支持科室、症状库、采集流程等全量配置,具备JWT鉴权、防重复提交、参数化查询等安全机制,可无缝对接院内系统或集成大模型语义理解。

1546

被折叠的 条评论
为什么被折叠?



