diff --git a/src/views/basic/ask/analysis.vue b/src/views/basic/ask/analysis.vue
index 493dbef..b77bf89 100644
--- a/src/views/basic/ask/analysis.vue
+++ b/src/views/basic/ask/analysis.vue
@@ -134,9 +134,9 @@ export default {
this.$store.getters.info.showRole ||
this.$store.getters.info.permissions[0].role;
this.types = Number(this.$route.query.types);
- this.className = this.$route.query.className;
+ // this.className = this.$route.query.className;
const queryData = JSON.parse(this.$route.query.params);
- this.classId = queryData.classId;
+ this.classId = this.$route.query.classId;
console.log(this.$route.query);
this.subjectNames = this.$route.query.subjectNames.split(",");
if (this.types == 1) {
@@ -163,7 +163,8 @@ export default {
this.status = this.$route.query.status ? this.$route.query.status : 0;
this._QueryData();
this.types != 1 ? this._QueryDataQuestionRank() : "";
- this.types != 3 ? this.periodDetail() : "";
+ // this.types != 3 ? this.periodDetail() : "";
+ this.periodDetail();
},
methods: {
print() {
@@ -215,6 +216,7 @@ export default {
periodIds: this.id,
});
if (status == 0) {
+ this.className = data.className || "";
this.detail = { ...data };
this.detail.duration = this.detail.duration
? (this.detail.duration / 60).toFixed(2)
diff --git a/src/views/basic/ask/components/detail.vue b/src/views/basic/ask/components/detail.vue
index 6facd18..f191bb1 100644
--- a/src/views/basic/ask/components/detail.vue
+++ b/src/views/basic/ask/components/detail.vue
@@ -38,7 +38,7 @@
已答总正确率:{{ detail.answerCorrectRate }}%
- 总参与度::{{ detail.participationRate }}%
+ 总参与度:{{ detail.participationRate }}%
diff --git a/src/views/basic/ask/list.vue b/src/views/basic/ask/list.vue
index 8e7bafc..4ae69f8 100644
--- a/src/views/basic/ask/list.vue
+++ b/src/views/basic/ask/list.vue
@@ -174,6 +174,7 @@ export default {
},
tableData: [],
multipleSelection: [],
+ multipleSelectionObj: {},
page: 1,
size: 20,
total: 0,
@@ -196,6 +197,14 @@ export default {
this.init();
}
},
+ multipleSelection: {
+ handler: function (nVal) {
+ this.multipleSelectionObj[this.page] = this.tableData.filter((item) =>
+ nVal.includes(item.id)
+ );
+ },
+ deep: true,
+ },
},
methods: {
//初始化
@@ -225,19 +234,17 @@ export default {
// 班主任教学班不能与行政班汇总
checkboxDisabled(obj) {
if (this.role == "ROLE_BANZHUREN") {
- let id = this.multipleSelection[0] || "";
- if (id) {
- let classId;
- for (let i = 0; i < this.tableData.length; i++) {
- if (this.tableData[i].id == id) {
- classId = this.tableData[i].classId;
- break;
- }
- }
+ let classId =
+ (this.multipleSelectionObj[1] &&
+ this.multipleSelectionObj[1][0]?.classId) ||
+ "";
+ if (classId) {
return obj.classId == classId ? false : true;
} else {
return false;
}
+ } else {
+ return false;
}
},
//去详情
@@ -260,28 +267,51 @@ export default {
return;
}
let subjectArr = [];
- this.tableData.map((item) => {
+ let classId = "";
+ let multipleData = [];
+ let multipleSelectionData = [];
+ Object.keys(this.multipleSelectionObj).map((keys) => {
+ multipleSelectionData = multipleSelectionData.concat(
+ this.multipleSelectionObj[keys]
+ );
+ });
+ multipleSelectionData.map((item) => {
if (this.multipleSelection.includes(item.id)) {
subjectArr.push(item.subjectName);
+ multipleData.push(item);
+ classId = item.classId;
}
});
subjectArr = [...new Set(subjectArr)];
- this.$router.push({
- path: "/askAnalysis",
- query: {
- id: JSON.stringify(this.multipleSelection),
- types:
- this.multipleSelection.length == 1
- ? 1
- : subjectArr.length == 1
- ? 2
- : 3,
- subjectNames: subjectArr.join(","),
- params: this.$route.query.params,
- className: this.$route.query.className,
- },
- });
+ if (this.multipleSelection.length == 1) {
+ this.$router.push({
+ path: "/askAnalysis",
+ query: {
+ id: JSON.stringify(this.multipleSelection),
+ types: 1,
+ subjectNames: subjectArr[0],
+ params: this.$route.query.params,
+ },
+ });
+ } else {
+ this.$router.push({
+ path: "/askAnalysis",
+ query: {
+ id: JSON.stringify(this.multipleSelection),
+ types:
+ this.multipleSelection.length == 1
+ ? 1
+ : subjectArr.length == 1
+ ? 2
+ : 3,
+ subjectNames: subjectArr.join(","),
+ params: this.$route.query.params,
+ classId: classId,
+ },
+ });
+ }
},
+
//删除
async remove(obj) {
const { data, status, info } = await this.$request.deletePaperReport({
diff --git a/src/views/basic/test/list.vue b/src/views/basic/test/list.vue
index 25052a2..520f9d5 100644
--- a/src/views/basic/test/list.vue
+++ b/src/views/basic/test/list.vue
@@ -391,15 +391,11 @@ export default {
checkboxDisabled(obj) {
if (obj.examStartTime) {
if (this.role == "ROLE_BANZHUREN") {
- let id = this.multipleSelection[0] || "";
- if (id) {
- let classId;
- for (let i = 0; i < this.tableData.length; i++) {
- if (this.tableData[i].id == id) {
- classId = this.tableData[i].classId;
- break;
- }
- }
+ let classId =
+ (this.multipleSelectionObj[1] &&
+ this.multipleSelectionObj[1][0]?.classId) ||
+ "";
+ if (classId) {
return obj.classId == classId ? false : true;
} else {
return false;
@@ -493,6 +489,7 @@ export default {
if (this.query.classId?.length > 1) {
pageSize = 9999;
}
+ this.tableData = [];
const examReportList =
this.role == "ROLE_PERSONAL"
? this.$request.pExamReportList