安阳县直医院学生体检信息化管理系统 / 现行功能明细
查看功能清单
现行功能明细 · V4.0

安阳县直医院学生体检信息化管理系统功能明细

本文件依据现有前端、后端、数据库及设备接入代码反向整理,完整描述学校集中体检、初升高毕业生体检、社会散检和补检业务。系统已覆盖学生建档、批次管理、导检单、医生扫码采集、身高体重秤、欧姆龙血压计、Topcon RM-1 屈光仪、复测质控、个人报告、腾讯云 TokenHub Hy3 健康提示、家长查询、规范化导出和安全审计。

建设状态 核心业务闭环已形成
核心终端 总后台 / 小程序 / 医生网页端 / 复核质控端
已接设备 身高体重秤 / 欧姆龙血压计 / Topcon RM-1
报告能力 个人报告 / AI健康提示 / 防伪追溯
01

项目概述

依据现有系统代码、数据库结构和现场设备接入逻辑整理现行功能边界。

1.1 系统定位

本系统面向医院组织实施的学生健康体检业务,以体检批次和学生体检编号为主线, 将学校、年级、班级、学生档案、特殊人群、导检单、医生项目权限、现场设备采集、 复测质控、报告生成、家长查询、数据导出和日志审计纳入统一业务平台。

基础档案标准化

统一维护学校、年级、班级、在校学生、初升高毕业生、散检人员和其他临时体检对象。

现场采集闭环

医生扫码识别导检单,按授权项目进入采集页,支持蓝牙自动采集和手动录入兜底。

设备身份管理

血压计和屈光仪建立医院设备台账、医生绑定关系、连接状态、最后使用时间和审计记录。

复测与最终采用值

同一项目可保留首次测量和复测记录,记录复测原因、采集方式、设备身份及最终采用值。

报告与AI健康提示

根据体检结果生成个人报告,通过腾讯云 TokenHub Hy3 逐条生成健康提示,并支持人工复核。

安全审计与追溯

围绕账号、接口、页面、导出、报告、设备和AI调用建立权限、脱敏、日志及防伪追溯机制。

1.2 能力概况

业务域能力
基础档案 学校、年级、班级、学生档案、特殊人群、Excel 批量导入、导入历史与失败明细。
体检业务 批次、批次学生、体检项目、导检单、体检记录、复测记录和最终采用值。
设备接入 身高体重秤、欧姆龙 J735 单工位/双工位、Topcon RM-1 + IRXON BT578V2。
报告服务 个人报告、AI健康提示、复核开放、家长查询、报告防伪与追溯。
数据治理 规范化筛选、查询后导出、明文导出复核、日志审计、敏感信息脱敏。
02

系统范围

系统由医院总后台、微信小程序、医生网页端和复核质控端组成,公共接口和任务程序由后端统一支撑。

系统端现行功能主要使用对象
医院总后台 工作台、基础档案、学生导入、体检批次、项目配置、导检单、体检记录、复测记录、医生账号、设备分配、复核账号、后台权限、报告、AI任务、TokenHub配置、统计导出、日志审计和系统设备配置。 医院管理员、体检中心管理人员
微信小程序 医院首页、家长报告查询、医生登录与找回、医生工作台、设备状态、扫码体检、各项目采集、单工位/双工位血压采集、屈光仪自动取数、复测提交和报告查看。 现场医生、学生家长
医生网页端 医生工作台、个人资料、授权项目记录、设备测量记录、异常记录和本人业务统计。 医生账号
复核质控端 异常记录复核、报告复核、AI健康提示复核、导出申请复核、操作日志查看和报告预览。 复核质控医生、医院质控人员
公共接口与任务程序 账号鉴权、扫码解析、设备绑定、体检提交、报告查询、防伪验证、AI任务处理、报告任务处理和运行环境检查。 系统内部调用、运维人员
现行范围不建设学校账号和学校后台。学校、年级、班级和学生数据由医院总后台统一管理; 初升高毕业生、散检人员等无固定学校班级对象,通过学生类型、体检编号和导检单编号完成建档、采集和报告查询。
03

角色与权限设计

通过分角色、分项目、分数据范围控制,保障业务操作边界清晰。

3.1 角色分类

角色 职责说明 登录入口 权限边界
总后台管理员账号 负责系统配置、基础数据管理、体检批次、医生账号、复核质控账号、导检单、报告、导出和日志审计。 网页端总后台登录 可管理全部业务数据;敏感信息查看、明文导出、报告开放等操作需按权限、二次确认和日志控制。
医生账号 负责现场项目采集、设备连接、手动录入兜底、复测提交和本人项目数据查看。 小程序端登录、网页端医生后台登录 仅能查看和操作本人授权的体检项目;不能越权查看无关项目和非必要敏感信息。
复核质控医生 负责异常数据复核、复测确认、最终采用值确认、AI健康提示复核、明文导出复核和报告开放复核。 网页端复核质控登录 可查看质控所需的多项目数据;所有复核、修改、驳回、通过操作必须留痕。
家长访客 在手机上通过微信扫一扫导检单二维码,或在小程序报告查询入口验证学生信息后查看学生报告。 微信扫码、小程序报告查询入口 仅能查看验证通过且已开放的单个学生报告;不能查看其他学生和后台数据。

3.2 医生项目权限跳转机制

