源码专题-java0153-基于Spring Boot 神州线上医院神州线上医院患者微信小程序 项目定位 一套面向医院患者服务场景的前后端分离项目,由患者端微信小程序、医院管理后台和 Spring Boot 接口服务组成。系统围绕线上挂号、医生排班、就诊卡、人脸认证、处方查询、视频问诊和后台数据维护展开,适合课程设计、毕业设计和项目答辩展示。项目名称与代码结构对应如下:| 目录 | 说明 || `patient-wx` | 患者端 uni-app 微信小程序,提供首页、挂号、就诊卡、人脸录入、视频问诊、订单和个人中心等页面 || `patient-wx-admin` | Vue2 + Element UI 管理后台,负责医生、科室、排班、挂号订单、患者资料和诊疗记录维护 || `patient-wx-api` | Spring Boot 后端服务,提供小程序接口、后台管理接口、MyBatis 数据访问、登录鉴权和支付/人脸/音视频相关能力 || `patient-wx-api/db/hospital_wx.sql` | MySQL 初始化脚本,包含医生、科室、排班、挂号、患者、处方、视频问诊等业务表和演示数据 |技术栈| 分类 | 使用技术 | 说明 || --- | --- | --- || 后端服务 | Java 23、Spring Boot 2.7.2、Jetty、MyBatis、Maven | 承载业务接口、数据访问、服务配置和接口返回封装 || 数据与缓存 | MySQL 8、Redis、Druid 数据源 | 保存业务数据,支持登录状态、支付状态和高频业务访问 || 权限与工具 | Sa-Token、Hutool、Lombok、Spring Validation、Quartz | 支持登录鉴权、参数校验、工具封装、定时任务和开发提效 || 第三方能力 | 微信小程序、微信支付、腾讯云人脸核身、TRTC、MinIO | 支持微信登录/支付、人脸模型、视频问诊房间和文件上传扩展 || 管理后台 | Vue 2.7、Vue CLI、Element UI、Axios、Vue Router、Vuex | 实现后台登录、模块导航、表格查询、表单新增编辑和删除 || 患者小程序 | uni-app、Vue2、uView UI、dayjs、tim-wx-sdk | 实现微信小程序端页面、移动端交互、时间处理和通信能力 |运行与配置| 服务 | 默认配置 || --- | --- || 后端接口 | `http://127.0.0.1:8091/patient-wx-api` || 管理后台 | `http://localhost:8092` || 后台接口代理 | `/patient-wx-api` || MySQL 数据库 | `hospital_wx`,默认账号 `root/root` || Redis | `127.0.0.1:6379`,默认使用 0 号库 || 管理员账号 | `admin / admin123` |后端配置文件位于 `patient-wx-api/src/main/resources/application.yml`。当前配置中微信支付默认关闭,腾讯云人脸能力支持本地模式,云端密钥可通过环境变量补充。角色与功能| 角色 | 核心功能 | 价值体现 || --- | --- | --- || 患者 | 微信登录或注册、维护就诊卡、录入人脸信息、浏览科室医生、选择排班时段、提交挂号、查看挂号订单、查询处方、发起视频问诊和上传问诊图片 | 完成从线上建档、预约挂号到诊后查看的移动端就医流程 || 医生 | 通过排班、挂号、处方和视频问诊数据参与诊疗业务展示 | 体现医生资源、科室归属、出诊计划和诊疗记录之间的业务关系 || 管理员 | 登录后台,维护医生、科室、挂号价格、出诊计划、出诊时段、挂号订单、用户、就诊卡、人脸认证记录、处方和视频问诊数据 | 保证医院基础资料和业务订单可管理、可查询、可追踪 || 访客 | 进入小程序首页、科室入口和公开服务入口,登录后使用完整功能 | 降低演示入口门槛,突出移动端服务流程 |患者端功能模块| 模块 | 功能说明 || --- | --- || 首页 | 展示医院服务入口,承接挂号、问诊、个人中心等核心路径 || 科室列表 | 展示一级科室和二级科室,支持进入对应科室的医生排班信息 || 在线挂号 | 查询可预约日期、科室医生计划、医生出诊时段,提交挂号预约 || 挂号订单 | 查看我的挂号预约、挂号详情、支付状态和重新支付入口 || 电子处方 | 按挂号记录查看医生开具的处方、诊断和用药明细 || 就诊卡 | 创建和维护患者就诊信息卡,保存姓名、身份证、电话、医保类型和既往病史 || 人脸认证 | 通过摄像头录入面部信息,创建或验证就诊卡对应的人脸模型 || 视频问诊 | 查看在线医生、提交问诊资料、上传图片、创建问诊订单、进入视频问诊房间和查看订单列表 || 消息与个人中心 | 提供消息中心、体检中心、个人资料和个人业务入口 |管理后台模块| 分组 | 模块 || --- | --- || 基础资料 | 医生管理、一级科室、二级科室 || 排班挂号 | 医生科室关联、挂号价格、出诊计划、出诊时段 || 业务订单 | 挂号订单、视频问诊 || 患者资料 | 用户管理、就诊卡管理、人脸认证记录 || 诊疗记录 | 处方管理、问诊图片 |后台所有模块统一支持列表查询、条件筛选、新增、编辑、删除和关联字段展示,接口统一走 `/admin/**`。后端接口概览| 控制器 | 主要接口 || --- | --- || `AdminController` | 后台登录、登出、用户信息、模块列表、通用分页、新增、编辑、删除 || `UserController` | 微信登录或注册、查询当前用户信息 || `UserInfoCardController` | 新增、修改、查询就诊卡,判断用户是否已有就诊卡 || `MedicalDeptController` | 查询科室列表、查询一级科室与二级科室树 || `MedicalDeptSubController` | 查询二级科室列表 || `DoctorController` | 查询医生详情 || `RegistrationController` | 查询可挂号日期、科室医生出诊计划、挂号条件校验、查询出诊时段、提交挂号、支付回调、支付结果、挂号分页、重新支付、挂号详情 || `DoctorPrescriptionController` | 按挂号记录查询电子处方 || `FaceAuthController` | 创建人脸模型、验证人脸模型 || `VideoDiagnoseController` | 查询在线医生、创建视频问诊、支付回调、支付结果、上传/删除问诊图片、查询 UserSig、查询房间号、分页查询问诊订单 |数据库设计| 表名 | 说明 || --- | --- || `doctor` | 医生基础资料,包括姓名、证件、头像、职称、联系方式、简介和推荐标识 || `doctor_price` | 医生挂号价格 || `medical_dept` | 一级科室资料 || `medical_dept_sub` | 二级科室资料 || `medical_dept_sub_and_doctor` | 医生与二级科室关联 || `doctor_work_plan` | 医生某日出诊计划和总号源 || `doctor_work_plan_schedule` | 出诊计划下的具体时段号源 || `medical_registration` | 患者挂号订单、支付状态、交易号和预约信息 || `patient_user` | 微信患者用户资料 || `patient_user_info_card` | 患者就诊卡资料和人脸模型状态 || `patient_face_auth` | 人脸认证记录 || `doctor_prescription` | 医生处方、诊断和用药明细 || `video_diagnose` | 视频问诊订单、支付状态、问诊状态和时间信息 || `video_diagnose_file` | 视频问诊上传图片记录 |项目亮点医疗业务链路完整系统覆盖患者建档、科室选择、医生排班、号源时段、挂号订单、支付状态、处方查看和视频问诊,能够连续展示医院患者服务的关键流程。前后端分离清晰小程序、管理后台和后端服务分别独立维护,通过统一接口和数据库协作,便于演示移动端业务与后台管理之间的数据联动。后台维护能力完整后台基于配置化模块实现表格、表单、筛选和关联字段展示,医生、科室、排班、订单、患者和诊疗记录均可维护。具备真实扩展点项目预留微信支付、腾讯云人脸、TRTC 视频问诊、MinIO 文件存储、Redis 和 Quartz 等能力,适合进一步扩展为更接近真实医院业务的系统。适合答辩演示项目结构清晰,功能模块集中,演示时可以按照“患者创建就诊卡 -> 人脸录入 -> 选择科室医生 -> 预约挂号 -> 查看订单/处方 -> 视频问诊 -> 后台维护数据”的顺序完整讲解。总结该项目是一套医院患者微信小程序及配套管理后台,能够体现 Java 后端接口开发、MyBatis 数据库设计、Vue 管理后台开发、uni-app 微信小程序开发、登录鉴权、业务订单处理、文件上传和第三方医疗服务能力接入等综合实践能力。软件定制及其他业务文章有帮助的话,在看,转发吧。谢谢支持哟 (*^__^*)