feat: 开始任务直接跳转并补会话页加载

This commit is contained in:
2026-08-05 21:41:27 +08:00
parent 4d9b3c0b02
commit 9ed53aa4bc
3 changed files with 52 additions and 27 deletions
+2 -21
View File
@@ -4,7 +4,6 @@ import request from "@/utils/request";
import router from "@/router";
import { ElMessage, ElMessageBox } from "element-plus";
import { getReviewTaskStatsByTask } from "@/api/review";
import { getActiveSession } from "@/api/studySessions";
import { renderMarkdown } from "@/utils/markdown";
import { applicationStatusOptions } from "@/utils/taskApplication";
@@ -179,30 +178,12 @@ const handlePageChange = (page: number) => {
fetchTasks(page);
};
const startTask = async () => {
const startTask = () => {
if (!selectedTask.value) {
ElMessage.warning("请先选择一个任务");
return;
}
const taskNum = selectedTask.value.taskNum;
try {
const res = await getActiveSession(taskNum);
if (res?.code === 200 && res.data) {
// 有其他任务的活跃会话
const active = res.data;
ElMessageBox.confirm(
`你还有一个未完成的学习任务「${active.taskName}」(${active.sessionNum}),是否前往继续?`,
"有其他任务正在进行",
{ confirmButtonText: "前往继续", cancelButtonText: "取消", type: "warning" }
).then(() => {
router.push(`/start-task/${encodeURIComponent(active.taskNum)}`);
}).catch(() => {});
return;
}
} catch {
// 查询失败不阻塞,直接跳转
}
router.push(`/start-task/${encodeURIComponent(taskNum)}`);
router.push(`/start-task/${encodeURIComponent(selectedTask.value.taskNum)}`);
};
const addTask = () => {