医生登录小程序后,系统根据后台配置的体检项目权限控制扫码后的可访问页面。医生扫码学生导检单二维码后,后端校验医生权限、体检批次、学生状态和项目完成状态,并按“一个医生账号绑定一个或多个体检项目”的规则返回对应采集页面。
体检项目 权限编码 扫码后页面 采集字段 / 页面内容 限制规则
既往重要病史 medical_history 既往病史采集页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
项目字段:肝炎、肺结核、先天性心脏病、肾炎、风湿病、其他病名称。
支持多选和备注;病史数据属于敏感信息,页面和导出需按权限控制。
形态 morphology 形态检查采集页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
项目字段:身高、体重、BMI、体型判定、检查医生、测量方式、设备信息。
可接入身高体重设备;仅能提交形态项目数据。
眼科(含屈光) ophthalmology 眼科检查采集页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
项目字段:右眼裸眼视力、左眼裸眼视力、右眼屈光镜 S、右眼屈光柱镜 C、右眼屈光轴位 A、左眼屈光镜 S、左眼屈光柱镜 C、左眼屈光轴位 A、是否为角膜塑形镜(OK镜)佩戴者、沙眼、结膜炎、色觉、测量方式、设备信息。
屈光字段统一归入眼科项目;可接入屈光仪,设备采集失败时支持手动录入兜底并记录采集方式。
五官 ent 五官检查采集页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
项目字段:耳、鼻、扁桃体、龋齿。
默认正常;异常时需选择异常类型或填写说明。
机能 function_exam 机能检查采集页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
血压字段:血压单位 mmHg、收缩压/高压、舒张压/低压、脉搏、测量时间、测量方式、设备信息、异常标识、原始数据。
可接入欧姆龙 J735;血压异常、设备异常、体动、不规则脉搏、袖带异常、房颤等标识触发复测或复核提示。
内科 internal_medicine 内科检查采集页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
项目字段:心、肺、肝、脾。
默认正常;异常项需记录异常内容、医生意见和备注。
外科 surgery 外科检查采集页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
项目字段:头部、颈部、淋巴结、胸部、脊柱、四肢、皮肤。
默认正常;异常项需记录异常内容、医生意见和备注。
结核分枝杆菌感染检测 tb_screening 结核筛查采集页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
项目字段:筛查日期、密切接触史、可疑症状、TST横径纵径、双圈、水疱坏死或淋巴管炎、胸部X光片结果、备注。
按筛查表单完整采集;涉及阳性、异常、疑似结果时进入质控复核流程。
质控复核 quality_control 学生体检总览 / 质控复核页 基础信息核验:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
质控内容:查看学生全部项目完成情况、异常项、复测记录、最终采用值、AI健康提示和报告生成状态。
复核质控端和总后台均可执行复核;所有操作必须留痕。
体检项目页面均显示同一套基础信息核验字段,不再单独设置“学生基础信息核验页”。屈光检查不再作为独立口径,统一并入“眼科(含屈光)”。对于初升高毕业生、社会散检人员等特殊对象,学校名称、年级、班级、学籍号允许为空或选填,但姓名、性别、出生日期、体检编号/导检单编号必须保留,用于现场核验和报告查询。后台可为同一医生账号分配一个或多个项目权限;医生扫码后只展示其被授权项目入口,已完成项目显示完成状态,未授权项目不可进入。
权限判断流程: 1. 医生登录后,后端返回医生可操作的体检项目权限列表。 2. 医生扫码导检单二维码,后端解析二维码 token。 3. 后端校验学生是否属于当前体检批次,并读取该学生各项目完成状态。 4. 后端校验医生是否拥有对应体检项目的操作权限。 5. 若医生仅有一个项目权限,系统直接跳转对应采集页;若拥有多个项目权限,系统进入学生项目入口页,由医生选择本次采集项目。 6. 页面展示基础信息核验字段和当前项目字段,不展示无关敏感信息。 7. 所有提交接口再次进行后端权限校验,防止越权提交。 8. 复核质控医生和总后台管理员可进入复核流程,复核、驳回、修改、开放报告等操作全部记录日志。
设备权限与项目权限同步校验:欧姆龙设备仅供已授权机能项目的医生使用;Topcon RM-1 屈光仪仅供已授权眼科项目且已绑定对应设备的医生使用。 设备连接、首次配对、占用冲突、解除绑定和设备数据提交均由后端再次校验,不能仅依赖前端状态。
04

核心业务流程

从基础建档、设备登记到现场采集、质控和报告开放形成完整闭环。

基础档案与导入
创建体检批次
关联学生并打印导检单
医生设备配对与扫码采集
复测与质控复核
报告开放与家长查询

4.1 标准业务步骤

  1. 总后台维护学校、年级、班级和体检项目基础资料。
  2. 新增学生档案或通过 Excel 批量导入在校学生、初升高毕业生和散检人员;系统记录导入批次、成功明细和失败原因。
  3. 创建体检批次,设置体检类型、日期、项目范围、报告开放和 AI 健康提示规则。
  4. 将学生加入批次,系统生成体检编号、导检单编号和导检单识别凭证。
  5. 总后台单个或批量打印导检单;二维码仅承载可校验识别凭证,不直接写入敏感身份信息。
  6. 后台配置医生项目权限,并根据现场工位分配欧姆龙血压计或 Topcon RM-1 屈光仪。
  7. 医生在小程序工作台完成设备连接;设备身份、绑定关系和当前连接状态同步到系统。
  8. 医生扫描导检单,后端校验账号、批次、学生、项目权限和项目完成状态。
  9. 系统进入授权项目采集页,设备项目自动接收数据;设备异常时可使用手动录入兜底。
  10. 首次提交形成体检记录和测量明细;再次提交要求填写复测原因,并保留历史测量。
  11. 复核质控端处理异常数据、复测结果、AI健康提示、报告开放和明文导出申请。
  12. 报告任务生成个人报告,AI任务按队列逐条生成健康提示;完成复核后开放家长查询。
  13. 家长通过导检单二维码或小程序查询入口完成身份验证,查看已开放报告和防伪信息。
  14. 后台按批次、学校、年级、班级、学生、项目和状态筛选统计并规范化导出。
05

医院总后台功能

总后台采用顶部大菜单和左侧二级菜单结构,覆盖基础档案、体检业务、账号权限、体检报告和安全配置。

5.1 工作台
  • 学校、学生、批次、报告和设备总体统计。
  • 当前批次体检进度、项目完成率、异常与复测数量。
  • 报告生成、AI任务和报告开放状态提示。
5.2 学校、年级、班级管理
  • 新增、编辑、停用和条件查询。
  • 年级按学校关联,班级按学校和年级联动。
  • 查询结果可按正式表格样式导出。
  • 新增和编辑采用弹窗表单,提交期间锁定按钮,防止连续点击重复入库。
5.3 学生档案与特殊人群
  • 管理在校学生、初升高毕业生、散检人员和其他临时体检对象。
  • 支持体检编号、导检单编号、学籍号、姓名、性别、出生日期和联系方式。
  • 特殊人群的学校、年级、班级和学籍号可为空。
  • 支持按姓名、体检编号、导检单编号及组织维度查询。
