# 心灵驿站_SSM
**Repository Path**: CyberSoviet/soul-station_ssm
## Basic Information
- **Project Name**: 心灵驿站_SSM
- **Description**: 基于soul-station使用SSM框架重构的项目,用以作为期末作业
- **Primary Language**: Unknown
- **License**: BSD-3-Clause
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2026-07-10
- **Last Updated**: 2026-08-22
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 愈己小栈(Soul Station)
> 一个面向高校学生的前后端分离智能心理健康服务平台。
> 前端 Vue 3 SPA · 后端 Spring Boot 3.2 多模块(SSM)· 接入智谱 GLM-4-Flash 大模型
「愈己小栈」(曾用名:心灵e站)将 **AI 情感陪伴、情绪记录、匿名互助社区、标准化心理测评、减压工具** 与 **后台心理危机预警** 融合于同一系统:既面向学生提供随时可及的心理支持,也面向学校心理工作者提供数据驱动的监测与干预工具。核心设计理念——**用一个温柔的 AI「树洞」降低求助门槛,用一套自动化的危机预警链路守住安全底线**。
---
## 功能特性
**用户端(Vue SPA)**
| 功能 | 说明 |
|------|------|
| 用户认证 | 邮箱验证码注册、登录、JWT 双 Token(2h access / 7d refresh)、401 自动刷新、登出 |
| AI 树洞 | WebSocket 流式 AI 对话(打字机效果)、会话管理、内置关键词危机检测 |
| 情绪日记 | 写日记 + 心情评分,调用大模型生成主情绪/强度/建议 |
| 匿名社区 | 匿名发帖(提交后待审核)、帖子列表/详情、回复、点赞 |
| 心理测试 | PHQ-9 / GAD-7 / SDS / SAS / SES 五套标准量表,自动计分与个性化建议 |
| 减压实验室 | 呼吸训练、手势减压、白噪音、注意力训练(纯前端) |
**管理后台(AdminView,6 个标签页)**
- 数据概览(统计卡片 + 动态时间线)
- 用户管理(搜索 / 角色切换 / 启停)
- 内容审核(帖子与回复的通过 / 驳回 / 删除)
- 危机预警(风险等级筛选、填写处理意见、升级 / 解决)
- 会话记录(全量聊天监控 + 心理等级推算)
- 心理趋势(折线图 + 黄 / 橙 / 红四级预警 + 全员心理分析 **CSV 导出**)
---
## 架构概览
前后端彻底分离,后端按职责拆分为 Maven 多模块服务,独立部署、独立端口,通过 REST 与 WebSocket 协作;大模型调用被隔离到独立进程,避免拖垮主业务。
```mermaid
flowchart LR
FE[Vue 3 SPA
localhost:3000] -->|HTTP/WS| API[psychology-api 8080]
FE -->|auth| AUTH[psychology-auth 8082]
FE -->|admin| ADM[psychology-admin 8081]
API -->|WS 流式透传| LLM[psychology-llm-service 9090]
ADM -->|WS 流式透传| LLM
AUTH --> API
API --> DB[(MySQL 8.0)]
ADM --> DB
AUTH --> DB
AUTH --> REDIS[(Redis 7.x 验证码/冷却)]
LLM --> GLM[智谱 GLM-4-Flash
HttpClient 直连, 无 SDK]
```
| 模块 | 端口 | 职责 |
|------|------|------|
| `psychology-common` | — | 共享 DTO、异常、JWT/验证码工具(被依赖,不单独部署) |
| `psychology-llm-service` | 9090 | 大模型网关:流式对话、日记分析、危机评估(WebFlux/Netty) |
| `psychology-auth` | 8082 | 邮箱验证码注册、登录、JWT 签发与刷新 |
| `psychology-api` | 8080 | 核心业务:聊天、日记、社区、测试、游戏 + 聊天 WebSocket |
| `psychology-admin` | 8081 | 管理后台数据接口 + CSV 导出 |
> **ORM 说明**:数据层为 **MyBatis**(SSM:Spring + SpringMVC + MyBatis),`@Mapper` 接口 + `mapper/*.xml` 动态 SQL,关联扁平化为 Long 外键列,PageHelper 物理分页。
---
## 技术栈
| 层次 | 技术 |
|------|------|
| 前端 | Vue 3(Composition API + `