ZhangXianQiang
2024-06-28 b21e0d75f513ef9a87a99f059ca0aa85e3670955
fix:修改考试
5个文件已修改
40 ■■■■ 已修改文件
src/store/modules/exam.js 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/exam-list/data-list/index.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/exam/components/answer-main/answer-multiple/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/exam/components/answer-time/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/exam/index.vue 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/store/modules/exam.js
@@ -43,7 +43,6 @@
    };
  });
  const setExamInfo = (info) => {
    examInfo.value = info;
  };
@@ -58,6 +57,13 @@
      temp.questionList[index].answer = answer;
    }
  };
  const setQuestionAnswerList = (type, index, answer) => {
    const temp = examDetail.value.find(item => item.questionType === type);
    if (temp) {
      temp.questionList[index].answerList = answer;
    }
  }
  const setProgress = (progress) => {
    answerProgress.value = progress;
@@ -87,6 +93,7 @@
    setExamInfo,
    setExamDetail,
    setQuestionAnswer,
    setQuestionAnswerList,
    setProgress
  };
});
src/views/exam-list/data-list/index.vue
@@ -84,13 +84,12 @@
  console.log(exam);
  getExamInfo(exam.id).then((res) => {
    examStore.setExamInfo({
      examId: res.data.id,
      examName: res.data.examName,
      examTime: res.data.suggestTime,
      suggestTime: res.data.suggestTime,
    });
    examStore.setExamDetail(res.data.titleList);
    // examStore.setExamInfo(res.data.examInfo);
    // examStore.setExamDetail(res.data.examQuestionList);
    // examStore.initExam();
    examStore.initExam();
    router.push('/exam');
  }).catch(err => {
src/views/exam/components/answer-main/answer-multiple/index.vue
@@ -32,7 +32,7 @@
    // resetAnswer();
    item.isActive = !item.isActive;
    const answerList = filterAnswer();
    examStore.setQuestionAnswer(currentType.value, currentIndex.value, answerList.join(','));
    examStore.setQuestionAnswerList(currentType.value, currentIndex.value, answerList);
  }
};
@@ -44,7 +44,7 @@
};
const filterAnswer = () => {
  return activeQuestion.value.questionItemList.filter(item => item.isActive);
  return activeQuestion.value.questionItemList.filter(item => item.isActive).map(item => item.prefix);
}
src/views/exam/components/answer-time/index.vue
@@ -18,7 +18,7 @@
const emit = defineEmits(['timeOut']);
const time = ref(dayjs().valueOf() + examInfo.value.examTime * 1000 * 60);
const time = ref(dayjs().valueOf() + examInfo.value.suggestTime * 1000 * 60);
const timeFinish = () => {
  emit('timeOut');
src/views/exam/index.vue
@@ -40,7 +40,7 @@
              </div>
              <div class="submit-wrapper">
                <el-button type="primary" class="submit-button" @click="submitExam">提交试卷</el-button>
                <el-button type="primary" class="submit-button" @click="submitExamHandle">提交试卷</el-button>
              </div>
            </div>
@@ -148,6 +148,9 @@
import { useExamStore } from '@/store/index.js';
import { useRouter } from 'vue-router';
import { submitExam } from '@/api/modules/exam.js';
const router = useRouter();
const examStore = useExamStore();
@@ -220,7 +223,7 @@
};
// 交卷
const submitExam = () => {
const submitExamHandle = () => {
  submitDialog.value = true;
};
@@ -237,9 +240,16 @@
const timeOut = () => {
  resetAllDialog();
  timeDialog.value = true;
  setTimeout(() => {
  const temp = {
    ...examInfo.value,
    titleList: examDetail.value
  }
  submitExam(temp).then(res => {
    router.back();
  },2000);
  })
  // setTimeout(() => {
  //   router.back();
  // },2000);
};
watchEffect(() => {