5.4 学生批量导入与历史
  • 提供规范 Excel 模板和正确示例数据。
  • 按学生类型校验必填字段,支持新增和更新。
  • 记录原始文件名、SHA-256摘要、有效行数、成功数、失败数、操作人和导入时间。
  • 保留逐行成功/失败明细、原始字段 JSON 和失败原因,便于追溯。
5.5 体检批次与批次学生
  • 配置批次名称、体检类型、日期、项目范围、报告开放和AI开关。
  • 按批次批量关联学生,支持查看已加入和未加入人员。
  • 批次学生页面提供生成导检单和前往打印的完整操作链路。
5.6 体检项目与字段配置
  • 维护既往病史、形态、眼科、五官、机能、内科、外科和结核筛查项目。
  • 维护项目编码、显示名称、蓝牙设备需求、启停状态和字段规则。
  • 字段注释、单位、默认值、异常选项和校验范围统一管理。
5.7 导检单管理
  • 生成导检单编号、识别凭证和二维码。
  • 支持单个打印、按批次批量打印和打印状态管理。
  • 导检单展示学生核验信息、体检项目、二维码及医院信息。
5.8 体检记录与复测记录
  • 体检记录保存项目最终结果、采集方式、医生、状态和备注。
  • 复测记录保存每次测量数据、设备身份、异常标识、原始报文和最终采用状态。
  • 支持按导检单识别凭证、学生姓名、体检编号、批次和项目检索。
5.9 医生账号与项目权限
  • 维护账号、姓名、身份证号、科室岗位、状态和密码。
  • 一个医生可授权一个或多个体检项目。
  • 支持按医生姓名和账号独立检索。
  • 医生账号同时用于微信小程序和医生网页端。
5.10 医疗设备台账与分配
  • 欧姆龙血压计按医生和 A/B 工位管理设备台账与分配关系。
  • Topcon RM-1 与 IRXON BT578V2 建立一一配套关系,并分配至眼科医生。
  • 支持医生端首次配对自动登记、后台人工分配、解除绑定、停用和最后连接时间查看。
5.11 复核账号与后台权限
  • 维护复核质控账号、姓名、身份证号、状态和说明。
  • 支持报告、AI健康提示、导出申请和异常记录复核。
  • 总后台管理员按功能权限控制菜单访问、查看和编辑能力。
5.12 报告管理
  • 查看个人报告编号、体检编号、学生、批次、学校、年级、班级及状态。
  • 支持报告生成、预览、重新生成、复核和开放家长查看。
  • 记录报告版本、生成时间、追溯码、防伪凭证和 AI 状态。
5.13 AI任务与腾讯云 TokenHub 配置
  • 配置 TokenHub API 地址、API Key、Hy3 模型、超时、温度、Token、重试和规则回退。
  • 直接维护 AI 健康提示词和自定义表达要求。
  • AI任务支持待处理、处理中、成功、失败、待复核和已复核状态。
  • 任务按顺序逐条执行,失败可重试,避免批量并发阻塞。
5.14 数据统计与规范化导出
  • 按组织、批次、项目、完成状态、异常状态和报告状态筛选。
  • 导出学生档案、体检结果、异常名单、未完成名单和统计数据。
  • 导出文件使用规范标题、字段顺序、列宽、日期和数值格式。
5.15 日志审计与系统设备配置
  • 查询登录、扫码、录入、复测、设备绑定、报告、AI、导出和权限变更日志。
  • 维护医院信息、报告参数、欧姆龙插件配置和公共系统参数。
  • 关键配置变更执行二次确认并写入审计日志。
后台页面现行筛选条件配套能力
学校管理 学校名称、状态。 按查询结果导出;弹窗新增编辑;重复提交保护。
年级管理 年级名称、所属学校、状态。 按查询结果导出;学校下拉选择。
班级管理 班级名称、学校、年级、状态。 学校和年级联动;按查询结果导出。
学生档案 / 特殊人群 姓名、体检编号、导检单编号、学生类型、学校、年级、班级、性别、状态。 批量导入、导入历史、查询后导出。
体检批次 批次名称、体检类型、日期、状态。 查看批次进度、项目范围和报告规则。
批次学生 学生姓名、体检批次、学校、年级、班级、关联状态。 批量关联、生成导检单。
导检单 导检单识别凭证、学生姓名、体检编号、批次、学校、年级、班级、状态。 单个和批量打印。
体检记录 导检单识别凭证、学生姓名、体检编号、批次、项目、医生、项目状态。 查看最终结果和采集方式。
复测记录 导检单识别凭证、学生姓名、体检编号、批次、项目、医生、设备及采用状态。 查看原始数据、设备信息和最终采用值。
医生账号 / 项目配置 医生姓名、账号、科室岗位、项目权限、状态。 账号维护和项目授权。
复核账号 医生姓名、账号、状态。 复核权限和账号维护。
报告管理 报告编号、体检编号、学生姓名、批次、学校、年级、班级、报告状态、AI状态。 预览、复核、重新生成和开放。
AI任务 与报告管理保持一致,并增加任务状态、模型和失败原因。 重试、查看返回内容和复核。

5.17 特殊人群处理规则

人员类型学校/年级/班级/学籍号系统识别方式
在校学生 按学校组织结构正常维护。 学籍号、体检编号、导检单编号和基础身份信息。
初升高毕业生 允许为空,可填写原学校和目标学校。 体检编号/导检单编号 + 姓名 + 性别 + 出生日期。
社会散检人员 允许为空,按散检类型建档。 体检编号/导检单编号 + 姓名 + 性别 + 出生日期。
补检或临时对象 按实际情况填写,不强制补造学校班级信息。 体检编号、导检单二维码和基础身份信息。
06

微信小程序端功能与页面

一个小程序同时承载医院展示、家长报告查询、医生登录、设备管理和现场体检采集。

6.1 小程序首页与未登录状态

