# 心氧青少--青少年心理健康平台 **Repository Path**: presist/Studio ## Basic Information - **Project Name**: 心氧青少--青少年心理健康平台 - **Description**: 心氧青少--青少年心理健康平台 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-20 - **Last Updated**: 2026-06-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 青少年心理健康平台 ## 📋 项目简介 青少年心理健康平台是一个面向青少年和心理咨询师的双端心理健康服务系统。平台通过 AI 智能对话、实时在线咨询、情绪日记、倾诉社区、解压中心等功能模块,为青少年提供全方位的心理健康支持,同时为心理咨询师提供专业的咨询管理工具。 项目分为两个子系统: - **青少年端(Youth)**:面向青少年用户,提供心理自助、AI 陪伴、在线咨询、社区交流等服务 - **咨询师端(Counselor)**:面向专业心理咨询师,提供咨询管理、日程安排、资源分享等功能 ## ✨ 项目特色 ### 青少年端 - 🤖 **AI 智能助手**:接入 Kimi 大模型,提供 7×24 小时心理陪伴与疏导 - 💬 **实时在线咨询**:基于 WebSocket 的即时通讯,支持文字、图片等多种消息类型 - 📝 **情绪日记**:记录每日心情,支持标签分类,帮助用户觉察情绪变化 - 📊 **心理量表评估**:多种专业心理量表,自动生成评估报告 - 🌐 **倾诉社区**:匿名发帖交流,支持话题标签、点赞、收藏、回复 - 🎵 **解压中心**:包含放松音乐、呼吸练习、泡泡游戏、积极 affirmations - 📚 **心理科普**:心理健康文章阅读,支持富文本内容 - 🏆 **成就系统**:徽章和成长记录,激励用户持续使用 - 📬 **消息中心**:统一的通知消息管理 ### 咨询师端 - 📅 **咨询日程管理**:灵活的排班设置,支持特殊日期管理 - 📋 **预约订单管理**:查看和处理用户咨询预约 - 💬 **咨询会话**:实时 WebSocket 在线咨询 - 📝 **咨询记录**:完整的咨询历史记录管理 - 📊 **服务统计**:可视化数据看板,多维度统计分析 - 📂 **资源共享**:咨询师间分享专业资源 - ⭐ **资质认证**:咨询师资质审核流程 - 🔔 **通知管理**:系统通知和消息推送 ## 🏗️ 系统架构 ``` ┌──────────────────────────────────────────────────────────┐ │ 前端层 │ │ ┌─────────────────────┐ ┌─────────────────────────────┐ │ │ │ Youth Frontend │ │ Counselor Frontend │ │ │ │ Vue 3 + Vite │ │ Vue 3 + Vite │ │ │ │ Port: 3000 │ │ Port: 3002 │ │ │ └──────────┬──────────┘ └─────────────┬───────────────┘ │ └─────────────┼───────────────────────────┼─────────────────┘ │ HTTP/REST + WebSocket │ ┌─────────────┼───────────────────────────┼─────────────────┐ │ ▼ ▼ │ │ ┌─────────────────────┐ ┌─────────────────────────────┐ │ │ │ Youth Backend │ │ Counselor Backend │ │ │ │ Spring Boot 3.5.5 │ │ Spring Boot 3.1.10 │ │ │ │ Port: 8082 │ │ Port: 7777 │ │ │ └──────────┬──────────┘ └─────────────┬───────────────┘ │ │ └──────────┬────────────────┘ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ MySQL 8.0 (db_mental) │ │ │ │ Redis (Youth Backend) │ │ │ └─────────────────────────────────────────────────────┘ │ │ 后端服务层 │ └──────────────────────────────────────────────────────────┘ ``` **核心架构说明:** - 前后端分离架构,HTTP RESTful API + WebSocket 实时通信 - 两个后端服务共享同一个 MySQL 数据库,按角色区分业务逻辑 - 青少年端使用 Redis 缓存 session,咨询师端使用简单内存缓存 - JWT 双 Token 机制进行身份认证 - Spring Security 进行权限控制 - MyBatis-Plus 作为 ORM 框架 ## 📦 功能模块 ### 青少年端功能模块 | 模块 | 说明 | |------|------| | 用户认证 | 注册、登录、忘记密码、验证码 | | 个人中心 | 个人信息管理、成长记录、成就徽章 | | AI 助手 | AI 对话、多轮会话管理 | | 情绪日记 | 日记 CRUD、标签分类、详情查看 | | 心理评估 | 量表作答、结果分析、历史记录 | | 在线咨询 | 咨询师预约、实时聊天 | | 心理科普 | 文章浏览、分类筛选、附件下载 | | 倾诉社区 | 发帖回复、点赞收藏、话题标签 | | 解压中心 | 音乐放松、呼吸练习、小游戏、积极 affirmations | | 消息通知 | 系统通知、消息中心 | | 意见反馈 | 用户反馈、举报功能 | | 管理后台 | 用户管理、咨询师管理、文章管理、量表管理、社区管理 | ### 咨询师端功能模块 | 模块 | 说明 | |------|------| | 咨询师认证 | 注册审核、资质管理 | | 工作台 | 数据概览、待处理事项 | | 状态管理 | 在线/离线/忙碌状态切换 | | 时间管理 | 工作时间段设置、特殊日期标记 | | 预约管理 | 预约订单查看和处理 | | 咨询日程 | 日程安排查看 | | 在线咨询 | WebSocket 实时咨询会话 | | 咨询记录 | 历史咨询记录查看和管理 | | 资源库 | 专业资源上传、分享、收藏 | | 服务统计 | 数据可视化、多维度统计 | | 通知管理 | 通知设置、消息管理 | | 系统设置 | 个人偏好配置 | ## 🛠️ 技术栈 ### 后端技术栈 | 技术 | 版本 | 说明 | |------|------|------| | Java | 17 | 编程语言 | | Spring Boot | 3.5.5 / 3.1.10 | 核心框架 | | Spring Security | 6.x | 安全认证框架 | | MyBatis-Plus | 3.5.6 / 3.5.3.1 | ORM 框架 | | MySQL | 8.0 | 关系型数据库 | | Redis | 7.x | 缓存(青少年端) | | Druid | 1.2.27 | 数据库连接池 | | JWT (jjwt) | 0.13.0 | Token 鉴权 | | WebSocket | — | 实时通信 | | Knife4j | 4.5.0 | API 文档(青少年端) | | Spring Mail | — | 邮件服务 | | Apache POI | 5.2.5 | Office 文件处理 | | Kaptcha | 2.3.2 | 图形验证码 | | Quartz | — | 定时任务(咨询师端) | ### 前端技术栈 | 技术 | 版本 | 说明 | |------|------|------| | Vue 3 | 3.5.22 / 3.3.4 | 前端框架 | | Vite | 7.1.11 / 4.4.5 | 构建工具 | | Element Plus | 2.8.6 / 2.3.9 | UI 组件库 | | Vant | 4.9.21 | 移动端 UI(青少年端) | | Pinia | 3.0.4 / 2.1.6 | 状态管理 | | Vue Router | 4.x | 路由管理 | | Axios | 1.7.7 / 1.4.0 | HTTP 客户端 | | ECharts | 6.0.0 / 5.4.3 | 数据可视化 | | STOMP.js | 7.2.1 | WebSocket 客户端 | | wangEditor | 5.1.23 | 富文本编辑器(青少年端) | ## 📸 项目截图 > 待补充项目运行截图 ## 🚀 快速启动 ### 前置环境 - **JDK 17+** - **Node.js 20.19+ / 22.12+**(青少年端)或 **Node.js 18+**(咨询师端) - **MySQL 8.0+** - **Redis 7.0+**(青少年端需要) - **Maven 3.8+** ### 1. 数据库初始化 ```bash # 创建数据库并导入初始数据 mysql -u root -p -e "CREATE DATABASE IF NOT EXISTS db_mental DEFAULT CHARACTER SET utf8mb4;" mysql -u root -p db_mental < db_mental.sql ``` ### 2. 启动青少年端后端 ```bash cd youth/youth-backend # 修改 application-dev.properties 中的数据库连接信息 mvn spring-boot:run # 启动后访问: http://localhost:8082 # API 文档: http://localhost:8082/doc.html ``` ### 3. 启动青少年端前端 ```bash cd youth/youth-front npm install npm run dev # 启动后访问: http://localhost:3000 ``` ### 4. 启动咨询师端后端 ```bash cd counselor/counselor-backend # 修改 application-dev.properties 中的数据库连接信息 mvn spring-boot:run # 启动后访问: http://localhost:7777 ``` ### 5. 启动咨询师端前端 ```bash cd counselor/counselor-front npm install npm run dev # 启动后访问: http://localhost:3002 ``` ### 各模块详细 README | 模块 | README 链接 | |------|-------------| | 青少年端后端 | [youth/youth-backend/README.md](./youth/youth-backend/README.md) | | 青少年端前端 | [youth/youth-front/README.md](./youth/youth-front/README.md) | | 咨询师端后端 | [counselor/counselor-backend/README.md](./counselor/counselor-backend/README.md) | | 咨询师端前端 | [counselor/counselor-front/README.md](./counselor/counselor-front/README.md) | ## 📁 目录结构 ``` Studio/ ├── db_mental.sql # 数据库初始化脚本(63 张表) ├── README.md # 项目总览(本文件) │ ├── youth/ # 青少年端 │ ├── youth-backend/ # 后端 Spring Boot 项目 │ │ ├── src/main/java/com/example/ │ │ │ ├── chat/ # 聊天模块(WebSocket) │ │ │ ├── common/ # 公共类(Result、AI 模型) │ │ │ ├── config/ # 配置类(Security、Druid、MyBatis-Plus 等) │ │ │ ├── controller/ # 控制器层(32 个 Controller) │ │ │ ├── dto/ # 数据传输对象 │ │ │ ├── entity/ # 实体类(41 个 Entity) │ │ │ ├── enums/ # 枚举类 │ │ │ ├── filter/ # 过滤器 │ │ │ ├── handler/ # 处理器 │ │ │ ├── mapper/ # MyBatis-Plus Mapper(40 个) │ │ │ ├── service/ # 业务逻辑层 │ │ │ └── utils/ # 工具类 │ │ ├── src/main/resources/ # 配置文件 │ │ ├── uploads/ # 文件上传目录 │ │ └── pom.xml # Maven 配置 │ │ │ └── youth-front/ # 前端 Vue 3 项目 │ ├── src/ │ │ ├── api/ # API 接口封装 │ │ ├── assets/ # 静态资源 │ │ ├── components/ # 公共组件 │ │ ├── router/ # 路由配置 │ │ ├── stores/ # Pinia 状态管理 │ │ ├── utils/ # 工具函数 │ │ └── views/ # 页面视图 │ │ └── admin/ # 管理后台页面 │ ├── package.json │ └── vite.config.js │ ├── counselor/ # 咨询师端 │ ├── counselor-backend/ # 后端 Spring Boot 项目 │ │ ├── src/main/java/com/counselor/ │ │ │ ├── chat/ # 聊天模块(WebSocket) │ │ │ ├── common/ # 公共类(Result) │ │ │ ├── config/ # 配置类(12 个) │ │ │ ├── controller/ # 控制器层(34 个 Controller) │ │ │ ├── domain/ # 基础实体 │ │ │ ├── dto/ # 数据传输对象 │ │ │ ├── entity/ # 实体类(24 个 Entity) │ │ │ ├── filter/ # 过滤器 │ │ │ ├── handler/ # 处理器 │ │ │ ├── mapper/ # MyBatis-Plus Mapper + XML │ │ │ ├── service/ # 业务逻辑层 │ │ │ ├── test/ # 测试类 │ │ │ └── util/ + utils/ # 工具类 │ │ ├── src/main/resources/ # 配置文件 │ │ └── pom.xml │ │ │ └── counselor-front/ # 前端 Vue 3 项目 │ ├── src/ │ │ ├── api/ # API 接口封装 │ │ ├── assets/ # 静态资源 │ │ ├── layout/ # 布局组件 │ │ ├── router/ # 路由配置 │ │ ├── stores/ # Pinia 状态管理 │ │ ├── utils/ # 工具函数 │ │ └── views/ # 页面视图 │ │ ├── admin/ # 管理员页面 │ │ └── consultation/ # 咨询相关页面 │ ├── package.json │ └── vite.config.js │ └── logs/ # 日志输出目录 ``` ## 📝 开发说明 本项目为个人学习项目,旨在实践 Spring Boot + Vue 3 全栈开发、WebSocket 实时通信、AI 大模型集成等企业级开发技术。 **当前状态:** 持续开发中,部分功能仍在完善。 **开发环境:** - IDE:IntelliJ IDEA - 数据库工具:Navicat / MySQL Workbench - API 测试:Postman / Knife4j - 版本控制:Git + GitHub