luohairen
2024-11-12 5165ee09de8555e12fb44c458a3d04e41f58e28f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<template>
  <div class="list-container w-full h-full">
    <el-scrollbar>
      <el-table
          v-loading="loading"
          :data="dataList"
          border
          :row-style="{height:'42px'}"
          :cell-style="{padding: '0'}"
      >
        <el-table-column
            align="center"
            label="题目"
            prop="title"
            width="500px"
        ></el-table-column>
        <el-table-column
            label="题型"
            align="center"
            width="100px"
            prop="questionType"
            :formatter="questionTypeFormatter"
        ></el-table-column>
        <el-table-column
            align="center"
            width="100px"
            label="分数"
            prop="questionScore"
        ></el-table-column>
        <el-table-column
            align="center"
            width="100px"
            label="难度"
            prop="difficult"
        ></el-table-column>
        <el-table-column
            align="center"
            width="150px"
            label="试卷名称"
            prop="examName"
        ></el-table-column>
        <el-table-column
            label="操作"
            align="center"
            fixed="right"
        >
          <template #default="{ row }">
            <el-button
                type="primary"
                size="small"
                @click="checkWrong(row)"
            >
              查看错题
            </el-button>
          </template>
        </el-table-column>
 
      </el-table>
    </el-scrollbar>
  </div>
</template>
 
<script setup>
import { ref } from 'vue';
import { useRouter } from 'vue-router';
import { useGradeStore } from '@/store/index.js';
import { checkWrongInfo } from '@/api/modules/grade.js';
 
// dataList
const props = defineProps({
  dataList: {
    type: Array,
    default: () => []
  }
});
const loading = ref(false);
const gradeStore = useGradeStore();
const router = useRouter();
 
const checkWrong = (row) => {
  checkWrongInfo(row.id, row).then((res) => {
    const {id, examName, score, navbar, titleItems} = res.data;
    gradeStore.setExamInfo({
      id,
      examName,
      score,
      navbar
    });
    gradeStore.setExamDetail(titleItems);
    gradeStore.initExam(res.data.titleItems[0].questionType);
    router.push('/grade');
  }).catch(err => {
 
  })
}
  // getGradeInfo(row.id).then((res) => {
  //   const {id,examName, score,navbar,titleItems} = res.data;
  //   gradeStore.setExamInfo({
  //     id,
  //     examName,
  //     score,
  //     navbar
  //   });
  //   gradeStore.setExamDetail(titleItems);
  //   gradeStore.initExam(res.data.titleItems[0].questionType);
  //   router.push('/grade');
  // }).catch(err => {
  //
  // });
 
 
// 题目类型格式化
const questionTypeFormatter = (row,column,cellValue) => {
  const typeMap = {
    1: '单选题',
    2: '多选题',
    3: '判断题',
    4: '填空题',
    5: '简答题',
    6: '语音题',
    7: '计算题',
    8: '分析题'
  };
  return typeMap[cellValue];
}
 
</script>
<style lang="scss" scoped>
.item {
  width: 100%;
  min-height: 120px;
}
 
.bottom-item {
  margin-right: 30px;
}
</style>