5 Commits

Author SHA1 Message Date
yuliang_guo
4e817f6eef fix: 修复exam_service解析questions JSON格式
All checks were successful
continuous-integration/drone/push Build is passing
questions可能是{"questions":[...]}或直接是列表,需要兼容处理
2026-01-31 11:28:00 +08:00
yuliang_guo
e1d10605c9 fix: ExamService.start_exam返回ID避免懒加载
All checks were successful
continuous-integration/drone/push Build is passing
修改start_exam返回exam.id而不是整个Exam对象,
彻底避免SQLAlchemy异步会话的懒加载问题
2026-01-31 11:21:39 +08:00
yuliang_guo
2334a2544c fix: 修复exam_service异常类导入错误
All checks were successful
continuous-integration/drone/push Build is passing
将不存在的BusinessException/ErrorCode替换为现有的NotFoundError/ValidationError
2026-01-31 11:15:52 +08:00
yuliang_guo
e3b7bdcfd8 feat: 实现考试分数智能分配
All checks were successful
continuous-integration/drone/push Build is passing
解决题目数量无法整除总分时出现无限小数的问题

后端:
- 新增 ScoreDistributor 分数分配工具类
- 支持整数分配和小数分配两种模式
- 更新 exam_service.py 使用智能分配
- 考试总分固定100分,按题目数量智能分配

前端:
- 新增 scoreFormatter.ts 分数格式化工具
- 提供分数显示、等级判断等辅助函数

示例:100分/6题 = [17,17,17,17,16,16] 总和=100
2026-01-30 14:50:41 +08:00
111
998211c483 feat: 初始化考培练系统项目
- 从服务器拉取完整代码
- 按框架规范整理项目结构
- 配置 Drone CI 测试环境部署
- 包含后端(FastAPI)、前端(Vue3)、管理端

技术栈: Vue3 + TypeScript + FastAPI + MySQL
2026-01-24 19:33:28 +08:00