From fbe2060425c4a77221015641e06f7bdc16121e73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=A0?= <2091066548@qq.com> Date: Tue, 23 Sep 2025 15:11:58 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E8=AE=A8=E8=AE=BA=E7=82=B9?= =?UTF-8?q?=E8=B5=9E=E5=88=87=E6=8D=A2=E5=88=87=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/opinion/赞_thumbs-up.png | Bin 0 -> 1728 bytes public/opinion/赞_thumbs-up备份 2.png | Bin 0 -> 1697 bytes src/views/ExamNotice.vue | 4 +-- src/views/teacher/ExamPages/AddQuestion.vue | 31 +++++++++++++++++--- 4 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 public/opinion/赞_thumbs-up.png create mode 100644 public/opinion/赞_thumbs-up备份 2.png diff --git a/public/opinion/赞_thumbs-up.png b/public/opinion/赞_thumbs-up.png new file mode 100644 index 0000000000000000000000000000000000000000..8406d5c4b4692797f6dd8c77ca8835ef360dcd71 GIT binary patch literal 1728 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 literal 0 HcmV?d00001 diff --git a/src/views/ExamNotice.vue b/src/views/ExamNotice.vue index fbf40f6..5aad035 100644 --- a/src/views/ExamNotice.vue +++ b/src/views/ExamNotice.vue @@ -104,9 +104,9 @@
- diff --git a/src/views/teacher/ExamPages/AddQuestion.vue b/src/views/teacher/ExamPages/AddQuestion.vue index 704542f..e7813a8 100644 --- a/src/views/teacher/ExamPages/AddQuestion.vue +++ b/src/views/teacher/ExamPages/AddQuestion.vue @@ -1277,10 +1277,15 @@ const renderSingleChoiceData = (options: any[]) => { content: option.content || '' })); - // 设置正确答案 - 将orderNo转换为数组索引(orderNo从1开始,索引从0开始) + // 设置正确答案 - orderNo就是数组索引(从0开始) const correctOption = sortedOptions.find(option => option.izCorrent === 1); if (correctOption) { - questionForm.correctAnswer = correctOption.orderNo - 1; // 转换为数组索引 + questionForm.correctAnswer = correctOption.orderNo; // orderNo就是数组索引 + console.log('🔍 找到正确答案:', { + correctOption: correctOption, + orderNo: correctOption.orderNo, + content: correctOption.content + }); } console.log('✅ 单选题渲染完成:', { @@ -1307,10 +1312,15 @@ const renderMultipleChoiceData = (options: any[]) => { content: option.content || '' })); - // 设置正确答案(可能有多个) - 将orderNo转换为数组索引 + // 设置正确答案(可能有多个) - orderNo就是数组索引 questionForm.correctAnswers = sortedOptions .filter(option => option.izCorrent === 1) - .map(option => option.orderNo - 1); // 转换为数组索引 + .map(option => option.orderNo); // orderNo就是数组索引 + + console.log('🔍 多选题正确答案:', { + correctOptions: sortedOptions.filter(option => option.izCorrent === 1), + correctAnswers: questionForm.correctAnswers + }); console.log('✅ 多选题渲染完成:', { options: questionForm.options, @@ -1439,20 +1449,33 @@ const loadQuestionData = async (id: string) => { let optionsData = []; if (optionsResponse.data) { const apiResponse = optionsResponse.data as any; + console.log('🔍 选项API响应结构:', apiResponse); + if (Array.isArray(apiResponse)) { optionsData = apiResponse; } else if (apiResponse && Array.isArray(apiResponse.result)) { optionsData = apiResponse.result; + } else if (apiResponse && apiResponse.result && Array.isArray(apiResponse.result.records)) { + // 处理分页结构 { result: { records: [...] } } + optionsData = apiResponse.result.records; + console.log('🔍 从分页结构中提取选项数据:', optionsData); } } + console.log('🔍 最终选项数据:', optionsData); + if (success && questionData) { console.log('✅ 获取题目详情成功,开始渲染数据'); + console.log('🔍 题目数据:', questionData); + console.log('🔍 选项数据:', optionsData); + console.log('🔍 选项数据长度:', optionsData.length); + // 将选项数据添加到题目数据中 const completeQuestionData = { ...questionData, options: optionsData }; + console.log('🔍 完整数据结构:', completeQuestionData); renderQuestionData(completeQuestionData); } else { console.error('❌ 获取题目详情失败');