ZhangXianQiang
2024-06-20 66d92c9e500d674524b235b4a156ba8959e1cbbe
feat:考试测试数据
5个文件已修改
1 文件已重命名
818 ■■■■■ 已修改文件
public/test_question.png 补丁 | 查看 | 原始文档 | blame | 历史
src/api/modules/exam.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/ExamInfo/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/mock/exam.js 521 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/store/modules/exam.js 272 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/exam-list/data-list/index.vue 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
public/test_question.png

src/api/modules/exam.js
@@ -3,4 +3,8 @@
export const getExamList = () => {
  return service.get('/api/v1/getExamList');
}
export const getExamInfo = () => {
  return service.get('/api/v1/getExamInfo');
}
src/components/ExamInfo/index.vue
@@ -8,9 +8,9 @@
      <ExamAudio :audioSrc="activeQuestion.audioFile"></ExamAudio>
    </div>
    <div class="img-container flex">
    <div class="img-container flex" v-if="activeQuestion.img">
      <div class="img-item">
        <img src="@/assets/test.png" class="info-img" alt="">
        <img :src="activeQuestion.img" class="info-img" alt="">
      </div>
    </div>
  </div>
src/mock/exam.js
@@ -9,262 +9,269 @@
        msg: 'Success',
        data: {
          examInfo: {
            id: 1,
            name: '考试1',
            startTime: '2019-01-01 00:00:00',
            endTime: '2019-01-01 00:00:00',
            examQuestionList: [
              {
                questionType: 1,
                questionList: [
                  {
                    "id": null,
                    "questionType": 1,
                    "gradeLevel": null,
                    "subjectId": 2,
                    "title": "1+1=?123",
                    "items": [
                      {
                        "prefix": "A",
                        "content": "1"
                      },
                      {
                        "prefix": "B",
                        "content": "2"
                      },
                      {
                        "prefix": "C",
                        "content": "3"
                      },
                      {
                        "prefix": "D",
                        "content": "4"
                      }
                    ],
                    "analyze": "问小朋友",
                    "correct": "",
                    "score": "3",
                    "difficult": 5
                  },
                  {
                    "id": null,
                    "questionType": 1,
                    "gradeLevel": null,
                    "subjectId": 2,
                    "title": "1+1=?",
                    "items": [
                      {
                        "prefix": "A",
                        "content": "1"
                      },
                      {
                        "prefix": "B",
                        "content": "2"
                      },
                      {
                        "prefix": "C",
                        "content": "3"
                      },
                      {
                        "prefix": "D",
                        "content": "4"
                      }
                    ],
                    "analyze": "问小朋友",
                    "correct": "",
                    "score": "3",
                    "difficult": 5
                  }
                ]
              },
              {
                questionType: 2,
                questionList: [
                  {
                    "id": null,
                    "questionType": 1,
                    "gradeLevel": null,
                    "subjectId": 2,
                    "title": "1+1=?",
                    "items": [
                      {
                        "prefix": "A",
                        "content": "1"
                      },
                      {
                        "prefix": "B",
                        "content": "2"
                      },
                      {
                        "prefix": "C",
                        "content": "3"
                      },
                      {
                        "prefix": "D",
                        "content": "4"
                      }
                    ],
                    "analyze": "问小朋友",
                    "correct": "",
                    "score": "5",
                    "difficult": 5
                  },
                  {
                    "id": null,
                    "questionType": 1,
                    "gradeLevel": null,
                    "subjectId": 2,
                    "title": "1+1=?",
                    "items": [
                      {
                        "prefix": "A",
                        "content": "1"
                      },
                      {
                        "prefix": "B",
                        "content": "2"
                      },
                      {
                        "prefix": "C",
                        "content": "3"
                      },
                      {
                        "prefix": "D",
                        "content": "4"
                      }
                    ],
                    "analyze": "问小朋友",
                    "correct": "",
                    "score": "5",
                    "difficult": 5
                  },
                  {
                    "id": null,
                    "questionType": 1,
                    "gradeLevel": null,
                    "subjectId": 2,
                    "title": "1+1=?",
                    "items": [
                      {
                        "prefix": "A",
                        "content": "1"
                      },
                      {
                        "prefix": "B",
                        "content": "2"
                      },
                      {
                        "prefix": "C",
                        "content": "3"
                      },
                      {
                        "prefix": "D",
                        "content": "4"
                      }
                    ],
                    "analyze": "问小朋友",
                    "correct": "",
                    "score": "5",
                    "difficult": 5
                  },
                  {
                    "id": null,
                    "questionType": 1,
                    "gradeLevel": null,
                    "subjectId": 2,
                    "title": "1+1=?",
                    "items": [
                      {
                        "prefix": "A",
                        "content": "1"
                      },
                      {
                        "prefix": "B",
                        "content": "2"
                      },
                      {
                        "prefix": "C",
                        "content": "3"
                      },
                      {
                        "prefix": "D",
                        "content": "4"
                      }
                    ],
                    "analyze": "问小朋友",
                    "correct": "",
                    "score": "5",
                    "difficult": 5
                  }
                ]
              },
              {
                questionType: 3,
                questionList: [
                  {
                    "id": null,
                    "questionType": 1,
                    "gradeLevel": null,
                    "subjectId": 2,
                    "title": "测试音频1",
                    "audioFile": '/test.mp3',
                    "items": [
                      {
                        "prefix": "A",
                        "content": "1"
                      },
                      {
                        "prefix": "B",
                        "content": "2"
                      },
                      {
                        "prefix": "C",
                        "content": "3"
                      },
                      {
                        "prefix": "D",
                        "content": "4"
                      }
                    ],
                    "analyze": "问小朋友",
                    "correct": "",
                    "score": "3",
                    "difficult": 5
                  },
                  {
                    "id": null,
                    "questionType": 1,
                    "gradeLevel": null,
                    "subjectId": 2,
                    "title": "测试音频2",
                    "audioFile": '/test.mp3',
                    "items": [
                      {
                        "prefix": "A",
                        "content": "1"
                      },
                      {
                        "prefix": "B",
                        "content": "2"
                      },
                      {
                        "prefix": "C",
                        "content": "3"
                      },
                      {
                        "prefix": "D",
                        "content": "4"
                      }
                    ],
                    "analyze": "问小朋友",
                    "correct": "",
                    "score": "3",
                    "difficult": 5
                  }
                ]
              },
            ]
          }
            examId: 1,
            examName: '测试名称',
            examType: '考试类型',
            examStatus: '考试状态',
            examStartTime: '2021-01-01',
            examEndTime: '2021-01-01',
            examTime: 30,
            examGrade: 60,
          },
          examQuestionList: [
            {
              questionType: 1,
              questionList: [
                {
                  "id": null,
                  "questionType": 1,
                  "gradeLevel": null,
                  "subjectId": 2,
                  "title": "1+1=?123",
                  "img": '/test_question.png',
                  "items": [
                    {
                      "prefix": "A",
                      "content": "1"
                    },
                    {
                      "prefix": "B",
                      "content": "2"
                    },
                    {
                      "prefix": "C",
                      "content": "3"
                    },
                    {
                      "prefix": "D",
                      "content": "4"
                    }
                  ],
                  "analyze": "问小朋友",
                  "correct": "",
                  "score": "3",
                  "difficult": 5
                },
                {
                  "id": null,
                  "questionType": 1,
                  "gradeLevel": null,
                  "subjectId": 2,
                  "title": "1+1=?",
                  "items": [
                    {
                      "prefix": "A",
                      "content": "1"
                    },
                    {
                      "prefix": "B",
                      "content": "2"
                    },
                    {
                      "prefix": "C",
                      "content": "3"
                    },
                    {
                      "prefix": "D",
                      "content": "4"
                    }
                  ],
                  "analyze": "问小朋友",
                  "correct": "",
                  "score": "3",
                  "difficult": 5
                }
              ]
            },
            {
              questionType: 2,
              questionList: [
                {
                  "id": null,
                  "questionType": 1,
                  "gradeLevel": null,
                  "subjectId": 2,
                  "title": "1+1=?",
                  "img": '/test_question.png',
                  "items": [
                    {
                      "prefix": "A",
                      "content": "1"
                    },
                    {
                      "prefix": "B",
                      "content": "2"
                    },
                    {
                      "prefix": "C",
                      "content": "3"
                    },
                    {
                      "prefix": "D",
                      "content": "4"
                    }
                  ],
                  "analyze": "问小朋友",
                  "correct": "",
                  "score": "5",
                  "difficult": 5
                },
                {
                  "id": null,
                  "questionType": 1,
                  "gradeLevel": null,
                  "subjectId": 2,
                  "title": "1+1=?",
                  "items": [
                    {
                      "prefix": "A",
                      "content": "1"
                    },
                    {
                      "prefix": "B",
                      "content": "2"
                    },
                    {
                      "prefix": "C",
                      "content": "3"
                    },
                    {
                      "prefix": "D",
                      "content": "4"
                    }
                  ],
                  "analyze": "问小朋友",
                  "correct": "",
                  "score": "5",
                  "difficult": 5
                },
                {
                  "id": null,
                  "questionType": 1,
                  "gradeLevel": null,
                  "subjectId": 2,
                  "title": "1+1=?",
                  "items": [
                    {
                      "prefix": "A",
                      "content": "1"
                    },
                    {
                      "prefix": "B",
                      "content": "2"
                    },
                    {
                      "prefix": "C",
                      "content": "3"
                    },
                    {
                      "prefix": "D",
                      "content": "4"
                    }
                  ],
                  "analyze": "问小朋友",
                  "correct": "",
                  "score": "5",
                  "difficult": 5
                },
                {
                  "id": null,
                  "questionType": 1,
                  "gradeLevel": null,
                  "subjectId": 2,
                  "title": "1+1=?",
                  "items": [
                    {
                      "prefix": "A",
                      "content": "1"
                    },
                    {
                      "prefix": "B",
                      "content": "2"
                    },
                    {
                      "prefix": "C",
                      "content": "3"
                    },
                    {
                      "prefix": "D",
                      "content": "4"
                    }
                  ],
                  "analyze": "问小朋友",
                  "correct": "",
                  "score": "5",
                  "difficult": 5
                }
              ]
            },
            {
              questionType: 3,
              questionList: [
                {
                  "id": null,
                  "questionType": 1,
                  "gradeLevel": null,
                  "subjectId": 2,
                  "title": "测试音频1",
                  "audioFile": '/test.mp3',
                  "img": '/test_question.png',
                  "items": [
                    {
                      "prefix": "A",
                      "content": "1"
                    },
                    {
                      "prefix": "B",
                      "content": "2"
                    },
                    {
                      "prefix": "C",
                      "content": "3"
                    },
                    {
                      "prefix": "D",
                      "content": "4"
                    }
                  ],
                  "analyze": "问小朋友",
                  "correct": "",
                  "score": "3",
                  "difficult": 5
                },
                {
                  "id": null,
                  "questionType": 1,
                  "gradeLevel": null,
                  "subjectId": 2,
                  "title": "测试音频2",
                  "audioFile": '/test.mp3',
                  "items": [
                    {
                      "prefix": "A",
                      "content": "1"
                    },
                    {
                      "prefix": "B",
                      "content": "2"
                    },
                    {
                      "prefix": "C",
                      "content": "3"
                    },
                    {
                      "prefix": "D",
                      "content": "4"
                    }
                  ],
                  "analyze": "问小朋友",
                  "correct": "",
                  "score": "3",
                  "difficult": 5
                }
              ]
            },
          ]
        }
      };
    }
