宠物医院智能诊疗管理系统 — Spring Boot 3 Vue 3 全栈实战项目简介基于Spring Boot 3 Vue 3 Bootstrap 5 MyBatis-Plus MySQL构建的宠物医院智能诊疗管理系统采用前后端分离架构实现了从游客浏览、在线预约、诊疗记录到物资管理的完整业务闭环。系统设计了 RBAC 四角色权限体系超级管理员、管理员、医生、宠物主人通过 JWT Spring Security 实现细粒度的功能权限和数据权限控制。## 技术栈| 层级 | 技术 ||------|------|| 前端 | Vue 3 TypeScript Vite Bootstrap 5 || 后端 | Spring Boot 3 Spring Security JWT || ORM | MyBatis-Plus || 数据库 | MySQL 8 || 构建 | Maven npm |## 系统架构系统分为游客前台和管理后台两大模块-游客前台医院介绍、医生团队展示、养宠指南、健康标准、系统公告无需登录即可浏览-管理后台根据角色动态加载菜单和功能4种角色各有专属视图## 核心功能### 1. 游客前台游客首页集成了医院介绍、快捷导航、在线预约入口。支持查看医生团队详情、浏览养宠知识指南和宠物健康标准。### 2. 管理员仪表盘管理员Dashboard展示用户总数、角色数量、权限数量等统计数据提供系统运行概览。### 3. 宠物信息管理支持宠物信息的增删改查记录宠物品种、年龄、体重、主人信息等完整档案。宠物主人只能看到自己名下的宠物数据权限隔离。### 4. 预约挂号在线预约功能支持选择医生、预约时间、填写病情描述。系统自动关联宠物档案医生端可查看和处理预约。### 5. 物资管理实现了物资分类、物资信息、入库管理、领用管理、采购管理的全链路物资管控支持库存预警。### 6. 更多功能- 诊疗记录详细记录每次就诊的症状、诊断、治疗方案- 处方管理关联诊疗记录记录用药信息- 疫苗记录追踪每只宠物的疫苗接种历史- 健康监测记录体温、心率、体重等健康指标- 医生排班可视化展示和管理医生值班计划- 知识库养宠指南和健康标准的内容管理## 权限设计亮点### RBAC 四角色体系| 角色 | 功能范围 ||------|----------|| 超级管理员 | 全部功能 系统配置 || 管理员 | 业务管理 用户审核 || 医生 | 诊疗相关 工作台 物资领用 || 宠物主人 | 我的宠物/预约/记录 知识库 |### 数据权限隔离宠物主人调用接口时后端通过 SecurityContextHolder 获取当前用户 ID强制过滤数据。即使前端传入他人的 ownerId 或 petId后端也会忽略并替换为当前用户的数据从根本上杜绝了 IDOR 越权风险。### 动态菜单后端根据角色返回对应的菜单树前端侧边栏动态渲染角色切换后菜单即时变化。## 数据库设计系统包含 21 张数据表涵盖系统基础、宠物管理、诊疗管理、物资管理、内容管理、医生管理等模块。## 总结本系统完整实现了宠物医院的核心业务流程从功能权限到数据权限的精细化控制是一个学习 Spring Boot Vue 3 全栈开发的实战参考项目。