Blame view

src/views/basic/ask/components/interact.vue 4.27 KB
d01c5799   梁保满   随堂问 报表开发
1
2
  <template>
    <el-table :data="resultData" border style="width: 100%">
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
3
4
5
6
7
8
9
10
11
12
      <el-table-column
        prop="studentCode"
        label="学号"
        align="center"
      ></el-table-column>
      <el-table-column
        prop="studentName"
        label="姓名"
        align="center"
      ></el-table-column>
d01c5799   梁保满   随堂问 报表开发
13
      <template v-if="types != 3">
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
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
        <el-table-column
          prop="rushAnswerTimes"
          label="抢答成功次数"
          sortable
          align="center"
        ></el-table-column>
        <el-table-column
          prop="rushAnswerCorrectTimes"
          label="答对次数"
          sortable
          align="center"
        ></el-table-column>
        <el-table-column
          prop="checkAnswerTimes"
          label="抽答次数"
          sortable
          align="center"
        ></el-table-column>
        <el-table-column
          prop="checkAnswerCorrectTimes"
          label="抽答答对次数"
          sortable
          align="center"
        ></el-table-column>
        <el-table-column
          prop="interactionsNum"
          label="参与得分"
          sortable
          align="center"
        ></el-table-column>
        <el-table-column
          prop="interactionsCorrectNum"
          label="对错得分"
          sortable
          align="center"
        ></el-table-column>
d01c5799   梁保满   随堂问 报表开发
50
51
      </template>
      <template v-else>
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
        <el-table-column
          v-for="(item, index) in phaseInter"
          :key="index"
          :label="item"
          align="center"
        >
          <el-table-column
            align="center"
            v-if="index == 0"
            label="参与分"
            sortable
            :prop="'interactionsNum' + item"
          >
            <template slot-scope="scoped">{{
              scoped.row["interactionsNum" + item] ||
              Number(scoped.row["interactionsNum" + item]) === 0
                ? scoped.row["interactionsNum" + item]
                : "-"
            }}</template>
d01c5799   梁保满   随堂问 报表开发
71
          </el-table-column>
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
72
73
74
75
76
77
78
79
80
81
82
83
          <el-table-column
            v-else
            align="center"
            label="互动数"
            :prop="'interactionsNum' + item"
          >
            <template slot-scope="scoped">{{
              scoped.row["interactionsNum" + item] ||
              Number(scoped.row["interactionsNum" + item]) === 0
                ? scoped.row["interactionsNum" + item]
                : "-"
            }}</template>
d01c5799   梁保满   随堂问 报表开发
84
          </el-table-column>
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
85
86
87
88
89
90
91
92
93
94
95
96
97
          <el-table-column
            v-if="index == 0"
            align="center"
            label="对错分"
            sortable
            :prop="'interactionsCorrectNum' + item"
          >
            <template slot-scope="scoped">{{
              scoped.row["interactionsCorrectNum" + item] ||
              Number(scoped.row["interactionsCorrectNum" + item]) === 0
                ? scoped.row["interactionsCorrectNum" + item]
                : "-"
            }}</template>
d01c5799   梁保满   随堂问 报表开发
98
          </el-table-column>
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
99
100
101
102
103
104
105
106
107
108
109
110
          <el-table-column
            v-else
            align="center"
            label="参与数"
            :prop="'interactionsCorrectNum' + item"
          >
            <template slot-scope="scoped">{{
              scoped.row["interactionsCorrectNum" + item] ||
              Number(scoped.row["interactionsCorrectNum" + item]) === 0
                ? scoped.row["interactionsCorrectNum" + item]
                : "-"
            }}</template>
d01c5799   梁保满   随堂问 报表开发
111
112
113
114
115
116
117
118
119
120
121
122
123
124
          </el-table-column>
        </el-table-column>
      </template>
    </el-table>
  </template>
  <script>
  export default {
    props: {
      tableData: Array,
      types: Number,
    },
    data() {
      return {
        phaseInter: [], //互动补充数据
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
125
      };
d01c5799   梁保满   随堂问 报表开发
126
127
128
    },
    computed: {
      resultData: function () {
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
129
        let resultData = [];
d01c5799   梁保满   随堂问 报表开发
130
        if (this.tableData.length) {
e17ec739   梁保满   随堂问,即时测导出爆表修改
131
132
133
134
135
136
137
138
139
140
141
          let subjectName = [];
          resultData = this.tableData?.map((item) => {
            let params = {};
            item.dataList?.map((items, index) => {
              if (!subjectName.includes(items.subjectName)) {
                subjectName.push(items.subjectName);
              }
              params["interactionsNum" + items.subjectName] =
                items.interactionsNum;
              params["interactionsCorrectNum" + items.subjectName] =
                items.interactionsCorrectNum;
d01c5799   梁保满   随堂问 报表开发
142
            });
e17ec739   梁保满   随堂问,即时测导出爆表修改
143
144
145
146
147
148
            return {
              ...item,
              ...params,
            };
          });
          this.phaseInter = [...subjectName];
d01c5799   梁保满   随堂问 报表开发
149
        } else {
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
150
151
          resultData = [];
          this.optionsList = [];
d01c5799   梁保满   随堂问 报表开发
152
        }
6b3dde63   梁保满   随堂问,即时测没有数据显示-,其他...
153
154
        return resultData;
      },
d01c5799   梁保满   随堂问 报表开发
155
156
157
    },
  };
  </script>