2 Commits

Author SHA1 Message Date
a62c5b3e62 fix: 修复考试题目选项数据缺失问题
- 在GetExam API中使用convertToDTO函数转换题目数据
- 确保选项数据(options)正确解析并返回给前端
- 修复前端ExamOnline渲染选择题时的undefined错误

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 21:20:34 +08:00
52fff11f07 feat: 实现模拟考试功能
## 后端实现
- 添加考试数据模型 (Exam)
- 实现考试生成API (/api/exam/generate)
- 实现获取考试详情API (/api/exam/:id)
- 实现提交考试API (/api/exam/:id/submit)
- 支持按题型随机抽取题目
- AI智能评分(简答题和论述题)
- 自动计算总分和详细评分

## 前端实现
- 首页添加"模拟考试"入口
- 考试准备页:显示考试说明,选择在线/打印模式
- 在线答题页:按题型分组显示,支持论述题二选一
- 试卷打印页:A4排版,支持打印试卷/答案
- 成绩报告页:显示总分、详细评分、错题分析

## 核心特性
- 随机组卷:填空10题、判断10题、单选10题、多选10题、简答2题、论述题2选1
- 智能评分:使用AI评分论述题,给出分数、评语和建议
- 答题进度保存:使用localStorage防止刷新丢失
- 打印优化:A4纸张、黑白打印、合理排版
- 响应式设计:适配移动端、平板和PC端

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 20:45:30 +08:00