考试焦虑测评与辅助治疗系统
这是一个完整的考试焦虑测评与辅助治疗平台,采用前后端分离架构,实现了焦虑测评问卷、测评结果分析、医生咨询、治疗建议、疾病知识等核心功能。系统支持管理员、医生、用户三种角色,适合作为Vue3全栈开发学习项目或计算机设计参考。
项目封面

项目说明
考试焦虑测评与辅助治疗系统
项目简介
这是一个完整的考试焦虑测评与辅助治疗平台,采用前后端分离架构,实现了焦虑测评问卷、测评结果分析、医生咨询、治疗建议、疾病知识等核心功能。系统支持管理员、医生、用户三种角色,适合作为Vue3全栈开发学习项目或计算机设计参考。
技术栈
后端技术
| 技术 | 版本/说明 |
|---|---|
| 运行环境 | Node.js 18.0+ |
| Web框架 | Egg.js 3.17.5 |
| 数据库 | MySQL 5.7+ |
| 数据库插件 | egg-mysql 5.0.0 |
| 身份认证 | egg-jwt |
| 跨域处理 | egg-cors |
| 表单验证 | egg-validate |
| 密码加密 | bcryptjs |
前端技术
| 技术 | 版本/说明 |
|---|---|
| 前端框架 | Vue 3.5.13 |
| 构建工具 | Vite 6.2.4 |
| UI组件库 | Element Plus 2.9.8 |
| 路由管理 | Vue Router 4.5.0 |
| 状态管理 | Pinia 3.0.1 |
| HTTP请求 | Axios 1.8.4 |
| 工具库 | Lodash 4.17.21 |
项目特点
- 前后端分离:后端提供RESTful API,前端独立开发部署
- 三角色系统:支持管理员、医生、用户三种角色
- 专业测评:标准化焦虑测评问卷和评分系统
- 医患互动:用户可与医生进行在线咨询
- 治疗建议:医生可针对测评结果给出专业建议
- 知识科普:提供焦虑相关疾病知识
功能模块
管理员端功能
1. 管理员布局 (admin/AdminLayout.vue)
- 侧边栏导航
- 顶部信息栏
2. 用户管理 (admin/UserManagement.vue)
- 用户列表
- 新增/编辑/删除用户
- 用户角色分配
- 用户状态管理
3. 医生管理 (admin/DoctorManagement.vue)
- 医生列表
- 新增/编辑/删除医生
- 医生资质管理
4. 问卷管理 (admin/QuestionnaireManagement.vue)
- 问卷列表
- 新增/编辑/删除问卷
- 问卷题目管理
- 评分规则设置
5. 疾病管理 (admin/DiseaseManagement.vue)
- 疾病知识列表
- 新增/编辑/删除疾病信息
- 疾病分类管理
6. 通知管理 (admin/NotificationManagement.vue)
- 通知公告列表
- 新增/编辑/删除通知
- 通知发布管理
医生端功能
1. 医生布局 (doctor/DoctorLayout.vue)
- 侧边栏导航
- 顶部信息栏
2. 测评结果查看 (doctor/TestResults.vue)
- 用户测评结果列表
- 测评详情查看
- 结果分析
3. 在线咨询 (doctor/Consultation.vue)
- 咨询消息列表
- 与用户实时沟通
- 消息回复
4. 治疗建议 (doctor/Suggestion.vue)
- 建议列表
- 新增/编辑建议
- 针对用户给出专业建议
5. 个人资料 (doctor/Profile.vue)
- 医生信息编辑
- 资质信息管理
- 密码修改
用户端功能
1. 用户布局 (user/UserLayout.vue)
- 侧边栏导航
- 顶部信息栏
2. 自我测评 (user/SelfTest.vue)
- 问卷列表
- 在线答题
- 提交测评
3. 测评结果 (user/TestResults.vue)
- 我的测评记录
- 测评详情查看
- 结果分析图表
4. 在线咨询 (user/Consultation.vue)
- 选择医生咨询
- 发送咨询消息
- 查看医生回复
5. 治疗建议 (user/Suggestion.vue)
- 查看医生建议
- 建议详情
6. 疾病知识 (user/DiseaseInfo.vue)
- 疾病知识列表
- 知识详情阅读
7. 通知公告 (user/Notifications.vue)
- 系统通知列表
- 通知详情
8. 个人资料 (user/Profile.vue)
- 用户信息编辑
- 密码修改
公共功能
登录注册
- 登录页 (
Login.vue) - 注册页 (
Register.vue) - 角色选择
项目结构
kaoshijiaolvzhiliao/
├── egg版本/ # Egg.js版本
│ ├── egg/ # 后端服务(Egg.js + MySQL)
│ │ ├── app/
│ │ │ ├── controller/ # 控制器
│ │ │ │ ├── diseases.js # 疾病接口
│ │ │ │ ├── messages.js # 消息接口
│ │ │ │ ├── notifications.js # 通知接口
│ │ │ │ ├── questionnaires.js # 问卷接口
│ │ │ │ ├── questionnairesResult.js # 测评结果接口
│ │ │ │ ├── suggestion.js # 建议接口
│ │ │ │ └── user.js # 用户接口
│ │ │ ├── middleware/ # 中间件
│ │ │ │ └── jwt.js # JWT验证
│ │ │ ├── public/ # 静态资源
│ │ │ ├── service/ # 业务逻辑层
│ │ │ │ ├── diseases.js # 疾病服务
│ │ │ │ ├── messages.js # 消息服务
│ │ │ │ ├── notifications.js # 通知服务
│ │ │ │ ├── questionnaires.js # 问卷服务
│ │ │ │ ├── questionnairesResult.js # 测评结果服务
│ │ │ │ ├── suggestion.js # 建议服务
│ │ │ │ └── user.js # 用户服务
│ │ │ ├── router.js # 路由配置
│ │ │ └── utils.js # 工具函数
│ │ ├── config/
│ │ │ ├── config.default.js # 默认配置
│ │ │ └── plugin.js # 插件配置
│ │ ├── logs/ # 日志目录
│ │ └── package.json
│ │
│ ├── web-egg/ # 前端(Vue3 + Element Plus)
│ │ ├── public/ # 静态资源
│ │ ├── src/
│ │ │ ├── api/ # API接口封装
│ │ │ │ ├── index.js # API定义
│ │ │ │ └── request.js # 请求封装
│ │ │ ├── assets/ # 静态资源
│ │ │ ├── components/ # 公共组件
│ │ │ ├── router/ # 路由配置
│ │ │ ├── stores/ # Pinia状态管理
│ │ │ ├── views/ # 页面视图
│ │ │ │ ├── admin/ # 管理员页面
│ │ │ │ │ ├── AdminLayout.vue # 管理员布局
│ │ │ │ │ ├── DiseaseManagement.vue # 疾病管理
│ │ │ │ │ ├── DoctorManagement.vue # 医生管理
│ │ │ │ │ ├── NotificationManagement.vue # 通知管理
│ │ │ │ │ ├── QuestionnaireManagement.vue # 问卷管理
│ │ │ │ │ └── UserManagement.vue # 用户管理
│ │ │ │ ├── doctor/ # 医生页面
│ │ │ │ │ ├── Consultation.vue # 在线咨询
│ │ │ │ │ ├── DoctorLayout.vue # 医生布局
│ │ │ │ │ ├── Profile.vue # 个人资料
│ │ │ │ │ ├── Suggestion.vue # 治疗建议
│ │ │ │ │ └── TestResults.vue # 测评结果
│ │ │ │ ├── user/ # 用户页面
│ │ │ │ │ ├── Consultation.vue # 在线咨询
│ │ │ │ │ ├── DiseaseInfo.vue # 疾病知识
│ │ │ │ │ ├── Notifications.vue # 通知公告
│ │ │ │ │ ├── Profile.vue # 个人资料
│ │ │ │ │ ├── SelfTest.vue # 自我测评
│ │ │ │ │ ├── Suggestion.vue # 治疗建议
│ │ │ │ │ ├── TestResults.vue # 测评结果
│ │ │ │ │ └── UserLayout.vue # 用户布局
│ │ │ │ ├── Login.vue # 登录页
│ │ │ │ └── Register.vue # 注册页
│ │ │ ├── App.vue # 根组件
│ │ │ └── main.js # 入口文件
│ │ ├── package.json
│ │ └── vite.config.js # Vite配置
│ │
│ └── express/ # Express静态服务(可选)
│
├── java版本/ # Java版本(备选)
├── web-static/ # 静态资源
├── 封面/ # 项目封面图
└── 功能图.jpg # 功能结构图
数据模型
用户表 (users)
{
id: int, // 用户ID
username: varchar(50), // 用户名(唯一)
password: varchar(255), // 密码(加密)
name: varchar(50), // 姓名
phone: varchar(20), // 手机号
email: varchar(100), // 邮箱
role: varchar(20), // 角色:admin-管理员,doctor-医生,user-用户
avatar: varchar(500), // 头像
status: int, // 状态(1正常 0禁用)
create_time: datetime, // 创建时间
update_time: datetime // 更新时间
}
问卷表 (questionnaires)
{
id: int, // 问卷ID
title: varchar(200), // 问卷标题
description: text, // 问卷描述
questions: longtext, // 题目列表(JSON格式)
scoring_rules: longtext, // 评分规则(JSON格式)
status: int, // 状态(1启用 0禁用)
create_time: datetime, // 创建时间
update_time: datetime // 更新时间
}
测评结果表 (questionnaire_results)
{
id: int, // 结果ID
user_id: int, // 用户ID
questionnaire_id: int, // 问卷ID
answers: longtext, // 答案(JSON格式)
score: int, // 得分
level: varchar(50), // 焦虑等级
analysis: text, // 结果分析
create_time: datetime, // 创建时间
update_time: datetime // 更新时间
}
消息表 (messages)
{
id: int, // 消息ID
sender_id: int, // 发送者ID
receiver_id: int, // 接收者ID
content: text, // 消息内容
is_read: int, // 是否已读(0未读 1已读)
create_time: datetime, // 创建时间
update_time: datetime // 更新时间
}
治疗建议表 (suggestions)
{
id: int, // 建议ID
doctor_id: int, // 医生ID
user_id: int, // 用户ID
result_id: int, // 测评结果ID
content: text, // 建议内容
create_time: datetime, // 创建时间
update_time: datetime // 更新时间
}
疾病知识表 (diseases)
{
id: int, // 疾病ID
title: varchar(200), // 标题
category: varchar(50), // 分类
content: longtext, // 内容
cover: varchar(500), // 封面图
status: int, // 状态(1发布 0草稿)
create_time: datetime, // 创建时间
update_time: datetime // 更新时间
}
通知表 (notifications)
{
id: int, // 通知ID
title: varchar(200), // 标题
content: text, // 内容
type: varchar(50), // 类型
status: int, // 状态(1发布 0草稿)
create_time: datetime, // 创建时间
update_time: datetime // 更新时间
}
焦虑等级说明
| 分数范围 | 等级 | 说明 |
|---|---|---|
| 0-20 | 正常 | 无明显焦虑症状 |
| 21-40 | 轻度焦虑 | 存在轻微焦虑,建议自我调节 |
| 41-60 | 中度焦虑 | 焦虑症状明显,建议咨询医生 |
| 61-80 | 重度焦虑 | 焦虑症状严重,需要专业治疗 |
| 81-100 | 极重度焦虑 | 需要立即就医 |
运行环境要求
后端环境
- Node.js 18.0+
- MySQL 5.7+
- npm 或 pnpm
前端环境
- Node.js 18.0+
- npm 或 pnpm
- 现代浏览器(Chrome、Firefox、Edge等)
快速开始
1. 数据库配置
- 创建MySQL数据库
CREATE DATABASE kaoshijiaolv CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-
导入数据库文件(如有提供)
-
修改数据库配置 编辑
egg版本/egg/config/config.default.js:
config.mysql = {
client: {
host: 'localhost',
port: '3306',
user: 'root',
password: 'root', // 修改为你的密码
database: 'kaoshijiaolv',
},
};
2. 启动后端服务
# 进入后端目录
cd egg版本/egg
# 安装依赖
npm install
# 或使用 pnpm
pnpm install
# 启动服务(开发模式)
npm run dev
后端服务默认运行在 http://localhost:7001
3. 启动前端
# 进入前端目录
cd egg版本/web-egg
# 安装依赖
npm install
# 或使用 pnpm
pnpm install
# 启动开发服务器
npm run dev
前端默认运行在 http://localhost:5173
默认账号
| 角色 | 用户名 | 密码 | 说明 |
|---|---|---|---|
| 管理员 | admin | 123456 | 拥有所有管理权限 |
| 医生 | doctor | 123456 | 医生权限 |
| 用户 | user | 123456 | 普通用户权限 |
界面预览
项目包含功能结构图:
功能图.jpg- 系统功能结构图
扩展建议
如需进一步完善项目,可考虑以下扩展:
- 视频咨询:集成WebRTC实现视频咨询
- 预约系统:添加医生预约功能
- 支付功能:集成支付实现付费咨询
- 数据分析:测评数据统计和趋势分析
- AI辅助:接入AI进行初步诊断建议
- 移动端:开发小程序或APP版本
- 报告导出:测评报告PDF导出
- 提醒功能:定期测评提醒
注意事项
- 本项目为学习演示项目,不能替代专业医疗诊断
- 生产环境部署需要配置HTTPS
- 建议定期备份数据库数据
- 密码使用bcrypt加密存储
常见问题
Q: 数据库连接失败?
A: 检查MySQL服务是否启动,数据库配置是否正确
Q: 登录后页面空白?
A: 检查用户角色是否正确,确认路由配置
Q: 问卷无法提交?
A: 检查问卷题目格式是否正确,确认所有必填项已填写
许可证
本项目仅供学习交流使用,请勿用于商业用途。
技术分类
包含内容
适用人群
学习参考与二次开发
关于 AI源码
AI源码 专注优质项目源码分享,提供完整源码、详细文档与技术支持,助力源码设计与课程作业。
相关推荐
查看全部 →
社区医院儿童健康信息管理系统(java)
社区医院儿童健康信息管理系统是一个专为社区医院设计的儿童健康档案管理平台,采用前后端分离架构,提供儿童健康信息的录入、查询、统计和管理功能。

