|
@@ -1,11 +1,11 @@
|
|
|
<template>
|
|
|
<div class="lesson-test-report">
|
|
|
<div class="scoreboard">
|
|
|
- <div v-show="$store.getters.getItemTitle.progress == 'finish' && testState == 1">
|
|
|
+ <div v-show="getItemTitle.progress == 'finish' && testState == 1">
|
|
|
<svg-icon icon-class="handonHint" class="warm-icon" />
|
|
|
<span class="warm-hint">{{ $t("studentWeb.exam.timeoutHint") }}</span>
|
|
|
</div>
|
|
|
- <span v-show="$store.getters.getItemTitle.progress != 'finish' && testState == 1" @click="showTest" style="color: #03966a;width: 100%;cursor: pointer;font-size:18px;font-weight: 800;text-align: center">
|
|
|
+ <span v-show="getItemTitle.progress != 'finish' && testState == 1" @click="showTest" style="color: #03966a;width: 100%;cursor: pointer;font-size:18px;font-weight: 800;text-align: center">
|
|
|
{{$t("studentWeb.exam.report.anwser")}}
|
|
|
</span>
|
|
|
<h4 v-show='testState == 2'>{{$t("studentWeb.exam.report.noRes")}}</h4>
|
|
@@ -315,6 +315,7 @@
|
|
|
import LessonTestReportCharts from "./LessonTestReportCharts/LessonTestReportCharts";
|
|
|
import Loading from "vue-loading-overlay";
|
|
|
import "vue-loading-overlay/dist/vue-loading.css";
|
|
|
+import { mapGetters } from 'vuex';
|
|
|
export default {
|
|
|
name: "LessonTestReport",
|
|
|
components: {
|
|
@@ -344,17 +345,17 @@
|
|
|
//loading畫面
|
|
|
closeAnsDetail: false,
|
|
|
checkedAns: ["right", "wrong", "noAns"],
|
|
|
- testState: 0,// 表示有没有作答
|
|
|
+ testState: 0, //表示有没有作答
|
|
|
paperData: [], //所有题目信息
|
|
|
- ansData: [],
|
|
|
+ ansData: [], //题目的作答答案
|
|
|
repairSource: {
|
|
|
normal: [],
|
|
|
file: []
|
|
|
},
|
|
|
repairData: [],
|
|
|
- previewStatus: false,
|
|
|
+ previewStatus: false, //展示补救资源
|
|
|
previewFile: {},
|
|
|
- numPages:null
|
|
|
+ numPages: null
|
|
|
};
|
|
|
},
|
|
|
mounted() {
|
|
@@ -366,7 +367,7 @@
|
|
|
this.previewStatus = !this.previewStatus
|
|
|
this.previewFile = {}
|
|
|
},
|
|
|
- async getItemData(data) {
|
|
|
+ async getItemData(data) {
|
|
|
this.previewStatus = false
|
|
|
if (data.file) {
|
|
|
this.previewFile = this._.cloneDeep(data)
|
|
@@ -444,7 +445,6 @@
|
|
|
},
|
|
|
showTest() {
|
|
|
if (this.examInfo.subject !== undefined) {
|
|
|
- console.log(this.examInfo);
|
|
|
this.$store.commit("ToggleLessonTestPopWithSubject", this.examInfo)
|
|
|
}
|
|
|
},
|
|
@@ -478,11 +478,11 @@
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
- //获取学生作答数据
|
|
|
+ // 获取学生作答数据
|
|
|
async getItem(data) {
|
|
|
let datas = []
|
|
|
if (data !== undefined) {
|
|
|
- let codes = this.$store.getters.getItemTitle
|
|
|
+ let codes = this.getItemTitle
|
|
|
let code = {
|
|
|
scope: codes.scope,
|
|
|
code: codes.scope === 'school' ? codes.school : codes.creatorId,
|
|
@@ -496,7 +496,7 @@
|
|
|
return []
|
|
|
}
|
|
|
},
|
|
|
- //处理学生作答数据blob地址
|
|
|
+ // 处理学生作答数据blob地址
|
|
|
formUrl(data) {
|
|
|
let a = ""
|
|
|
if (data.blob.indexOf('https://teammodelstorage') > -1) {
|
|
@@ -504,7 +504,7 @@
|
|
|
} else {
|
|
|
let blobUrl = JSON.parse(decodeURIComponent(localStorage.student_profile, "utf-8")).blob_uri
|
|
|
let studentBlob = blobUrl.split('/')
|
|
|
- let url = data.scope == 'school' ? blobUrl : "https://" + studentBlob[studentBlob.length - 2] + '/' + this.$store.getters.getItemTitle.creatorId
|
|
|
+ let url = data.scope == 'school' ? blobUrl : "https://" + studentBlob[studentBlob.length - 2] + '/' + this.getItemTitle.creatorId
|
|
|
a = `${url}/exam/${data.blob}`
|
|
|
}
|
|
|
return a
|
|
@@ -513,9 +513,9 @@
|
|
|
let paper = []
|
|
|
this.paperData.length = 0
|
|
|
this.ansData.length = 0
|
|
|
- let data = this.$store.getters.getPaperInfo.item
|
|
|
+ let data = this.getPaperInfo.item
|
|
|
let exam = [...data]
|
|
|
- if (this.$store.getters.getPaperInfo.item.length) {
|
|
|
+ if (this.getPaperInfo.item.length) {
|
|
|
for (let i = 0; i < exam.length; i++) {
|
|
|
if (exam[i].repair == undefined) {
|
|
|
exam[i].repair = []
|
|
@@ -562,9 +562,11 @@
|
|
|
},
|
|
|
},
|
|
|
computed: {
|
|
|
+ ...mapGetters([
|
|
|
+ "getItemTitle",
|
|
|
+ "getPaperInfo",
|
|
|
+ ]),
|
|
|
testScore() {
|
|
|
- console.log(this.examInfo);
|
|
|
- console.log(this.paperInfo);
|
|
|
let data = 0
|
|
|
if (this.examInfo.subject !== undefined) {
|
|
|
for (let item of this.examInfo.stuScore) {
|
|
@@ -589,7 +591,7 @@
|
|
|
noAns:0,
|
|
|
wrong:0,
|
|
|
}
|
|
|
- if (this.paperData[0]!= undefined) {
|
|
|
+ if (this.paperData[0] != undefined) {
|
|
|
for (let i = 0; i < this.examInfo.stuScore.length; i++) {
|
|
|
if (this.examInfo.stuScore[i] == -1) {
|
|
|
info.noAns++
|