From 1779bbe9a745408fc0a4c1ac216ad7114dd5cf6d Mon Sep 17 00:00:00 2001 From: chenyuan Date: Wed, 23 Sep 2026 10:45:27 +0800 Subject: [PATCH] feat: align teacher question bank actions --- src/views/teacherEnd/exam/index.vue | 37 +++++++++++------------------ 1 file changed, 14 insertions(+), 23 deletions(-) diff --git a/src/views/teacherEnd/exam/index.vue b/src/views/teacherEnd/exam/index.vue index 18399f4..5cce597 100644 --- a/src/views/teacherEnd/exam/index.vue +++ b/src/views/teacherEnd/exam/index.vue @@ -2,7 +2,18 @@

综合考核

维护题库并管理考试全流程

- 新增题目 +
+ 添加题目 + + 批量导入 + + + + 下载模板 + + + AI出题 +
新建考试
@@ -17,28 +28,7 @@ 查询 -
-
- - 下载模板 - - - - 批量导入 - - - -
+ @@ -135,6 +125,7 @@ async function loadProjects() { try { projectOptions.value = (await examApi.getQ async function loadQuestions() { loading.value = true; try { questions.value = (await examApi.getQuestions(questionQuery)).data || []; } finally { loading.value = false; } } async function loadExams() { loading.value = true; try { exams.value = (await examApi.getTeacherExams({ keyword: examKeyword.value })).data || []; } finally { loading.value = false; } } function openQuestion(row) { questionReadonly.value = row?.sourceType === 'PLATFORM'; Object.assign(questionForm, row ? JSON.parse(JSON.stringify(row)) : emptyQuestion()); if (!Array.isArray(questionForm.answer) && isChoice.value) questionForm.answer = []; questionDialog.value = true; } +function openAi() { router.push('/ai'); } function resetAnswer() { questionForm.answer = questionForm.type === "TRUE_FALSE" ? true : questionForm.type === "SHORT_ANSWER" ? "" : []; } function toggleMultiple(label, checked) { questionForm.answer = checked ? [...new Set([...questionForm.answer, label])] : questionForm.answer.filter((item) => item !== label); } function addOption() { questionForm.options.push({ label: String.fromCharCode(65 + questionForm.options.length), content: "" }); }