页面 / 入口 展示内容 说明
小程序首页 医院简介、体检服务说明、报告查询入口、医生登录入口。 普通打开小程序时先进入首页,不要求家长登录;页面以医院形象展示和报告查询为主。
导检单二维码直达 扫描导检单二维码后,直接打开对应学生报告验证页面。 报告未开放时提示“报告暂未开放”;报告开放后完成学生信息验证即可查看。
学生体检报告查询 学生类型、学校、年级、班级、学籍号/体检编号、姓名、性别、出生日期。 家长普通打开小程序后,可通过信息查询孩子学生的体检报告;初升高毕业生、散检人员可不选择学校、年级、班级。
医生登录入口 账号、密码、忘记账号或密码。 医生登录成功后才显示体检模块、扫码采集、项目入口和历史记录。
小程序不是拆成“医生端”和“家长端”两个独立系统,而是一个小程序内按登录状态和入口来源展示不同页面:未登录为医院简介与报告查询,医生登录后进入体检采集工作台。

6.2 医生登录与账号找回

  • 医生在小程序体检模块内先采用账号密码登录,暂不建设手机号验证码登录。
  • 医生账号同时支持小程序端登录和网页端医生后台登录。
  • 登录后展示医生姓名、所属机构、负责项目、今日采集人数。
  • 登录态与后端权限绑定,接口请求必须携带医生身份凭证。
  • 医生忘记账号或密码时,可通过医生姓名和身份证号码找回账号或重置密码,找回过程需记录操作日志。
  • 所有账号密码按当前需求采用 MD5 散列存储,并预留后续升级为更安全密码算法的字段空间。
  • 工作台显示医生姓名、授权体检项目、今日采集数量和项目完成情况。
  • 显示身高体重秤、欧姆龙血压计和 Topcon RM-1 屈光仪的真实连接状态,不以“扫描到设备”代替“已连接”。
  • 未连接设备显示连接入口,分别进入身高体重秤、欧姆龙血压计和屈光仪设备页面。
  • 已登记设备保存设备身份;同一小程序运行会话内保持连接,重新进入采集页可直接复用,冷启动后按登记信息自动重连。
  • 欧姆龙支持单工位和 A/B 双工位;屈光仪支持医生首次配对自动绑定和后台预分配两种方式。

6.3 医生工作台与设备中心

6.4 扫码体检

  • 调用小程序扫码能力识别导检单二维码。
  • 后端校验二维码 token、学生状态、批次状态和医生权限。
  • 扫码后展示学生基础信息核验字段:学校名称、年级、班级、学籍号、姓名、性别、出生日期。
  • 根据医生项目权限进入对应体检项目采集页面;若医生拥有多个项目权限,则进入学生项目入口页后选择采集项目。

6.5 基础信息与体检项目字段

医生端采集字段按学生体检完整流程配置。每个体检项目页面均展示基础信息核验字段;系统默认展示当前医生负责项目所需字段,默认正常项可一键确认,异常项需选择异常类型或填写备注,数值类项目需进行范围校验和异常提示。

6.5.1 学生基础信息核验字段

字段分类 字段内容 说明
基础信息核验 学生类型、体检编号/导检单编号、学校名称、年级、班级、学籍号、姓名、性别、出生日期。 每个体检项目页面均显示,用于现场核验学生身份;医生端仅允许核验,不允许随意修改学生档案主数据。
特殊人群字段规则 初升高毕业生、社会散检人员、其他临时体检对象。 学校名称、年级、班级、学籍号改为选填;系统以体检编号/导检单编号 + 姓名 + 性别 + 出生日期进行核验和追溯。

6.5.2 既往重要病史

项目 字段内容 录入规则
既往重要病史 肝炎、肺结核、先天性心脏病、肾炎、风湿病、其他病名称。 支持多选;选择“其他”时需填写具体病名称;无相关病史时可选择“无”。

6.5.3 眼科与屈光检查项(统一归入眼科)

检查项目 采集字段 说明
裸眼视力 右眼裸眼视力、左眼裸眼视力。 支持手动录入或设备采集后回填。
右眼屈光 右眼屈光镜 S、右眼屈光柱镜 C、右眼屈光轴位 A。 按屈光仪返回数据或医生手动录入,保留原始数据。
左眼屈光 左眼屈光镜 S、左眼屈光柱镜 C、左眼屈光轴位 A。 按屈光仪返回数据或医生手动录入,保留原始数据。
常规眼科 沙眼、结膜炎、色觉。 默认正常;异常时选择异常状态或填写备注。
OK镜 是否为角膜塑形镜(OK镜)佩戴者。 选项为“是/否”,用于报告提示和后续统计分析。
采集来源 测量方式、设备信息、原始数据、异常标识。 测量方式包括设备采集、手动录入、复测录入;便于追溯。

6.5.4 常规体检项目

分类 检查字段 默认值 / 判定规则
形态 身高、体重、BMI、体型判定、检查医生、测量方式、设备信息。 体型判定包括正常、超轻、超重、肥胖;可结合年龄、性别、身高体重规则自动判断,也支持医生确认。
五官 耳、鼻、扁桃体、龋齿。 默认正常;异常时选择异常状态或填写备注。
机能 血压 mmHg、收缩压/高压、舒张压/低压、脉搏、测量时间、测量方式、设备信息、异常标识。 参考正常值可在后台配置;系统根据规则判定正常、偏高、偏低,并对体动、不规则脉搏、袖带异常、房颤等标识提示复测或复核。
内科 心、肺、肝、脾。 默认正常;异常时选择异常状态或填写备注。
外科 头部、颈部、淋巴结、胸部、脊柱、四肢、皮肤。 默认正常;异常时选择异常状态或填写备注。

6.5.5 结核分枝杆菌感染检测

检查项目 采集字段 说明
筛查信息 筛查日期、既往有无肺结核患者密切接触史。 筛查日期必填;密切接触史选项为有、无、不详。
可疑症状 咳嗽咳痰大于等于2周、咳嗽咳痰小于2周、咯血或血痰、其他。 支持多选;选择“其他”时填写具体症状。
TST检查结果 横径、纵径(mm)、双圈、水疱坏死或淋巴管炎。 横径、纵径为数值字段;双圈、水疱坏死或淋巴管炎为选项字段。
影像结果 胸部X光片结果。 支持正常、异常、未检查及备注说明。
备注 备注。 用于补充医生说明、复核意见或特殊情况记录。
07

医疗设备接入方案

设备接入已覆盖身高体重秤、欧姆龙血压计和 Topcon RM-1 屈光仪,并与医生账号、体检记录和复测记录关联。

7.1 设备接入总览

