|
@@ -15,7 +15,7 @@
|
|
|
</div>
|
|
|
<div class="section__body">
|
|
|
<div class="explain-record">
|
|
|
- <div class="explain-record__body">
|
|
|
+ <div class="explain-record__body clearfix">
|
|
|
<div class="left-box">
|
|
|
<div class="left-box__header">
|
|
|
<el-progress
|
|
@@ -33,6 +33,11 @@
|
|
|
>/{{ questionList.length }}道题
|
|
|
</div>
|
|
|
</div>
|
|
|
+
|
|
|
+ <div class="left-box__footer">
|
|
|
+ <div class="btn" @click="prevQuestion">上一题</div>
|
|
|
+ <div class="btn" @click="nextQuestion">下一题</div>
|
|
|
+ </div>
|
|
|
<div class="left-box__body">
|
|
|
<template v-for="(question, questionIndex) in questionList">
|
|
|
<div
|
|
@@ -61,7 +66,16 @@
|
|
|
)
|
|
|
"
|
|
|
>
|
|
|
- <div>{{ ast[index] }}. {{ item.content }}</div>
|
|
|
+ <div>
|
|
|
+ {{ ast[index] }}. {{ item.content }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="$tools.splitImgHost(item.imgUrl)"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="question-list" v-if="question.ques">
|
|
@@ -78,7 +92,15 @@
|
|
|
v-for="(item, index) in question.jsonStr"
|
|
|
:key="index"
|
|
|
>
|
|
|
- <div>{{ ast[index] }}. {{ item.content }}</div>
|
|
|
+ <div>
|
|
|
+ {{ ast[index] }}. {{ item.content }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ :src="$tools.splitImgHost(item.imgUrl)"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="answer-list" v-if="question.ques">
|
|
@@ -134,7 +156,15 @@
|
|
|
:label="item.optionsId"
|
|
|
v-model="item.checked"
|
|
|
>
|
|
|
- <div>{{ ast[index] }}. {{ item.content }}</div>
|
|
|
+ <div>
|
|
|
+ {{ ast[index] }}. {{ item.content }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ :src="$tools.splitImgHost(item.imgUrl)"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</el-checkbox>
|
|
|
</div>
|
|
|
<div class="question-list" v-if="question.ques">
|
|
@@ -154,7 +184,15 @@
|
|
|
:label="item.optionsId"
|
|
|
v-model="item.checked"
|
|
|
>
|
|
|
- <div>{{ ast[index] }}. {{ item.content }}</div>
|
|
|
+ <div>
|
|
|
+ {{ ast[index] }}. {{ item.content }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ :src="$tools.splitImgHost(item.imgUrl)"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</el-checkbox>
|
|
|
</div>
|
|
|
<div class="answer-list" v-if="question.ques">
|
|
@@ -175,7 +213,7 @@
|
|
|
<div class="explain-list__header">答案解析:</div>
|
|
|
<div
|
|
|
class="explain-list__body"
|
|
|
- v-if="question.analysisContent"
|
|
|
+ v-html="question.analysisContent"
|
|
|
></div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -222,7 +260,16 @@
|
|
|
:key="index"
|
|
|
@click="judgeSelect(question, questionIndex, index)"
|
|
|
>
|
|
|
- <div>{{ ast[index] }}. {{ item }}</div>
|
|
|
+ <div>
|
|
|
+ {{ ast[index] }}. {{ item }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="$tools.splitImgHost(item.imgUrl)"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="question-list" v-if="question.ques">
|
|
@@ -238,7 +285,16 @@
|
|
|
v-for="(item, index) in judge"
|
|
|
:key="index"
|
|
|
>
|
|
|
- <div>{{ ast[index] }}. {{ item }}</div>
|
|
|
+ <div>
|
|
|
+ {{ ast[index] }}. {{ item }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="$tools.splitImgHost(item.imgUrl)"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="answer-list" v-if="question.ques">
|
|
@@ -320,6 +376,15 @@
|
|
|
>
|
|
|
<div>
|
|
|
{{ ast[index] }}. {{ item.content }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="
|
|
|
+ $tools.splitImgHost(item.imgUrl)
|
|
|
+ "
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -346,6 +411,15 @@
|
|
|
>
|
|
|
<div>
|
|
|
{{ ast[index] }}. {{ item.content }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="
|
|
|
+ $tools.splitImgHost(item.imgUrl)
|
|
|
+ "
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -405,6 +479,15 @@
|
|
|
>
|
|
|
<div>
|
|
|
{{ ast[index] }}. {{ item.content }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="
|
|
|
+ $tools.splitImgHost(item.imgUrl)
|
|
|
+ "
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</el-checkbox>
|
|
|
</div>
|
|
@@ -438,6 +521,15 @@
|
|
|
>
|
|
|
<div>
|
|
|
{{ ast[index] }}. {{ item.content }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="
|
|
|
+ $tools.splitImgHost(item.imgUrl)
|
|
|
+ "
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</el-checkbox>
|
|
|
</div>
|
|
@@ -519,7 +611,18 @@
|
|
|
)
|
|
|
"
|
|
|
>
|
|
|
- <div>{{ ast[index] }}. {{ item }}</div>
|
|
|
+ <div>
|
|
|
+ {{ ast[index] }}. {{ item }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="
|
|
|
+ $tools.splitImgHost(item.imgUrl)
|
|
|
+ "
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div
|
|
@@ -540,7 +643,18 @@
|
|
|
v-for="(item, index) in judge"
|
|
|
:key="index"
|
|
|
>
|
|
|
- <div>{{ ast[index] }}. {{ item }}</div>
|
|
|
+ <div>
|
|
|
+ {{ ast[index] }}. {{ item }}
|
|
|
+ <div v-if="item.imgUrl">
|
|
|
+ <img
|
|
|
+ style="max-width: 100%"
|
|
|
+ :src="
|
|
|
+ $tools.splitImgHost(item.imgUrl)
|
|
|
+ "
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div
|
|
@@ -578,7 +692,7 @@
|
|
|
:key="jsonIndex"
|
|
|
>
|
|
|
<div class="question__title">
|
|
|
- {{ jsonIndex }}、简答题
|
|
|
+ {{ jsonIndex + 1 }}、简答题
|
|
|
</div>
|
|
|
<div
|
|
|
class="question__desc"
|
|
@@ -718,7 +832,7 @@
|
|
|
:key="questionIndex"
|
|
|
>
|
|
|
<div class="question__title">
|
|
|
- {{ questionIndex }}、简答题
|
|
|
+ {{ questionIndex + 1 }}、简答题
|
|
|
</div>
|
|
|
<div
|
|
|
class="question__desc"
|
|
@@ -820,11 +934,6 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
</div>
|
|
|
-
|
|
|
- <div class="left-box__footer">
|
|
|
- <div class="btn" @click="prevQuestion">上一题</div>
|
|
|
- <div class="btn" @click="nextQuestion">下一题</div>
|
|
|
- </div>
|
|
|
</div>
|
|
|
<div class="right-box">
|
|
|
<div class="right-box__header">
|
|
@@ -838,6 +947,16 @@
|
|
|
>返回</el-button
|
|
|
>
|
|
|
</div>
|
|
|
+
|
|
|
+ <div class="right-box__footer">
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ :loading="loading"
|
|
|
+ class="submit"
|
|
|
+ @click="submit"
|
|
|
+ >交卷</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
<div class="right-box__header">
|
|
|
<div class="title">答题卡</div>
|
|
|
<div class="time" v-if="allTimes">
|
|
@@ -859,6 +978,11 @@
|
|
|
<div class="box blue"></div>
|
|
|
已做未评改
|
|
|
</div>
|
|
|
+
|
|
|
+ <div class="item">
|
|
|
+ <div class="box yellow"></div>
|
|
|
+ 少选
|
|
|
+ </div>
|
|
|
<div class="item">
|
|
|
<div class="box white"></div>
|
|
|
未做
|
|
@@ -873,6 +997,7 @@
|
|
|
:class="{
|
|
|
green: isRight(item, index),
|
|
|
red: isWrong(item, index),
|
|
|
+ yellow: isPart(item, index),
|
|
|
blue: isOver(item, index),
|
|
|
}"
|
|
|
@click="changeIndex(index)"
|
|
@@ -883,15 +1008,6 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="right-box__footer">
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- :loading="loading"
|
|
|
- class="submit"
|
|
|
- @click="submit"
|
|
|
- >交卷</el-button
|
|
|
- >
|
|
|
- </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -1182,112 +1298,41 @@ export default {
|
|
|
}
|
|
|
|
|
|
res.data.forEach((item, index) => {
|
|
|
- if (typeof item.jsonStr == "string") {
|
|
|
- item.jsonStr = JSON.parse(item.jsonStr);
|
|
|
-
|
|
|
- if (item.type == 2) {
|
|
|
- //多选
|
|
|
- item.jsonStr.forEach((str) => {
|
|
|
- str.optionsId = "" + str.optionsId;
|
|
|
- });
|
|
|
- let arr = item.answerQuestion.split(",");
|
|
|
- arr.forEach((a, i) => {
|
|
|
- arr[i] = "" + a;
|
|
|
- });
|
|
|
- item.ans = arr;
|
|
|
- item.quesSelect = [];
|
|
|
- item.analysisContent &&
|
|
|
- (item.analysisContent = item.analysisContent.replace(
|
|
|
- /<img/gi,
|
|
|
- '<img style="max-width:100%;"'
|
|
|
- ));
|
|
|
- item.content &&
|
|
|
- (item.content = item.content.replace(
|
|
|
- /<img/gi,
|
|
|
- '<img style="max-width:100%;"'
|
|
|
- ));
|
|
|
- return;
|
|
|
- } else if (item.type == 5) {
|
|
|
- //简答题
|
|
|
- item.ansText = {
|
|
|
- text: "",
|
|
|
- imageList: [],
|
|
|
- };
|
|
|
- item.ques = {
|
|
|
- text: "",
|
|
|
- imageList: [],
|
|
|
- };
|
|
|
- item.analysisContent &&
|
|
|
- (item.analysisContent = item.analysisContent.replace(
|
|
|
- /<img/gi,
|
|
|
- '<img style="max-width:100%;"'
|
|
|
- ));
|
|
|
- item.content &&
|
|
|
- (item.content = item.content.replace(
|
|
|
- /<img/gi,
|
|
|
- '<img style="max-width:100%;"'
|
|
|
- ));
|
|
|
-
|
|
|
- return;
|
|
|
- } else if (item.type == 4) {
|
|
|
- //案例题
|
|
|
- console.log(item.jsonStr);
|
|
|
- item.ques = [];
|
|
|
- item.tabIndex = "0";
|
|
|
- let ansArr = [];
|
|
|
- item.jsonStr.forEach((json, index) => {
|
|
|
- if (json.type == 1) {
|
|
|
- ansArr[index] = json.answerQuestion;
|
|
|
- json.content &&
|
|
|
- (json.content = json.content.replace(
|
|
|
- /<img/gi,
|
|
|
- '<img style="max-width:100%;"'
|
|
|
- ));
|
|
|
- } else if (json.type == 2) {
|
|
|
- json.optionsList.forEach((str) => {
|
|
|
- str.optionsId = "" + str.optionsId;
|
|
|
- });
|
|
|
- let arr = json.answerQuestion.split(",");
|
|
|
- arr.forEach((a, i) => {
|
|
|
- arr[i] = "" + a;
|
|
|
- });
|
|
|
- ansArr[index] = arr;
|
|
|
- json.content &&
|
|
|
- (json.content = json.content.replace(
|
|
|
- /<img/gi,
|
|
|
- '<img style="max-width:100%;"'
|
|
|
- ));
|
|
|
- } else if (json.type == 3) {
|
|
|
- ansArr[index] = json.answerQuestion;
|
|
|
- json.content &&
|
|
|
- (json.content = json.content.replace(
|
|
|
- /<img/gi,
|
|
|
- '<img style="max-width:100%;"'
|
|
|
- ));
|
|
|
- } else if (json.type == 5) {
|
|
|
- ansArr[index] = {
|
|
|
- text: "",
|
|
|
- imageList: [],
|
|
|
- };
|
|
|
- json.ansText = {
|
|
|
- text: "",
|
|
|
- imageList: [],
|
|
|
- };
|
|
|
- json.ques = {
|
|
|
- text: "",
|
|
|
- imageList: [],
|
|
|
- };
|
|
|
- json.content &&
|
|
|
- (json.content = json.content.replace(
|
|
|
- /<img/gi,
|
|
|
- '<img style="max-width:100%;"'
|
|
|
- ));
|
|
|
- }
|
|
|
- });
|
|
|
+ item.jsonStr = JSON.parse(item.jsonStr);
|
|
|
|
|
|
- item.ans = ansArr;
|
|
|
- return;
|
|
|
- }
|
|
|
+ console.log(item.type, "item");
|
|
|
+ if (item.type == 2) {
|
|
|
+ //多选
|
|
|
+ item.jsonStr.forEach((str) => {
|
|
|
+ str.optionsId = "" + str.optionsId;
|
|
|
+ });
|
|
|
+ let arr = item.answerQuestion.split(",");
|
|
|
+ arr.forEach((a, i) => {
|
|
|
+ arr[i] = "" + a;
|
|
|
+ });
|
|
|
+ item.ans = arr;
|
|
|
+ item.quesSelect = [];
|
|
|
+ item.analysisContent &&
|
|
|
+ (item.analysisContent = item.analysisContent.replace(
|
|
|
+ /<img/gi,
|
|
|
+ '<img style="max-width:100%;"'
|
|
|
+ ));
|
|
|
+ item.content &&
|
|
|
+ (item.content = item.content.replace(
|
|
|
+ /<img/gi,
|
|
|
+ '<img style="max-width:100%;"'
|
|
|
+ ));
|
|
|
+ return;
|
|
|
+ } else if (item.type == 5) {
|
|
|
+ //简答题
|
|
|
+ item.ansText = {
|
|
|
+ text: "",
|
|
|
+ imageList: [],
|
|
|
+ };
|
|
|
+ item.ques = {
|
|
|
+ text: "",
|
|
|
+ imageList: [],
|
|
|
+ };
|
|
|
item.analysisContent &&
|
|
|
(item.analysisContent = item.analysisContent.replace(
|
|
|
/<img/gi,
|
|
@@ -1298,9 +1343,79 @@ export default {
|
|
|
/<img/gi,
|
|
|
'<img style="max-width:100%;"'
|
|
|
));
|
|
|
- item.ques = "";
|
|
|
- item.ans = item.answerQuestion;
|
|
|
+
|
|
|
+ return;
|
|
|
+ } else if (item.type == 4) {
|
|
|
+ //案例题
|
|
|
+ console.log(item.jsonStr);
|
|
|
+ item.ques = [];
|
|
|
+ item.tabIndex = "0";
|
|
|
+ let ansArr = [];
|
|
|
+ item.jsonStr.forEach((json, index) => {
|
|
|
+ if (json.type == 1) {
|
|
|
+ ansArr[index] = json.answerQuestion;
|
|
|
+ json.content &&
|
|
|
+ (json.content = json.content.replace(
|
|
|
+ /<img/gi,
|
|
|
+ '<img style="max-width:100%;"'
|
|
|
+ ));
|
|
|
+ } else if (json.type == 2) {
|
|
|
+ json.optionsList.forEach((str) => {
|
|
|
+ str.optionsId = "" + str.optionsId;
|
|
|
+ });
|
|
|
+ let arr = json.answerQuestion.split(",");
|
|
|
+ arr.forEach((a, i) => {
|
|
|
+ arr[i] = "" + a;
|
|
|
+ });
|
|
|
+ ansArr[index] = arr;
|
|
|
+ json.content &&
|
|
|
+ (json.content = json.content.replace(
|
|
|
+ /<img/gi,
|
|
|
+ '<img style="max-width:100%;"'
|
|
|
+ ));
|
|
|
+ } else if (json.type == 3) {
|
|
|
+ ansArr[index] = json.answerQuestion;
|
|
|
+ json.content &&
|
|
|
+ (json.content = json.content.replace(
|
|
|
+ /<img/gi,
|
|
|
+ '<img style="max-width:100%;"'
|
|
|
+ ));
|
|
|
+ } else if (json.type == 5) {
|
|
|
+ ansArr[index] = {
|
|
|
+ text: "",
|
|
|
+ imageList: [],
|
|
|
+ };
|
|
|
+ json.ansText = {
|
|
|
+ text: "",
|
|
|
+ imageList: [],
|
|
|
+ };
|
|
|
+ json.ques = {
|
|
|
+ text: "",
|
|
|
+ imageList: [],
|
|
|
+ };
|
|
|
+ json.content &&
|
|
|
+ (json.content = json.content.replace(
|
|
|
+ /<img/gi,
|
|
|
+ '<img style="max-width:100%;"'
|
|
|
+ ));
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ item.ans = ansArr;
|
|
|
+ return;
|
|
|
}
|
|
|
+ item.analysisContent &&
|
|
|
+ (item.analysisContent = item.analysisContent.replace(
|
|
|
+ /<img/gi,
|
|
|
+ '<img style="max-width:100%;"'
|
|
|
+ ));
|
|
|
+ item.content &&
|
|
|
+ (item.content = item.content.replace(
|
|
|
+ /<img/gi,
|
|
|
+ '<img style="max-width:100%;"'
|
|
|
+ ));
|
|
|
+ item.ques = "";
|
|
|
+ item.ans = item.answerQuestion;
|
|
|
});
|
|
|
|
|
|
this.questionList = res.data;
|
|
@@ -1360,6 +1475,7 @@ export default {
|
|
|
let score = 0;
|
|
|
let doQuestionNum = 0;
|
|
|
let doQuestionIds = []; //做过的题目id
|
|
|
+ let lessQuestionNum = 0;
|
|
|
this.questionList.forEach((item, index) => {
|
|
|
if (item.type == 1) {
|
|
|
if (item.ques == item.ans) {
|
|
@@ -1420,6 +1536,7 @@ export default {
|
|
|
} else {
|
|
|
//部分分
|
|
|
// number++;
|
|
|
+ lessQuestionNum++;
|
|
|
score += checkboxScore;
|
|
|
}
|
|
|
}
|
|
@@ -1822,8 +1939,8 @@ export default {
|
|
|
//多选
|
|
|
} else if (item.type == 2) {
|
|
|
//每一项都相等
|
|
|
- return this.questionList[index].ans.some((item, i) => {
|
|
|
- return item != this.questionList[index].ques[i];
|
|
|
+ return this.questionList[index].ques.some((item, i) => {
|
|
|
+ return this.questionList[index].ans.indexOf(item) == -1;
|
|
|
});
|
|
|
//判断
|
|
|
} else if (item.type == 3) {
|
|
@@ -1835,6 +1952,25 @@ export default {
|
|
|
return false;
|
|
|
}
|
|
|
},
|
|
|
+ isPart(item, index) {
|
|
|
+ if (this.questionList[index].ques) {
|
|
|
+ if (item.type == 2) {
|
|
|
+ let isWrong = this.questionList[index].ques.some((item, i) => {
|
|
|
+ return this.questionList[index].ans.indexOf(item) == -1;
|
|
|
+ });
|
|
|
+
|
|
|
+ let isRight = this.questionList[index].ans.every((item, i) => {
|
|
|
+ return item == this.questionList[index].ques[i];
|
|
|
+ });
|
|
|
+
|
|
|
+ if (!isRight && !isWrong) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ },
|
|
|
right(bankIndex, ansIndex, option) {
|
|
|
if (
|
|
|
this.questionList[bankIndex].ques[ansIndex] &&
|
|
@@ -2036,6 +2172,7 @@ export default {
|
|
|
let doWrongQuestionIds = []; //错题和未做题id(客观题)
|
|
|
let doQuestionIds = []; //做过的题目id
|
|
|
let rightQuestionIds = []; //做对的题目id
|
|
|
+ let lessQuestionNum = 0;
|
|
|
this.questionList.forEach((item, index) => {
|
|
|
passScore = item.passScore;
|
|
|
if (item.type == 1) {
|
|
@@ -2108,7 +2245,8 @@ export default {
|
|
|
} else {
|
|
|
//部分分
|
|
|
// number++;
|
|
|
- doWrongQuestionIds.push(item.questionId);
|
|
|
+ lessQuestionNum++;
|
|
|
+ // doWrongQuestionIds.push(item.questionId);
|
|
|
item.scoreResult = checkboxScore;
|
|
|
score += checkboxScore;
|
|
|
// rightQuestionIds.push(item.questionId)
|
|
@@ -2178,6 +2316,7 @@ export default {
|
|
|
orderGoodsId: this.orderGoodsId,
|
|
|
reportStatus: reportStatus,
|
|
|
recordId: this.recordId,
|
|
|
+ lessQuestionNum: lessQuestionNum,
|
|
|
rightQuestionNum: number,
|
|
|
status: 1,
|
|
|
moduleExamId: this.moduleId || 0,
|
|
@@ -2241,6 +2380,7 @@ export default {
|
|
|
let doWrongQuestionIds = []; //错题和未做题id(客观题)
|
|
|
let doQuestionIds = []; //做过的题目id
|
|
|
let rightQuestionIds = []; //做对的题目id
|
|
|
+ let lessQuestionNum = 0;
|
|
|
console.log(111);
|
|
|
this.questionList.forEach((item, index) => {
|
|
|
passScore = item.passScore;
|
|
@@ -2314,7 +2454,8 @@ export default {
|
|
|
} else {
|
|
|
//部分分
|
|
|
// number++;
|
|
|
- doWrongQuestionIds.push(item.questionId);
|
|
|
+ lessQuestionNum++;
|
|
|
+ // doWrongQuestionIds.push(item.questionId);
|
|
|
item.scoreResult = checkboxScore;
|
|
|
score += checkboxScore;
|
|
|
// rightQuestionIds.push(item.questionId)
|
|
@@ -2372,6 +2513,7 @@ export default {
|
|
|
reportStatus: reportStatus,
|
|
|
recordId: this.recordId,
|
|
|
rightQuestionNum: number,
|
|
|
+ lessQuestionNum: lessQuestionNum,
|
|
|
status: 1,
|
|
|
moduleExamId: this.moduleId || 0,
|
|
|
chapterExamId: this.chapterId || 0,
|
|
@@ -2422,12 +2564,12 @@ export default {
|
|
|
|
|
|
&__body {
|
|
|
margin-bottom: 20px;
|
|
|
- height: 632px;
|
|
|
border: 1px solid #eee;
|
|
|
.left-box {
|
|
|
float: left;
|
|
|
width: 970px;
|
|
|
- border-right: 1px solid #eee;
|
|
|
+ min-height: 630px;
|
|
|
+ border: 1px solid #eee;
|
|
|
|
|
|
&__header {
|
|
|
height: 40px;
|
|
@@ -2453,9 +2595,6 @@ export default {
|
|
|
}
|
|
|
|
|
|
&__body {
|
|
|
- height: 550px;
|
|
|
- border-bottom: 1px solid #eee;
|
|
|
-
|
|
|
.question {
|
|
|
padding: 12px 0 0 12px;
|
|
|
display: flex;
|
|
@@ -2479,51 +2618,13 @@ export default {
|
|
|
font-weight: 400;
|
|
|
color: #666666;
|
|
|
line-height: 24px;
|
|
|
- flex: 1;
|
|
|
- overflow-y: scroll;
|
|
|
-
|
|
|
- &::-webkit-scrollbar {
|
|
|
- width: 6px;
|
|
|
- }
|
|
|
- &::-webkit-scrollbar-track {
|
|
|
- background-color: #fff;
|
|
|
- -webkit-border-radius: 2em;
|
|
|
- -moz-border-radius: 2em;
|
|
|
- border-radius: 2em;
|
|
|
- }
|
|
|
- &::-webkit-scrollbar-thumb {
|
|
|
- background-color: #eeeeee;
|
|
|
- -webkit-border-radius: 2em;
|
|
|
- -moz-border-radius: 2em;
|
|
|
- border-radius: 2em;
|
|
|
- }
|
|
|
|
|
|
/deep/ img {
|
|
|
max-width: 100% !important;
|
|
|
- max-height: 400px !important;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
&__content {
|
|
|
- flex: 1;
|
|
|
- overflow-y: scroll;
|
|
|
-
|
|
|
- &::-webkit-scrollbar {
|
|
|
- width: 6px;
|
|
|
- }
|
|
|
- &::-webkit-scrollbar-track {
|
|
|
- background-color: #fff;
|
|
|
- -webkit-border-radius: 2em;
|
|
|
- -moz-border-radius: 2em;
|
|
|
- border-radius: 2em;
|
|
|
- }
|
|
|
- &::-webkit-scrollbar-thumb {
|
|
|
- background-color: #eeeeee;
|
|
|
- -webkit-border-radius: 2em;
|
|
|
- -moz-border-radius: 2em;
|
|
|
- border-radius: 2em;
|
|
|
- }
|
|
|
-
|
|
|
/deep/ .el-tabs__item {
|
|
|
height: 40px;
|
|
|
line-height: 40px;
|
|
@@ -2623,7 +2724,7 @@ export default {
|
|
|
}
|
|
|
|
|
|
/deep/ .el-checkbox {
|
|
|
- white-space: pre-wrap;
|
|
|
+ white-space: normal;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -2759,7 +2860,8 @@ export default {
|
|
|
|
|
|
.right-box {
|
|
|
float: right;
|
|
|
- width: 300px;
|
|
|
+ width: 299px;
|
|
|
+ border-right: 1px solid #eee;
|
|
|
|
|
|
&__header {
|
|
|
height: 40px;
|
|
@@ -2796,14 +2898,17 @@ export default {
|
|
|
.card {
|
|
|
&__note {
|
|
|
display: flex;
|
|
|
- height: 40px;
|
|
|
+ height: 64px;
|
|
|
align-items: center;
|
|
|
border-bottom: 1px solid #eee;
|
|
|
+ flex-wrap: wrap;
|
|
|
|
|
|
.item {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
margin-left: 10px;
|
|
|
+ width: 84px;
|
|
|
+ font-size: 12px;
|
|
|
|
|
|
.box {
|
|
|
margin-right: 5px;
|
|
@@ -2819,11 +2924,13 @@ export default {
|
|
|
&.green {
|
|
|
background: #37c65b;
|
|
|
}
|
|
|
-
|
|
|
&.red {
|
|
|
background: #ff3a30;
|
|
|
}
|
|
|
|
|
|
+ &.yellow {
|
|
|
+ background: #ffc53d;
|
|
|
+ }
|
|
|
&.blue {
|
|
|
background: #3f8dfd;
|
|
|
}
|
|
@@ -2832,7 +2939,7 @@ export default {
|
|
|
}
|
|
|
|
|
|
&__content {
|
|
|
- height: 470px;
|
|
|
+ height: 446px;
|
|
|
overflow-y: scroll;
|
|
|
|
|
|
&::-webkit-scrollbar {
|
|
@@ -2886,6 +2993,9 @@ export default {
|
|
|
color: #fff;
|
|
|
background: #3f8dfd;
|
|
|
}
|
|
|
+ &.yellow {
|
|
|
+ background: #ffc53d;
|
|
|
+ }
|
|
|
|
|
|
&.disabled {
|
|
|
cursor: not-allowed;
|
|
@@ -2901,6 +3011,7 @@ export default {
|
|
|
}
|
|
|
|
|
|
&__footer {
|
|
|
+ border-bottom: 1px solid #eee;
|
|
|
height: 40px;
|
|
|
display: flex;
|
|
|
align-items: center;
|