# 15-医院挂号体检预约系统 - 功能说明
# 项目概述
集科室和医生查询、挂号预约、体检套餐预约、就诊记录及体检报告于一体的医疗服务信息系统。管理员维护基础资料,医生处理排班和就诊业务,体检中心维护套餐、预约与报告,用户通过前台提交预约和查询记录。
# 项目概览
# 创新点
- 双预约场景:挂号与体检分别使用预约记录,关联医生或体检套餐。
- 分工式后台:医生处理排班、挂号和就诊记录,体检中心处理套餐、体检预约与报告。
- 服务结果查询:就诊记录和体检报告通过个人中心集中展示。
# 项目亮点
- 角色分工:提供管理员、医生、体检中心、用户等业务入口。
- 业务数据组织:主初始化脚本包含 13 张表;具体业务完成程度以各功能章节及当前实现说明为准。
- 前后端分离:前端负责页面交互,后端通过控制器、服务与数据映射层提供接口。
- 操作体验:提供列表查询、表单编辑、状态展示及个人资料维护入口。
# 管理员
# 账号管理
维护管理员、用户、医生及体检中心账号。
# 医疗资源
管理科室、医生排班和体检套餐。
# 预约管理
维护挂号预约和体检预约记录。
# 业务记录
维护就诊记录、体检报告及支付记录。
# 通知管理
维护系统通知。
# 医生
# 我的排班
维护排班日期、时间段、预约容量及挂号费等资料。
# 挂号预约
查看并处理挂号预约记录。
# 就诊记录
录入诊断结果、处方及医嘱等就诊信息。
# 体检中心
# 套餐管理
维护套餐介绍、检查项目、价格、图片及启用状态。
# 体检预约
查看与维护体检预约记录。
# 体检报告
维护报告内容、检查结论及建议。
# 用户
# 挂号预约
浏览科室和医生,选择预约日期、时间段并填写就诊人资料。
# 体检预约
查看启用的体检套餐,填写日期、时间段及体检人资料后提交。
# 个人记录
查询我的挂号预约、体检预约、就诊记录、体检报告及支付记录。
# 账号服务
查看通知,维护个人信息与密码。
# 功能权限对照表
下表说明当前菜单与业务入口分工。“—”表示未列为该角色的常规入口;不代表已对每个接口完成权限安全审计。
| 功能模块 | 管理员 | 医生 | 体检中心 | 用户 |
|---|---|---|---|---|
| 账号、科室及通知 | 管理 | — | — | 浏览 |
| 医生排班 | 管理 | 我的排班 | — | 预约相关信息 |
| 挂号预约及就诊记录 | 管理 | 处理 | — | 提交查询 |
| 体检套餐、预约及报告 | 管理 | — | 维护处理 | 浏览预约查询 |
| 支付记录 | 管理 | — | — | 查询 |
# 业务状态说明
- 医生排班后台:可预约、已满、已结束。
- 挂号预约后台:待就诊、已就诊、已取消。
- 体检预约后台:待体检、已体检、已取消。
- 前台预约提交与展示:待确认、已确认、已完成、已取消。
# 默认账号
以下为主初始化 SQL 中能够核实的示例账号;需先导入对应脚本。这里不把脚本初始值视为当前运行数据库的实际账号或余额。
| 登录角色 | 角色标识 | 用户名 | 初始密码 |
|---|---|---|---|
| 管理员 | ADMIN | admin | 123456 |
| 医生 | DOCTOR | doctor | 123456 |
| 体检中心 | HEALTH_CENTER | health | 123456 |
| 用户 | USER | user | 123456 |
# 核心业务流程
# 挂号预约
- 浏览科室及医生。
- 填写日期、时间段、联系人和症状。
- 提交挂号预约。
- 后台维护预约处理结果。
- 用户查询就诊记录。
# 体检预约
- 选择套餐。
- 填写预约时间和体检人资料。
- 提交预约。
- 体检中心维护预约及报告。
- 用户查询报告。
# 记录维护
- 工作人员选择关联预约。
- 录入就诊或体检结果。
- 保存记录。
- 用户通过个人中心查询。
# 技术说明
# 系统架构
| 项目 | 当前源码配置 |
|---|---|
| Vue | ^3.4.29 |
| Element Plus | ^2.8.4 |
| Pinia | ^2.2.2 |
| Axios | ^1.7.5 |
| Vite | ^5.3.1 |
| Spring Boot | 3.2.10 |
| Java | 17 |
| MyBatis 集成组件 | 3.0.4 |
| 数据库 | MySQL;具体运行版本以实际部署为准 |
| 身份认证 | JWT;通过登录接口生成令牌 |
前端版本按 package.json 中的声明范围记录,不将依赖范围等同于已安装的精确版本。
# 访问地址
- 后端接口:http://localhost:1000 (opens new window),对应服务端端口配置。
- 前端开发页面:http://localhost:5173 (opens new window),项目未显式覆盖 Vite 默认端口,实际以启动日志为准。
- 登录入口:前端
/login;管理端基础路由/admin。
# 数据库
- 配置数据库名:
a_2026_15_hospital_system。 - 主初始化脚本:
sql/sql.sql。 - 主脚本建表数量:13 张,仅统计当前主脚本的 CREATE TABLE,不包含临时 SQL、迁移脚本或运行时改动。
- 字符集:主脚本采用 utf8mb4。
- 数据表清单:
admin、user、doctor、health_center、department、health_package、schedule、appointment、health_appointment、payment_record、medical_record、health_report、notice。
# 文件上传
- 上传接口:
POST /file/upload。 - 文件访问:
GET /file/{fileName}。 - 配置限制:单文件 100MB,单次请求 1000MB。
- 使用范围:根据业务页面上传图片或附件;具体允许类型以对应上传组件配置为准。
# 系统特色
# 双预约场景
挂号与体检分别使用预约记录,关联医生或体检套餐。
# 分工式后台
医生处理排班、挂号和就诊记录,体检中心处理套餐、体检预约与报告。
# 服务结果查询
就诊记录和体检报告通过个人中心集中展示。
# 当前实现说明
- 挂号和体检预约前台提交“待确认”,后台分别使用“待就诊”“待体检”等选项,状态定义尚未统一。
- 前台取消预约调用批量删除接口,不能描述为完整的取消留痕及退款流程。
- 预约服务主要保存记录,未核实自动扣款、支付网关、排班余量自动扣减或超额预约拦截,不能仅凭支付记录表和排班容量字段宣称这些流程已完成。
本次按本地源码进行静态核对,未启动前后端或连接数据库执行端到端验证;上述说明反映当前代码与页面定义。