设备接入方式小程序页面后台管理状态
身高体重秤 微信小程序 BLE,按设备 JSON 串口协议接收、拼包和解析。 pages/device/scale
pages/exam/morphology
系统与设备配置、测量记录 已接入
欧姆龙 J735 血压计 欧姆龙官方微信小程序插件,支持单工位和 A/B 双工位。 pages/device/omron
pages/exam/function
pages/exam/function-dual
血压计设备分配 已接入
Topcon RM-1 屈光仪 IRXON BT578V2 串口蓝牙适配器,微信小程序 BLE FFE1 透明传输。 pages/device/refractor
pages/exam/eye
屈光仪设备分配 已接入

7.2 设备连接与状态管理通用规则

  • 医生工作台显示设备真实连接状态、绑定状态和设备入口。
  • “已登记”表示设备身份已保存,“已连接”表示当前小程序进程已建立连接并完成数据订阅,两者分开判断。
  • 设备连接成功后保存设备名称、设备标识、服务特征、医院设备编号和最后验证时间。
  • 同一小程序运行会话内在设备页、医生工作台和采集页之间切换时复用连接;冷启动后按已登记身份重新连接。
  • 设备采集失败时允许手动录入,但必须保存采集方式、设备状态、操作人和必要备注。

7.3 欧姆龙 J735 血压计

功能实现
官方插件 使用欧姆龙官方微信小程序插件,插件授权和小程序配置已纳入项目。
设备分配 后台维护设备台账,可将设备分配至医生 A/B 工位;医生端同步后台分配和本机连接状态。
单工位采集 医生连接一台血压计后,在单人采集页自动接收收缩压、舒张压、脉搏及设备异常标识。
双工位采集 支持 A/B 两台血压计按顺序准备和确认连接,双工位页面分别接收两名学生的数据,避免串台。
数据记录 保存测量时间、插件设备身份、工位、收缩压、舒张压、脉搏、体动、不规则脉搏、袖带和房颤等标识。
异常与复测 设备断开、结果异常或复检时提示重新连接/重新测量;再次提交必须填写复测原因。

7.4 身高体重秤

接入流程: 1. 扫描并连接目标 BLE 设备。 2. 获取设备服务 UUID 和特征值 UUID。 3. 开启 Notify 数据监听。 4. 接收 ArrayBuffer 并按协议进行字符串转换与分包合并。 5. 解析设备 JSON,提取身高、体重及设备信息。 6. 校验数值范围并自动计算 BMI。 7. 将标准化结果、采集方式和原始 JSON 提交后端。

7.5 Topcon RM-1 屈光仪接入

现场方案采用 Topcon RM-1 自动屈光仪配套 IRXON BT578V2 串口蓝牙适配器。 BT578V2 将 RM-1 的 RS232 串口输出转换为 BLE 通知数据,小程序连接 BT578_BLE 并订阅 FFE1 特征值, 完成右眼和左眼球镜 S、柱镜 C、轴位 A 的自动接收与回填。

7.5.1 硬件与通信参数

项目现行参数与规则
屈光仪主机 Topcon RM-1,屈光数据通过主机 RS232 串口输出。
蓝牙适配器 IRXON BT578V2,支持蓝牙 V4.0 BLE;手机端使用 BT578_BLE,不使用经典蓝牙 SPP。
BLE 特征值 串口透明传输特征值 0000FFE1-0000-1000-8000-00805F9B34FB。程序不固定服务 UUID,而是连接后遍历服务并验证 FFE1。
串口基准参数 BT578V2 出厂参数为 9600 bps、无校验、8 数据位、1 停止位;适配器参数须与 RM-1 串口输出参数保持一致。
连接限制 BT578V2 同一时间仅保持一个蓝牙主设备连接;使用小程序时不同时连接电脑串口蓝牙。

7.5.2 医生配对、设备登记与独占绑定

  1. 医生账号必须具备“眼科(含屈光)”项目权限。
  2. 医生进入屈光仪设备页,搜索附近 BT578V2;系统按设备名称、IRXON/BT578、FFE0/FFE1 广播信息和信号强度排序。
  3. 选择设备后先连接 BLE,再遍历服务和特征值;只有确认 FFE1 支持 Notify/Indicate 后才认定为有效屈光仪模块。
  4. 小程序将蓝牙名称、DeviceId、服务 UUID、特征 UUID 和终端标识提交后端确认。
  5. 后端优先匹配后台已建立的设备台账;首次出现的新模块可自动登记,并生成 RF-xxxx 医院内部设备编号。
  6. 一套 Topcon RM-1 + BT578V2 只允许绑定一个医生账号;一个医生眼科工位只保留一个 REF 屈光仪绑定。
  7. 已被其他医生占用、后台停用或与当前预分配设备不一致的模块,系统拒绝连接并写入审计日志。
  8. 管理员可在后台预分配、解除绑定、停用设备或维护主机序列号、蓝牙名称、DeviceId 和备注。

7.5.3 连接保持与自动重连

  • 首次配对成功后,本机保存设备身份、服务特征和后台设备编号。
  • 同一小程序进程内从设备页返回工作台或进入眼科页面时,不主动关闭 BLE 连接,持续保持 FFE1 通知订阅。
  • 小程序冷启动后不会把历史缓存误判为当前已连接,而是重新建立 BLE 连接并再次订阅 FFE1。
  • 眼科页面加载时自动尝试连接已绑定屈光仪;直连失败后自动扫描并优先匹配已登记的 DeviceId 或蓝牙名称。
  • 连接完成后持续监听串口数据,不需要医生在小程序中点击“读取数据”按钮。

7.5.4 首次测量自动接收与串口分包处理

  • BT578V2 通过 FFE1 Notify 主动推送 RM-1 串口数据,程序不主动读取特征缓存,避免把历史数据误认为当前学生结果。
  • 接收层支持 BLE 多包拼接;遇到 ETX/EOT 结束符立即成帧,没有结束符时按约 900 毫秒无新数据完成一帧。
  • 支持 RM-1 将右眼和左眼拆分为两个串口帧的情况,在 30 秒窗口内自动合并左右眼结果。
  • 支持 R/L 眼别后纵向输出 S、C、A,支持带 S/C/A 标签、同一行左右眼、固定宽度 ASCII、JSON 和 XML 等格式。
  • 只有左右眼 S/C/A 完整且解析可信度达到安全阈值时才自动填写;低可信度数据保留为诊断信息,不写入医疗结果。
  • 系统使用测量指纹去重,避免同一组结果被蓝牙重复通知后重复填入。
  • 开始新学生、作废重测或断开连接时清理接收缓冲和左右眼临时合并状态,防止上一名学生数据串入。

