ソースを参照

fix: 报告展示问题

zhangjie 8 ヶ月 前
コミット
a8ec292c67

+ 1 - 1
src/modules/mark/components/report/ReportMainQuestion.vue

@@ -22,7 +22,7 @@
           <td>{{ item.maxScore }}</td>
           <td>{{ item.minScore }}</td>
           <td>{{ item.avgScore }}</td>
-          <td>{{ item.scoreRate }}</td>
+          <td>{{ item.scoreRate | progressFilter }}</td>
           <td>{{ item.zeroScoreCount }}</td>
           <td>{{ item.fullScoreCount }}</td>
         </tr>

+ 2 - 2
src/modules/mark/components/report/ReportQuestion.vue

@@ -25,8 +25,8 @@
           <td>{{ item.subNumber }}</td>
           <td>{{ item.score }}</td>
           <td>{{ item.avgScore }}</td>
-          <td>{{ item.scoreRate }}</td>
-          <td>{{ item.fullScoreRate }}</td>
+          <td>{{ item.scoreRate | progressFilter }}</td>
+          <td>{{ item.fullScoreRate | progressFilter }}</td>
         </tr>
       </table>
     </report-box>

+ 2 - 2
src/modules/mark/components/report/chart.js

@@ -210,8 +210,8 @@ export function getBarPointTopicOptions(dataObj) {
     return `${title} ${item.mainNumber}-${item.subNumber}`;
   });
   let avgDatas = dataObj.map((item) => item.avgScore);
-  let scoreRateDatas = dataObj.map((item) => item.scoreRate / 100);
-  let fullRateDatas = dataObj.map((item) => item.fullScoreRate / 100);
+  let scoreRateDatas = dataObj.map((item) => item.scoreRate);
+  let fullRateDatas = dataObj.map((item) => item.fullScoreRate);
   const xAxisTopMax = Math.ceil(getArrayMaxNum(avgDatas));
 
   let legendData = ["单题平均分", "得分率", "满分率"];

+ 3 - 0
src/plugins/filters.js

@@ -140,3 +140,6 @@ Vue.filter("evaluationModeFilter", function (val) {
 Vue.filter("courseTypeFilter", function (val) {
   return COURSE_TYPE[val] || DEFAULT_FIELD;
 });
+Vue.filter("progressFilter", function (val) {
+  return !val && val !== 0 ? "0" : val * 100;
+});