|
@@ -33,7 +33,7 @@
|
|
type="primary"
|
|
type="primary"
|
|
:loading="downloading"
|
|
:loading="downloading"
|
|
icon="el-icon-document-checked"
|
|
icon="el-icon-document-checked"
|
|
- @click="toSave"
|
|
|
|
|
|
+ @click="toSave(false)"
|
|
>保存报告</el-button
|
|
>保存报告</el-button
|
|
>
|
|
>
|
|
<el-button class="btn-back" @click="cancel">
|
|
<el-button class="btn-back" @click="cancel">
|
|
@@ -495,7 +495,6 @@ export default {
|
|
targetColumnCounts: [],
|
|
targetColumnCounts: [],
|
|
studentScoreTable: [],
|
|
studentScoreTable: [],
|
|
courseSuggest: [],
|
|
courseSuggest: [],
|
|
- targetSuggestsMap: {},
|
|
|
|
downloading: false,
|
|
downloading: false,
|
|
};
|
|
};
|
|
},
|
|
},
|
|
@@ -544,11 +543,25 @@ export default {
|
|
this.commonInfo = data.commonInfo;
|
|
this.commonInfo = data.commonInfo;
|
|
this.courseBasicInfo = data.courseBasicInfo;
|
|
this.courseBasicInfo = data.courseBasicInfo;
|
|
|
|
|
|
|
|
+ const courseSuggest = data.courseSuggest
|
|
|
|
+ ? JSON.parse(data.courseSuggest)
|
|
|
|
+ : [];
|
|
|
|
+
|
|
|
|
+ const targetSuggestsMap = {};
|
|
|
|
+ courseSuggest.forEach((item) => {
|
|
|
|
+ targetSuggestsMap[item.targetId] = {
|
|
|
|
+ finishPoints: item.finishPoints,
|
|
|
|
+ requirementPoints: item.requirementPoints,
|
|
|
|
+ courseSuggest: item.courseSuggest,
|
|
|
|
+ };
|
|
|
|
+ });
|
|
|
|
+ this.targetSuggestsMap = targetSuggestsMap;
|
|
|
|
+
|
|
const courseTargetScatterMap = data.courseTargetScatterMap || {};
|
|
const courseTargetScatterMap = data.courseTargetScatterMap || {};
|
|
|
|
|
|
this.courseSuggest = data.courseEvaluationResultInfo.targetList.map(
|
|
this.courseSuggest = data.courseEvaluationResultInfo.targetList.map(
|
|
(target) => {
|
|
(target) => {
|
|
- const suggest = this.targetSuggestsMap[target.targetId] || {};
|
|
|
|
|
|
+ const suggest = targetSuggestsMap[target.targetId] || {};
|
|
const finishPoints = suggest.finishPoints || "";
|
|
const finishPoints = suggest.finishPoints || "";
|
|
const requirementPoints = suggest.requirementPoints || "";
|
|
const requirementPoints = suggest.requirementPoints || "";
|
|
const courseSuggest = suggest.courseSuggest || "";
|
|
const courseSuggest = suggest.courseSuggest || "";
|
|
@@ -606,9 +619,15 @@ export default {
|
|
paperNumber: this.course.paperNumber,
|
|
paperNumber: this.course.paperNumber,
|
|
});
|
|
});
|
|
this.dataList = data || [];
|
|
this.dataList = data || [];
|
|
- this.curReportId = this.dataList[0].id;
|
|
|
|
|
|
+ if (!data.length) return;
|
|
|
|
|
|
- this.reportChange();
|
|
|
|
|
|
+ let index = 0;
|
|
|
|
+ if (this.curReportId) {
|
|
|
|
+ index = this.dataList.findIndex((item) => item.id === this.curReportId);
|
|
|
|
+ index = index === -1 ? 0 : index;
|
|
|
|
+ }
|
|
|
|
+ this.curReportId = this.dataList[index].id;
|
|
|
|
+ this.buildData(this.dataList[index]);
|
|
},
|
|
},
|
|
async reportChange() {
|
|
async reportChange() {
|
|
this.resetData();
|
|
this.resetData();
|
|
@@ -618,22 +637,6 @@ export default {
|
|
);
|
|
);
|
|
if (!rowData) return;
|
|
if (!rowData) return;
|
|
|
|
|
|
- const courseSuggest = this.courseSuggest.length
|
|
|
|
- ? this.courseSuggest
|
|
|
|
- : rowData.courseSuggest
|
|
|
|
- ? JSON.parse(rowData.courseSuggest)
|
|
|
|
- : [];
|
|
|
|
-
|
|
|
|
- const targetSuggestsMap = {};
|
|
|
|
- courseSuggest.forEach((item) => {
|
|
|
|
- targetSuggestsMap[item.targetId] = {
|
|
|
|
- finishPoints: item.finishPoints,
|
|
|
|
- requirementPoints: item.requirementPoints,
|
|
|
|
- courseSuggest: item.courseSuggest,
|
|
|
|
- };
|
|
|
|
- });
|
|
|
|
- this.targetSuggestsMap = targetSuggestsMap;
|
|
|
|
-
|
|
|
|
this.buildData(rowData);
|
|
this.buildData(rowData);
|
|
},
|
|
},
|
|
async checkChange() {
|
|
async checkChange() {
|