@@ -296,7 +303,7 @@
            'examScore|60-100': 100
          }
        ]
      }
      };
    }
  }
];
src/store/modules/exam.js
@@ -1,16 +1,9 @@
import { ref, computed } from 'vue';
import { defineStore } from 'pinia';
export const useExamStore = defineStore('exam', () => {
  const examInfo = ref({
    examId: 1,
    examName: '考试名称',
    examType: '考试类型',
    examStatus: '考试状态',
    examStartTime: '2021-01-01',
    examEndTime: '2021-01-01',
    examTime: 30,
  });
  const examInfo = ref(null);
  const examDetail = ref([]);
  const examType = ref({
    1: '单选题',
    2: '多选题',
@@ -22,257 +15,6 @@
  const answerProgress = ref(0);
  const examDetail = ref([
    {
      questionType: 1,
      questionList: [
        {
          "id": null,
          "questionType": 1,
          "gradeLevel": null,
          "subjectId": 2,
          "title": "1+1=?123",
          "items": [
            {
              "prefix": "A",
              "content": "1"
            },
            {
              "prefix": "B",
              "content": "2"
            },
            {
              "prefix": "C",
              "content": "3"
            },
            {
              "prefix": "D",
              "content": "4"
            }
          ],
          "analyze": "问小朋友",
          "correct": "",
          "score": "3",
          "difficult": 5
        },
        {
          "id": null,
          "questionType": 1,
          "gradeLevel": null,
          "subjectId": 2,
          "title": "1+1=?",
          "items": [
            {
              "prefix": "A",
              "content": "1"
            },
            {
              "prefix": "B",
              "content": "2"
            },
            {
              "prefix": "C",
              "content": "3"
            },
            {
              "prefix": "D",
              "content": "4"
            }
          ],
          "analyze": "问小朋友",
          "correct": "",
          "score": "3",
          "difficult": 5
        }
      ]
    },
    {
      questionType: 2,
      questionList: [
        {
          "id": null,
          "questionType": 1,
          "gradeLevel": null,
          "subjectId": 2,
          "title": "1+1=?",
          "items": [
            {
              "prefix": "A",
              "content": "1"
            },
            {
              "prefix": "B",
              "content": "2"
            },
            {
              "prefix": "C",
              "content": "3"
            },
            {
              "prefix": "D",
              "content": "4"
            }
          ],
          "analyze": "问小朋友",
          "correct": "",
          "score": "5",
          "difficult": 5
        },
        {
          "id": null,
          "questionType": 1,
          "gradeLevel": null,
          "subjectId": 2,
          "title": "1+1=?",
          "items": [
            {
              "prefix": "A",
              "content": "1"
            },
            {
              "prefix": "B",
              "content": "2"
            },
            {
              "prefix": "C",
              "content": "3"
            },
            {
              "prefix": "D",
              "content": "4"
            }
          ],
          "analyze": "问小朋友",
          "correct": "",
          "score": "5",
          "difficult": 5
        },
        {
          "id": null,
          "questionType": 1,
          "gradeLevel": null,
          "subjectId": 2,
          "title": "1+1=?",
          "items": [
            {
              "prefix": "A",
              "content": "1"
            },
            {
              "prefix": "B",
              "content": "2"
            },
            {
              "prefix": "C",
              "content": "3"
            },
            {
              "prefix": "D",
              "content": "4"
            }
          ],
          "analyze": "问小朋友",
          "correct": "",
          "score": "5",
          "difficult": 5
        },
        {
          "id": null,
          "questionType": 1,
          "gradeLevel": null,
          "subjectId": 2,
          "title": "1+1=?",
          "items": [
            {
              "prefix": "A",
              "content": "1"
            },
            {
              "prefix": "B",
              "content": "2"
            },
            {
              "prefix": "C",
              "content": "3"
            },
            {
              "prefix": "D",
              "content": "4"
            }
          ],
          "analyze": "问小朋友",
          "correct": "",
          "score": "5",
          "difficult": 5
        }
      ]
    },
    {
      questionType: 3,
      questionList: [
        {
          "id": null,
          "questionType": 1,
          "gradeLevel": null,
          "subjectId": 2,
          "title": "测试音频1",
          "audioFile": '/test.mp3',
          "items": [
            {
              "prefix": "A",
              "content": "1"
            },
            {
              "prefix": "B",
              "content": "2"
            },
            {
              "prefix": "C",
              "content": "3"
            },
            {
              "prefix": "D",
              "content": "4"
            }
          ],
          "analyze": "问小朋友",
          "correct": "",
          "score": "3",
          "difficult": 5
        },
        {
          "id": null,
          "questionType": 1,
          "gradeLevel": null,
          "subjectId": 2,
          "title": "测试音频2",
          "audioFile": '/test.mp3',
          "items": [
            {
              "prefix": "A",
              "content": "1"
            },
            {
              "prefix": "B",
              "content": "2"
            },
            {
              "prefix": "C",
              "content": "3"
            },
            {
              "prefix": "D",
              "content": "4"
            }
          ],
          "analyze": "问小朋友",
          "correct": "",
          "score": "3",
          "difficult": 5
        }
      ]
    },
  ]);
  const getActiveQuestion = computed(() => {
    const temp = examDetail.value.find(item => item.questionType === currentType.value);
@@ -316,6 +58,12 @@
    answerProgress.value = progress;
  };
  const initExam = () => {
    answerProgress.value = 0;
    currentIndex.value = 0;
    currentType.value = 1;
  }
  return {
    examInfo,
@@ -329,6 +77,8 @@
    getActiveQuestion,
    getAnswerInfo,
    initExam,
    setExamInfo,
    setExamDetail,
    setQuestionAnswer,
src/views/exam-list/data-list/index.vue
@@ -34,7 +34,8 @@
          </div>
          <div class="right-container">
            <div class="button-container">
              <el-button type="primary" size="large" @click="examClick" :disabled="stateList[item.status].disabled">开始考试</el-button>
              <el-button type="primary" size="large" @click="examClick"
                :disabled="stateList[item.status].disabled">开始考试</el-button>
            </div>
          </div>
        </div>
@@ -47,6 +48,11 @@
import { ref } from 'vue';
import { Timer } from '@element-plus/icons-vue';
import { useRouter } from 'vue-router';
import { useExamStore } from '@/store/index.js';
import { getExamInfo } from '@/api/modules/exam.js';
const examStore = useExamStore();
const router = useRouter();
const props = defineProps({
@@ -75,7 +81,14 @@
};
const examClick = () => {
  router.push('/exam');
  getExamInfo().then((res) => {
    examStore.setExamInfo(res.data.examInfo);
    examStore.setExamDetail(res.data.examQuestionList);
    examStore.initExam();
    router.push('/exam');
  }).catch(err => {
  });
}
</script>