# Healthy_communityPlatform **Repository Path**: zeron2022/Healthy_communityPlatform ## Basic Information - **Project Name**: Healthy_communityPlatform - **Description**: 智慧健康社区平台是一个集 **AI 健康顾问、社区互动、健康数据管理、食物营养分析、地图服务** 于一体的综合性健康管理平台。平台融合多个 AI 服务(百度文心、阿里云通义千问、Clarifai 等),为用户提供个性化的健康管理体验。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-07-26 - **Last Updated**: 2026-07-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
# 🌿 智慧健康社区平台 **基于 Spring Boot 3 + Vue 3 的 AI 驱动个性化健康管理平台** [![Java](https://img.shields.io/badge/Java-17-orange?logo=openjdk)](https://openjdk.org/) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.2.3-brightgreen?logo=springboot)](https://spring.io/projects/spring-boot) [![Vue](https://img.shields.io/badge/Vue-3.4-42b883?logo=vuedotjs)](https://vuejs.org/) [![MySQL](https://img.shields.io/badge/MySQL-8.0-blue?logo=mysql)](https://www.mysql.com/) [![Redis](https://img.shields.io/badge/Redis-7-red?logo=redis)](https://redis.io/) [![Docker](https://img.shields.io/badge/Docker-Compose-2496ED?logo=docker)](https://www.docker.com/) [![License](https://img.shields.io/badge/License-MIT-yellow)](LICENSE) [功能演示](#-功能截图) · [快速开始](#-快速开始) · [技术架构](#-技术架构) · [部署指南](#-部署指南)
--- ## 📖 项目简介 智慧健康社区平台是一个集 **AI 健康顾问、社区互动、健康数据管理、食物营养分析、地图服务** 于一体的综合性健康管理平台。平台融合多个 AI 服务(百度文心、阿里云通义千问、Clarifai 等),为用户提供个性化的健康管理体验。 ### ✨ 核心亮点 - 🤖 **AI 驱动** — 集成 5+ 个 AI 服务,提供智能健康顾问、食物识别、图像/视频生成 - 🗺️ **地图服务** — 高德地图集成,支持定位、天气、路线规划、周边搜索 - 👤 **人脸识别** — 百度人脸识别,支持人脸注册与登录 - 💬 **实时通信** — WebSocket 驱动的私信系统与实时通知 - 📊 **数据可视化** — ECharts + D3.js + Three.js 多维度数据展示 - 🔒 **安全可靠** — JWT + Spring Security + 内容审核全方位保障 --- ## 🚀 功能模块 ### 用户端功能
#### 🏠 首页 - 动态粒子背景效果 - 平台功能导航入口 - 响应式布局设计 #### 🤖 AI 健康顾问 - 实时 AI 多轮对话 - 热门健康问题推荐 - 聊天历史记录管理 - 支持语音输入 #### 📰 社区动态 - 文章发布(富文本编辑器) - 文章点赞 / 收藏 / 评论 - 作者主页 / 用户主页 - 关注 / 取消关注 - 内容标签分类 #### 💬 消息中心 - 私信实时收发(WebSocket) - 图片 / 视频 / 文件发送 - 语音消息录制发送 - 消息撤回功能 - 回复通知 / 互动集合 / 系统通知 - 用户拉黑管理 - 发送频率限制(防骚扰) #### 🍎 食物营养分析 - 食物图像 AI 识别(Clarifai / Gemini) - 营养成分详细分析(Edamam / USDA) - 营养报告生成与导出 - 个性化膳食建议 #### 🥗 膳食计划 - 个性化餐单智能规划 - 营养均衡计算 - 食材推荐与替换 - 计划导出(PDF) #### 💪 健康管理 - 健康数据录入(步数、睡眠、体重等) - 健康指标趋势追踪 - 健康评分计算 - 健康报告生成 #### 🗺️ 地图服务 - 实时定位(GPS + IP 定位) - 周边设施搜索(医院、健身房等) - 步行 / 驾车路线规划 - 公交路线查询
#### 📚 健康科普 - 科普知识卡片浏览 - 科普视频播放 - 分类检索与搜索 #### 🌤️ 天气预报 - 实时天气查询 - 未来天气预报 - 基于天气的健康建议 #### 👤 个人中心 - 个人资料管理 - 头像上传 - 健康数据查看 - 账号安全设置 #### 🧬 人脸识别 - 人脸数据注册 - 人脸快速登录 - 人脸数据管理 #### 🔔 通知系统 - 实时消息推送 - 点赞 / 评论 / 关注通知 - 系统公告通知 #### 🎮 3D 实验室 - Three.js 3D 可视化展示 - 交互式 3D 场景 #### 📝 用户反馈 - 问题反馈提交 - 反馈处理状态追踪
--- ### 管理员端功能
#### 📊 数据分析中心 - 平台核心指标概览 - 用户增长趋势分析 - 内容发布效果统计 - 科普贡献看板 - 数据可视化图表 #### 📝 内容管理 - 文章 CRUD 管理 - 评论内容审核(百度 AI 审核) - 审核历史记录查询 - 热门文章统计管理 - 健康科普卡片 / 视频管理 #### 👥 用户管理 - 用户账户管理(启用 / 禁用) - 用户权限分配 - 用户健康数据查看 - 用户反馈处理 #### 🤖 AI 服务管理 - AI 服务配置(百度、阿里云、OpenAI 等) - AI 问答系统提示词配置 - 热门问题统计与管理 - 人脸数据管理 #### ⚙️ 系统管理 - 系统参数配置 - 维护模式控制 - 操作日志查询 - 管理员账户管理 - 消息清理策略配置 #### 🔌 第三方服务管理 - 地图服务 Key 配置(高德 / 腾讯) - QQ 登录配置 - 邮箱服务配置 - 短信服务配置 - 动态配置热更新 #### 🆘 帮助中心 - 帮助文章管理 - 用户反馈管理
--- ## 🏗️ 技术架构 ### 整体架构 ``` ┌─────────────────────────────────────────────────────────┐ │ 用户 / 管理员 │ └─────────────────────────┬───────────────────────────────┘ │ HTTPS ┌─────────────────────────▼───────────────────────────────┐ │ Nginx (前端) │ │ Vue 3 + Vite + Element Plus │ └─────────────────────────┬───────────────────────────────┘ │ REST API / WebSocket ┌─────────────────────────▼───────────────────────────────┐ │ Spring Boot 3.2.3 (后端) │ │ Spring Security │ JWT │ JPA │ MyBatis │ WebSocket │ └──────┬──────────┬──────────┬──────────┬─────────────────┘ │ │ │ │ ┌────▼───┐ ┌───▼───┐ ┌───▼───┐ ┌───▼──────┐ │ MySQL │ │ Redis │ │Rabbit │ │ 第三方 │ │ 8.0 │ │ 7 │ │ MQ │ │ 服务 │ └────────┘ └───────┘ └───────┘ └──────────┘ ``` ### 后端技术栈 | 技术 | 版本 | 用途 | |------|------|------| | Java | 17 | 开发语言 | | Spring Boot | 3.2.3 | 核心框架 | | Spring Security | 6.x | 认证授权 | | Spring Data JPA | 3.x | ORM 框架 | | MyBatis | 3.0.4 | SQL 映射 | | MySQL | 8.0 | 主数据库 | | Redis | 7 | 缓存 / 会话 | | RabbitMQ | 3.x | 消息队列 | | WebSocket | - | 实时通信 | | JWT (jjwt) | 0.11.5 | Token 认证 | | Knife4j | 4.4.0 | API 文档 | | Lombok | - | 代码简化 | | Hutool | 5.7.5 | 工具库 | ### 前端技术栈 | 技术 | 版本 | 用途 | |------|------|------| | Vue | 3.4 | 核心框架 | | Vite | 5.x | 构建工具 | | Element Plus | 2.9 | UI 组件库 | | Pinia | 3.x | 状态管理 | | Vue Router | 4.x | 路由管理 | | Axios | 1.8 | HTTP 请求 | | ECharts | 5.6 | 数据可视化 | | D3.js | 7.x | 数据可视化 | | Three.js | 0.176 | 3D 渲染 | | WanEditor | 5.x | 富文本编辑 | | SockJS + STOMP | - | WebSocket | | GSAP | 3.x | 动画效果 | | html2canvas + jsPDF | - | 报告导出 | ### 第三方服务集成 | 服务 | 提供商 | 用途 | |------|--------|------| | 文心一言 | 百度 | AI 健康顾问对话 | | 通义千问 | 阿里云 DashScope | AI 对话 / 图像生成 / 视频生成 | | GPT | OpenAI | 备用 AI 服务 | | 食物识别 | Clarifai | 食物图像识别 | | 图像分析 | Google Gemini | 食物识别备用 | | 营养分析 | Edamam | 营养成分分析 / 膳食规划 | | 食物数据库 | USDA | 食物营养数据 | | 地图服务 | 高德地图 | 地图 / 定位 / 天气 / 路线 | | 人脸识别 | 百度 AI | 人脸登录 / 注册 | | 内容审核 | 百度 AI | 文章 / 评论审核 | | 第三方登录 | QQ 互联 | QQ 账号登录 | | 邮件服务 | QQ 邮箱 SMTP | 验证码 / 通知邮件 | | 短信服务 | 阿里云 | 短信验证码 | | 翻译服务 | 百度翻译 | 文本翻译 | --- ## 📁 项目结构 ``` ├── health-platform-backend/ # 后端项目 │ ├── src/main/java/com/health/ │ │ ├── annotation/ # 自定义注解 │ │ ├── aop/ # AOP 切面(操作日志) │ │ ├── common/ # 公共响应类 │ │ ├── config/ # 配置类(Security、Redis、RabbitMQ 等) │ │ ├── controller/ │ │ │ ├── admin/ # 管理员接口(19个) │ │ │ └── user/ # 用户接口(22个) │ │ ├── dto/ # 数据传输对象 │ │ ├── entity/ # 数据库实体(30+个) │ │ ├── enums/ # 枚举类 │ │ ├── event/ # 事件类 │ │ ├── exception/ # 异常处理 │ │ ├── listener/ # 事件监听器 │ │ ├── message/ # 消息处理 │ │ ├── mq/ # RabbitMQ 消息队列 │ │ ├── repository/ # 数据访问层 │ │ ├── schedule/ # 定时任务 │ │ ├── service/ # 业务逻辑层(40+个) │ │ ├── utils/ # 工具类 │ │ ├── vo/ # 视图对象 │ │ └── websocket/ # WebSocket 处理 │ └── src/main/resources/ │ ├── application.yml # 主配置文件 │ └── application-prod.yml # 生产环境配置 │ ├── health-platform-frontend/ # 前端项目 │ ├── src/ │ │ ├── adminComponents/ # 管理员端组件(21个模块) │ │ ├── api/ # API 请求封装 │ │ ├── assets/ # 静态资源 │ │ ├── components/ # 用户端组件 │ │ ├── config/ # 前端配置 │ │ ├── router/ # 路由配置 │ │ ├── services/ # 服务层 │ │ ├── stores/ # Pinia 状态管理 │ │ ├── utils/ # 工具函数 │ │ └── views/ # 页面视图 │ └── vite.config.js # Vite 配置 │ ├── files/ # 上传文件存储目录 ├── docker-compose.yml # Docker 编排配置 └── README.md ``` --- ## ⚡ 快速开始 ### 环境要求 - Java 17+ - Node.js 18+ - MySQL 8.0+ - Redis 7+ - RabbitMQ 3.x(可选,用于消息队列) - Maven 3.8+ ### 1. 克隆项目 ```bash git clone https://github.com/your-username/health-platform.git cd health-platform ``` ### 2. 数据库初始化 ```bash # 创建数据库 mysql -u root -p CREATE DATABASE health CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; # 导入初始数据(如有) mysql -u root -p health < health-platform-backend/docs/health.sql ``` ### 3. 后端配置 编辑 `health-platform-backend/src/main/resources/application.yml`: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/health?useSSL=false&serverTimezone=Asia/Shanghai username: your_username password: your_password data: redis: host: localhost port: 6379 password: your_redis_password ``` ### 4. 启动后端 ```bash cd health-platform-backend mvn clean package -DskipTests java -jar target/springboot-0.0.1-SNAPSHOT.jar ``` 后端启动后访问 API 文档:http://localhost:8080/doc.html ### 5. 启动前端 ```bash cd health-platform-frontend npm install npm run dev ``` 前端访问地址:http://localhost:5173 --- ## 🐳 Docker 部署 ### 一键部署 ```bash # 修改 docker-compose.yml 中的数据库密码等配置 vim docker-compose.yml # 启动所有服务 docker-compose up -d # 查看服务状态 docker-compose ps # 查看日志 docker-compose logs -f backend ``` ### 服务端口 | 服务 | 端口 | 说明 | |------|------|------| | 前端 (Nginx) | 80 / 443 | HTTP / HTTPS | | 后端 (Spring Boot) | 8080 | REST API | | MySQL | 3306 | 数据库 | | Redis | 6379 | 缓存 | | RabbitMQ | 5672 / 15672 | 消息队列 / 管理界面 | ### HTTPS 配置 将 SSL 证书放置到 `/home/project/nginx/ssl/` 目录,Nginx 配置已支持 HTTPS。 --- ## ⚙️ 配置说明 ### 必须配置项 | 配置项 | 说明 | 位置 | |--------|------|------| | 数据库连接 | MySQL 连接信息 | `application.yml` | | Redis 连接 | Redis 连接信息 | `application.yml` | | JWT 密钥 | Token 签名密钥 | `application.yml` | ### 可选配置项(第三方服务) | 服务 | 配置项 | 说明 | |------|--------|------| | 百度 AI | `baidu.ai.api-key` | AI 对话服务 | | 阿里云 | `aliyun.dashscope.api-key` | 通义千问 | | 高德地图 | 管理后台配置 | 地图 / 天气服务 | | QQ 登录 | `qq.auth.app-id` | QQ 第三方登录 | | 邮件服务 | `spring.mail.*` | 验证码邮件 | | 阿里云短信 | `aliyun.sms.*` | 短信验证码 | | Edamam | `edamam.*` | 营养分析 | | Clarifai | `clarifai.api-key` | 食物识别 | | 百度人脸 | `baidu.face.*` | 人脸识别登录 | > 💡 大部分第三方服务可在管理后台的「第三方服务管理」中动态配置,无需重启服务。 --- ## 🔐 账号说明 ### 用户端 - 支持手机号 / 邮箱注册 - 支持 QQ 第三方登录 - 支持人脸识别登录 ### 管理员端 - 访问地址:`/admin/login` - 首次使用需通过 `/admin/register` 注册管理员账号 --- ## 📊 数据库设计 主要数据表(30+ 张): | 表名 | 说明 | |------|------| | `user` | 用户信息 | | `articles` | 文章内容 | | `article_comment` | 文章评论 | | `article_like` | 点赞记录 | | `article_collection` | 收藏记录 | | `health_data` | 健康数据 | | `health_profile` | 健康档案 | | `health_score` | 健康评分 | | `direct_message` | 私信消息 | | `direct_message_thread` | 私信会话 | | `notification` | 通知消息 | | `follow` | 关注关系 | | `user_block` | 拉黑关系 | | `knowledge_cards` | 科普卡片 | | `knowledge_videos` | 科普视频 | | `chat_history` | AI 聊天历史 | | `hot_question` | 热门问题 | | `ai_config` | AI / 第三方服务配置 | | `face_data` | 人脸数据 | | `system_log` | 系统操作日志 | | `system_config` | 系统配置 | | `user_feedback` | 用户反馈 | | `admin` | 管理员信息 | --- ## 🔄 定时任务 | 任务 | 执行周期 | 说明 | |------|----------|------| | 聊天历史清理 | 每天凌晨 3:00 | 清理 7 天前的 AI 聊天记录 | | 私信清理 | 每天凌晨 3:00 | 清理过期私信 | | 健康数据清理 | 定期 | 清理过期健康数据 | | 通知清理 | 定期 | 清理过期通知 | --- ## 🛡️ 安全特性 - **JWT 认证** — 无状态 Token 认证,支持 Token 刷新 - **Spring Security** — 细粒度权限控制,用户端 / 管理端完全隔离 - **内容审核** — 百度 AI 自动审核文章和评论内容 - **XSS 防护** — 前端 DOMPurify 过滤,后端输入校验 - **CORS 配置** — 严格的跨域访问控制 - **操作日志** — AOP 自动记录管理员所有操作 - **发送限制** — 私信防骚扰机制(未关注用户限制发送数量) - **文件安全** — 上传文件类型校验,禁止可执行文件 --- ## 📈 性能优化 - **Redis 缓存** — 热门问题、用户会话、API 响应缓存 - **RabbitMQ 异步** — 通知推送、事件处理异步化 - **分页查询** — PageHelper 统一分页,避免大数据量查询 - **前端缓存** — API 响应本地缓存,减少重复请求 - **图片懒加载** — 列表页图片按需加载 - **WebSocket 连接复用** — 单连接多频道订阅 --- ## 🤝 贡献指南 1. Fork 本仓库 2. 创建功能分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 提交 Pull Request --- ## 📄 开源协议 本项目基于 [MIT License](LICENSE) 开源。 --- ## 👨‍💻 作者 **黄日盛** - 项目地址:[GitHub](https://github.com/your-username/health-platform) - 个人网站:[raysonsun.cn](https://raysonsun.cn) ---
如果这个项目对你有帮助,欢迎 ⭐ Star 支持一下!