7.5.5 眼科页面采集规则

功能处理规则
自动回填 自动填写右眼和左眼球镜 S、柱镜 C、轴位 A;记录接收时间、解析格式和可信度。
裸眼视力 裸眼视力不能由屈光度换算,必须由医生使用视力表逐眼实测后填写。
结果锁定 设备结果写入或医生开始手动编辑后锁定当前学生屈光数据,后续迟到蓝牙数据不再覆盖。
作废并重测 点击“作废本次屈光结果,重新测量”后,清空当前未提交 S/C/A、重置接收代次和缓冲区,并重新等待下一组左右眼结果。
手动兜底 设备无法使用时可手动录入;设备采集后人工修正时标记为“设备采集后手动修正”。
数值校验 球镜 S:-30.00~+30.00D;柱镜 C:-15.00~+15.00D;轴位 A:0~180°。
提交追溯 提交设备品牌、型号、医院设备编号、蓝牙 DeviceId/名称、原始 ASCII、HEX、解析格式、可信度、测量指纹和是否人工修正。

7.5.6 异常处理与现场诊断

  • 未搜索到设备:检查 BT578V2 供电、蓝灯状态、手机蓝牙和微信位置/蓝牙权限。
  • 发现多台设备:设备页显示候选列表,由医生选择当前 RM-1 配套模块;已绑定设备优先匹配。
  • 找不到 FFE1:系统不保存候选设备身份,并提示该模块未提供 BT578V2 串口透传特征。
  • 连接断开:眼科页面显示断开状态,可按已登记设备重新连接。
  • 收到数据但无法识别:保留可见文本和 HEX 原始报文,支持一键复制诊断数据,不自动写入结果。
  • 设备已被其他医生绑定:后端拒绝连接,需由管理员在“屈光仪设备分配”中核对或解除原绑定。

7.5.7 后台设备台账

  • 一条设备记录表示一台 Topcon RM-1 与一只 IRXON BT578V2 的固定配套关系。
  • 展示医院编号、主机型号和序列号、蓝牙名称、DeviceId、当前医生、账号、状态和最后连接时间。
  • 支持新增配套设备、维护资料、分配眼科医生、解除绑定和停用设备。
  • 医生端首次配对、连接冲突、后台分配、解除和资料变更均写入审计日志。
08

复测机制与质量控制

首次测量、复测、设备原始数据、医生修正和最终采用值均可追溯。

8.1 复测记录机制

环节系统处理
首次提交 形成项目体检记录和第一条测量明细,保存医生、采集方式、设备身份、原始数据和测量时间。
再次提交 识别为复测,页面必须填写复测原因;新结果作为独立测量明细保存,不覆盖历史记录。
最终采用值 根据业务权限确认某次测量为最终采用值,报告使用该结果。
设备异常 记录连接失败、数据未返回、异常标识、手动录入或设备采集后修正等情况。
修改留痕 记录操作人、时间、修改前后值、原因、终端、IP、设备和请求编号。

8.2 血压复测

  • 血压结果异常、体动、不规则脉搏、袖带异常、房颤提示或现场医生判断需要复核时,可重新测量。
  • 单工位和双工位均保留设备工位、插件设备身份、收缩压、舒张压、脉搏和异常标识。
  • 已有体检记录再次提交时,复测备注输入框必须填写,后端再次校验。

8.3 眼科屈光作废重测

  • 设备自动写入或医生手动修改后,当前屈光结果进入锁定状态,防止后续串口数据覆盖。
  • 医生点击“作废本次屈光结果,重新测量”,确认后清空本次未提交的左右眼 S/C/A。
  • 系统同步清除蓝牙接收缓冲、左右眼临时结果、测量指纹和上一帧诊断数据,立即恢复自动监听。
  • 已提交记录进行复测时,新的屈光结果作为复测记录保存,并要求填写复测原因。

8.4 复核质控

  • 复核质控端和总后台可查看异常体检结果、复测记录、最终采用值、AI健康提示、报告开放和导出申请。
  • 处理结果包括通过、驳回、退回修改、标记复测和确认最终采用值。
  • 每次复核保存复核人、时间、意见、业务对象、前后状态和操作日志。
  • 体检结果或采用值变化后,关联报告进入重新生成或版本更新流程。
09

报告生成与 AI 健康提示

个人报告基于最终采用的体检结果生成,AI仅提供健康教育提示,不修改医生数据或替代诊断。

9.1 学生个人报告

报告区块内容
基本信息 学生类型、体检编号、导检单编号、学校、年级、班级、学籍号、姓名、性别、出生日期。
体检结果 既往病史、形态、眼科(含屈光)、五官、机能、内科、外科和结核筛查最终采用值。
异常与复测 展示规则提示、医生意见、复测情况和复核结论。
AI健康提示 腾讯云 TokenHub Hy3 根据去标识化体检指标生成通俗健康管理建议。
防伪追溯 报告编号、追溯码、验证凭证、版本、生成时间、报告状态和防伪二维码。

9.2 腾讯云 TokenHub Hy3 配置

  • 后台配置 AI 供应商、Chat API 地址、API Key、Key名称/ID和模型名称,现行模型为 Hy3。
  • 可配置连接超时、总超时、最大输出 Token、温度、自动重试次数和规则健康提示回退。
  • 后台直接维护“AI健康提示词”正文和“自定义表达要求”,程序固定附加医疗安全、隐私保护和禁止诊断规则。
  • 支持保存配置、保存并测试、仅测试已保存配置,并记录连接测试返回、HTTP状态、请求ID和Token用量。
  • TokenHub 未配置、调用失败或重试耗尽时,可自动回退到本地规则健康提示,避免报告流程整体阻塞。