社区医院儿童健康信息管理系统
社区医院儿童健康信息管理系统是一个基于 Spring Boot 3 + Vue 3 的全栈 Web 应用,旨在为社区医院提供儿童健康信息的数字化管理解决方案。系统支持儿童档案管理、健康测评、疫苗预约、在线咨询等核心功能。

社区医疗服务可视化系统
这是一个基于SpringBoot + Vue2开发的社区医疗服务可视化管理系统,主要面向社区医疗机构提供信息化管理解决方案。系统实现了患者管理、医生管理、预约挂号、病历管理、药品管理、数据统计可视化等核心功能,界面简洁美观,功能完善,适合作为计算机设计或学习项目。

婴幼儿个性化辅食推荐系统
基于 Python Flask + SQLite 的 Web 应用,面向家长管理婴幼儿辅食与营养,并提供三类推荐算法(内容推荐、协同过滤、知识推荐)。

AI在线问诊平台
这是一个基于AI技术的在线问诊平台系统,包含管理后台、医生端PC网站和患者端PC网站三个子系统。系统实现了医生入驻申请、预约挂号、在线问诊、病历管理、实时通讯、AI辅助诊断等核心功能,采用前后端分离架构,适合作为医疗健康类全栈开发学习项目或计算机设计参考。

心理健康教育小程序
这是一个心理健康教育与自助服务的微信小程序,采用纯前端实现,使用本地Mock数据模拟后端接口。项目完整实现了情绪管理、压力应对、助眠放松、正念练习、心理测评、自助工具等核心功能,适合作为微信小程序开发学习项目或计算机设计参考。