diff --git a/web/src/pages/Home.tsx b/web/src/pages/Home.tsx index cc8cb35..ef6a6cc 100644 --- a/web/src/pages/Home.tsx +++ b/web/src/pages/Home.tsx @@ -647,7 +647,22 @@ const Home: React.FC = () => { // 检查今日每日一练是否存在 if (dailyExamRanking.exam_id) { try { - // 调用开始考试API,创建考试记录 + // 先查询该试卷是否有未完成的考试记录 + const recordListRes = await examApi.getExamRecordList(dailyExamRanking.exam_id) + if (recordListRes.success && recordListRes.data) { + // 查找状态为 in_progress 的记录 + const inProgressRecord = recordListRes.data.find( + record => record.status === 'in_progress' + ) + + if (inProgressRecord) { + // 如果有未完成的记录,继续之前的答题 + navigate(`/exam/${dailyExamRanking.exam_id}/taking/${inProgressRecord.id}`) + return + } + } + + // 如果没有未完成的记录,调用开始考试API创建新记录 const res = await examApi.startExam(dailyExamRanking.exam_id) if (res.success && res.data) { // 跳转到考试答题页面(注意路由是 /taking 不是 /take)