9.3 AI任务队列

  • 每份报告建立独立 AI 任务,记录任务类型、目标报告、模型、状态、返回内容、失败原因和重试次数。
  • 任务按顺序逐条处理,每次只锁定并执行一条,防止重复调用和并发冲突。
  • 宝塔计划任务调用 /corn/process_ai_task.php,持续处理待处理任务。
  • AI任务页面筛选条件与报告管理保持一致,并可按任务状态、模型和失败原因进一步查询。
  • 批次配置要求人工复核时,AI成功结果进入待复核状态;复核通过后写入报告健康提示。

9.4 去标识化和医疗安全规则

  • 发送给 TokenHub 的数据不包含姓名、学校、班级、学籍号、证件号、手机号、医生姓名和设备原始报文。
  • AI仅根据必要体检指标生成健康教育提示,不修改体检数值、异常标识或医生结论。
  • 输出不得形成疾病诊断、用药方案或替代医生判断的表述。
  • 报告固定显示健康提示免责声明。
报告免责声明: 本报告中的智能健康提示仅作为健康管理参考,不作为疾病诊断或治疗依据。 如对体检结果有疑问,请及时咨询专业医生或到医疗机构复查。
10

家长报告查询方案(小程序端)

家长查看不单独建设一个端,统一放在小程序未登录访问能力中;支持扫码直达报告验证页,也支持普通打开小程序后按学生信息查询。

10.1 查看方式一:扫码导检单二维码直达

  1. 家长使用微信扫描学生导检单二维码。
  2. 小程序直达该学生的报告验证页面。
  3. 系统要求补充或确认学生信息,防止二维码被他人直接查看。
  4. 验证通过后展示学生体检报告。
  5. 家长可查看体检结果、健康提示和报告说明。
  6. 支持保存或导出报告。

10.2 查看方式二:普通打开小程序后查询

验证字段 录入方式 是否必填 说明
学生类型 单选筛选 建议必选 选项包括在校学生、初升高毕业生、散检人员、其他;用于控制后续查询字段是否必填。
学校名称 单选筛选 / 可空 在校学生建议必填;特殊人群选填 初升高毕业生、散检人员没有明确学校时,可不选择学校。
年级 单选筛选 / 可空 在校学生建议必填;特殊人群选填 根据学校联动筛选年级;特殊人群可跳过。
班级 单选筛选 / 可空 在校学生建议必填;特殊人群选填 根据学校和年级联动筛选班级;特殊人群可跳过。
学籍号 / 体检编号 手动输入 选填 在校学生可填写学籍号;初升高毕业生、散检人员可填写导检单上的体检编号。
姓名 手动输入 必填 必须与学生档案姓名一致。
性别 单选筛选 建议必填 男 / 女;用于减少同名同生日误匹配。
出生日期 手动输入 必填 输入身份证上的年月日,格式建议为 YYYY-MM-DD。

10.3 访问控制

  • 报告未审核或未开放时,家长不能查看。
  • 二维码 token 不应直接包含身份证号、手机号等敏感信息。
  • 查询验证不使用“证件号后四位”;在校学生可使用学校、年级、班级、姓名、性别、出生日期组合验证,初升高毕业生和散检人员使用体检编号/导检单编号、姓名、性别、出生日期组合验证。
  • 当姓名和出生日期匹配到多名学生时,系统提示补充性别、体检编号、学校或其他辅助信息,不直接展示报告。
  • 验证失败次数过多时,系统进行临时限制。
  • 家长查看报告的时间、IP、验证结果应记录日志。
11

安全、隐私与合规机制

安全、隐私、日志审计和防伪溯源统一归入总后台能力,不单独建设“安全端”;围绕学生敏感信息、体检数据、报告文件和访问行为建立必要且可落地的安全管理能力。

11.1 全流程数据脱敏机制

数据脱敏方面,系统从接口、页面、导出、日志、AI调用等环节进行必要脱敏。医生端仅展示当前体检项目所需信息;家长端通过导检单二维码或小程序学生信息查询完成验证;后台明文查看和明文导出需要权限控制、二次确认和日志记录。
环节 控制要求
数据库 字段结构清晰,字段注释完善;身份证号、手机号、体检结果等敏感字段限制非授权访问。
接口 根据角色权限返回必要字段,医生端仅返回当前体检项目所需数据。
页面 身份证号、手机号等字段默认脱敏展示;确需明文查看时需二次确认并记录日志。
导出 默认脱敏导出,明文导出需复核质控医生或总后台具备相应权限后审批,并记录导出日志。
日志 日志中不得记录完整身份证号和完整手机号,统一采用脱敏格式。
AI调用 AI分析前进行去标识化处理,仅传递必要体检指标,不传姓名、学校、班级、身份证号、手机号。

11.2 三维日志审计体系

日志审计方面,系统建立用户维度、业务维度、安全维度三类日志体系,记录登录、扫码、录入、复测、修改、审核、查看、导出、越权访问、验证失败等全流程行为。重要日志不可由普通管理员删除,支持按学校、批次、学生、项目、操作人、时间、风险等级查询。
日志维度 记录内容
用户维度 登录、退出、扫码、查看报告、导出数据、权限变更等行为。
业务维度 学生档案变更、项目录入、复测提交、最终采用值确认、报告生成、报告审核等行为。
安全维度 登录失败、越权访问、二维码验证失败、高频访问、敏感数据导出、接口异常等行为。

日志字段建议

  • 操作人ID、操作人姓名、角色、所属机构。
  • 操作类型、业务对象、学校、体检批次、学生体检号、体检项目。
  • 修改前数据、修改后数据、修改原因。
  • IP地址、终端信息、设备信息、请求编号、操作时间。
  • 风险等级、处理状态、备注说明。

11.3 报告防伪溯源机制

报告防伪方面,学生个人报告、学校总结报告、区域汇总报告均生成唯一报告编号、防伪二维码、追溯码、版本号、生成时间、报告状态、动态水印和文件校验信息。扫码可验证报告真伪、报告版本、生成时间和报告状态,实现报告全流程防伪溯源。
报告类型 防伪与追溯内容
学生个人报告 唯一报告编号、防伪二维码、追溯码、版本号、生成时间、报告状态、动态水印。
学校总结报告 学校名称、体检批次、导出人、导出时间、报告编号、追溯码、动态水印。
区域汇总报告 区域名称、统计范围、生成单位、生成时间、报告编号、防伪二维码、追溯码。
扫码验证页面 展示报告真伪、报告版本、生成时间、报告状态和文件校验结果。

11.4 基础安全要求

  • 采用 HTTPS 进行接口访问。
  • 后台账号、医生账号、复核质控账号均支持角色权限控制。
  • 所有账号密码按当前需求采用 MD5 散列存储;数据库不保存明文密码。
  • 医生端按体检项目授权访问。
  • 家长查看报告需完成学生信息验证。
  • 敏感导出、明文查看、报告重新生成等操作需记录日志。
  • 系统定期备份数据库和报告文件。

11.5 简化落地建议

系统安全能力按医院业务实际需要实施,现行范围包括 HTTPS、账号鉴权、角色与项目权限、敏感字段脱敏、明文导出复核、关键操作二次确认、审计日志、报告开放控制、备份恢复和防伪追溯。安全控制与业务流程同步落地,避免不必要的复杂审批影响现场体检效率。
12

统计分析与数据导出

支持医院、学校和区域管理所需的数据统计和报告输出。

12.1 导出类型

导出内容 说明
学生基础档案 按学生类型、学校、年级、班级导出基础档案;字段包括学生类型、体检编号、学校名称、年级、班级、学籍号、姓名、性别、出生日期等。特殊人群的学校、年级、班级、学籍号可为空。
体检结果明细 导出既往重要病史、形态、眼科(含屈光)、五官、机能、内科、外科、结核筛查等完整体检结果。
异常名单 按异常规则筛选并导出重点关注学生名单。
未完成名单 导出未体检或未完成项目的学生名单。
个人报告 导出学生个人 PDF 报告或图片报告。
学校总结报告 生成学校维度的整体体检结果统计报告。
区域汇总报告 生成区域维度多学校汇总体检分析报告。

12.2 统计维度

  • 按学生类型、学校、年级、班级统计体检完成率;支持单独统计初升高毕业生、散检人员等特殊人群。
  • 按项目统计完成数量、异常数量和复测数量。
  • 按设备统计采集成功率和手动录入比例。
  • 按批次统计报告生成数量、已开放数量、家长查看数量。
  • 按 AI 任务统计生成中、生成成功、生成失败、待复核、已复核数量。
  • 学校、年级、班级、学生档案、体检记录、复测记录、报告等列表按当前筛选条件导出,不导出未命中的数据。
  • 导出文件包含正式标题、导出条件、导出时间、字段表头、适当列宽、边框、冻结表头和统一日期/数值格式。
  • 学校、年级、班级等基础档案页面的导出与页面搜索条件保持一致。
  • 体检编号、导检单编号、报告编号等标识字段按文本格式导出,避免 Excel 自动转科学计数法。

12.3 查询结果导出规范

12.4 明文导出复核

  • 医院最终导出 Excel 暂无固定模板,由系统按规范字段顺序生成。
  • 不需要按教育局、卫健委或第三方平台格式上报。
  • 字段名称、字段顺序、单位格式由系统开发时统一规范,数据表字段注释需完善。
  • 明文导出审批由复核质控医生在网页复核质控端复核,总后台也可按权限执行复核。
13

整体功能清单

按现有代码模块归纳医院总后台、微信小程序、医生网页端和复核质控端功能。

医院总后台
  1. 首页看板与体检进度
  2. 学校、年级、班级管理
  3. 学生档案与特殊人群
  4. 学生 Excel 批量导入、模板和导入历史
  5. 体检批次与批次学生
  6. 体检项目与字段配置
  7. 导检单生成、单个打印和批量打印
  8. 体检记录与复测记录
  9. 医生账号与项目权限
  10. 欧姆龙血压计设备分配
  11. Topcon RM-1 屈光仪设备分配
  12. 复核账号和后台权限控制
  13. 报告管理、预览、复核和开放
  14. AI任务与腾讯云 TokenHub Hy3 配置
  15. 数据统计、查询后导出和明文导出复核
  16. 日志审计、医院信息和设备参数配置
微信小程序
  1. 医院首页和报告查询入口
  2. 家长扫码或信息验证查询报告
  3. 医生账号登录和账号密码找回
  4. 医生工作台、项目权限和今日统计
  5. 身高体重秤真实连接与自动采集
  6. 欧姆龙血压计单工位/双工位连接与采集
  7. Topcon RM-1 + BT578V2 配对、绑定、自动重连和自动取数
  8. 扫码导检单和授权项目入口
  9. 既往病史、形态、眼科、五官、机能、内科、外科和结核筛查
  10. 设备采集、手动录入和设备采集后修正
  11. 复测原因、历史测量和最终结果提交
  12. 报告详情、防伪验证和分享能力
医生网页端
  1. 医生账号登录与退出
  2. 个人资料和授权项目查看
  3. 本人采集记录和测量明细
  4. 异常记录查询
  5. 项目完成情况和业务统计
复核质控端
  1. 复核质控账号登录
  2. 异常体检记录复核
  3. 报告预览、复核和开放
  4. AI健康提示任务查看与复核
  5. 明文导出申请复核
  6. 复核日志和操作留痕
14

技术架构与运行环境

本节按现有项目代码结构整理,不再采用与实际项目不一致的框架建议。

14.1 微信小程序前端

类别现行选型说明
前端框架 uni-app + Vue 3 统一开发微信小程序首页、家长报告、医生工作台、设备管理和体检采集页面。
开发语言 JavaScript / ES6+ 公共模块包括请求、鉴权、设备连接、欧姆龙双工位会话和 Topcon RM-1 解析器。
开发工具 HBuilderX 5.14 用于项目开发、运行和发行。
调试工具 微信开发者工具稳定版 用于小程序预览、真机蓝牙调试、体验版和审核发布。
设备能力 微信 BLE API + 欧姆龙官方插件 身高体重秤和屈光仪使用 BLE;欧姆龙 J735 使用官方插件。

14.2 后端与数据库

类别现行选型说明
后端语言 PHP 8.3 采用模块化 PHP 实现医院总后台、医生网页端、复核质控端和小程序 API。
数据库 MySQL 存储基础档案、批次、导检单、体检记录、测量记录、设备台账、报告、AI任务、账号权限和日志。
鉴权安全 Session / API Token / CSRF / 频率限制 网页端和小程序端分别执行身份校验、权限校验、请求校验和审计记录。