diff --git a/src/api/apis/apis.js b/src/api/apis/apis.js
index 100df04..07e69a3 100644
--- a/src/api/apis/apis.js
+++ b/src/api/apis/apis.js
@@ -282,6 +282,24 @@ export default {
responseType: 'arraybuffer',
});
},
+ //任课老师-导出阶段测练报表
+ exportPhaseExamReport(data) {
+ return service({
+ url: setUpUrls.exportPhaseExamReport,
+ method: "POST",
+ data,
+ responseType: 'arraybuffer',
+ });
+ },
+ //任课老师-导出单卷测练报表
+ exportExamReport(data) {
+ return service({
+ url: setUpUrls.exportExamReport,
+ method: "POST",
+ data,
+ responseType: 'arraybuffer',
+ });
+ },
// 查询角色列表
diff --git a/src/api/axios.js b/src/api/axios.js
index 0a03083..915064c 100644
--- a/src/api/axios.js
+++ b/src/api/axios.js
@@ -39,7 +39,7 @@ service.interceptors.response.use(
store.commit("delTokenSources", response.config.cancelToken);
}
if (response.status == 200) {
- // Cookies.set("access_token", response.data.message, { expires: 1 / 12 })
+ // Cookies.set("access_token", response.data.info, { expires: 1 / 12 })
// console.log(response.status)
if (res.status == 999) {
if (!location.href.includes("localhost")) {
@@ -57,7 +57,7 @@ service.interceptors.response.use(
}
}
} else {
- // Cookies.set("access_token", response.data.message, { expires: 1 / 12 })
+ // Cookies.set("access_token", response.data.info, { expires: 1 / 12 })
}
}
return Promise.resolve(res);
diff --git a/src/api/urls/apis.js b/src/api/urls/apis.js
index cc4d60f..1952534 100644
--- a/src/api/urls/apis.js
+++ b/src/api/urls/apis.js
@@ -69,6 +69,10 @@ export default {
exportPhaseInteractiveReport: "/api_html/teaching/exportPhaseInteractiveReport",
//任课老师-导出单课时报表
exportPeriodReport: "/api_html/teaching/exportPeriodReport",
+ //任课老师-导出阶段测练报表
+ exportPhaseExamReport: "/api_html/teaching/exportPhaseExamReport",
+ //任课老师-导出单卷测练报表
+ exportExamReport: "/api_html/teaching/exportExamReport",
diff --git a/src/components/charts/scatterChart.vue b/src/components/charts/scatterChart.vue
index 3e5de90..8301d8b 100644
--- a/src/components/charts/scatterChart.vue
+++ b/src/components/charts/scatterChart.vue
@@ -42,9 +42,10 @@ export default {
type: "cross",
},
formatter: function (params) {
+ let value = params.data.value.toFixed(2)
return (
params.marker +
- ` 占比:${params.data.value}%
数量:${params.data.count}`
+ ` 占比:${value}%
数量:${params.data.count}`
);
},
},
diff --git a/src/components/setAnswer.vue b/src/components/setAnswer.vue
index 870e9c4..86d6797 100644
--- a/src/components/setAnswer.vue
+++ b/src/components/setAnswer.vue
@@ -82,6 +82,7 @@
diff --git a/src/router/index.js b/src/router/index.js
index 4b019d8..bb5458b 100755
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -34,13 +34,14 @@ const SetUpTeacher = () => import("@/views/setUp/teacher")
* 重写路由的push方法
*/
const routerPush = Router.prototype.push
-Router.prototype.push = function push (location) {
+Router.prototype.push = function push(location) {
return routerPush.call(this, location).catch(error => error)
}
Vue.use(Router)
let routeName = en.routeName
let defaultRouter = [
- { path: "/",
+ {
+ path: "/",
redirect: "/index",
hidden: true,
children: []
@@ -97,7 +98,7 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "", // 图标样式class
name: "添加答题卡",
component: ExaminationPaperAdd,
- parent:"examinationPaper",
+ parent: "examinationPaper",
children: []
},
{
@@ -105,7 +106,7 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "", // 图标样式class
name: "修改答题卡",
component: ExaminationPaperEdit,
- parent:"examinationPaper",
+ parent: "examinationPaper",
children: []
},
{
@@ -113,7 +114,7 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "", // 图标样式class
name: "已归档答题卡",
component: ExaminationPaperRecycle,
- parent:"examinationPaper",
+ parent: "examinationPaper",
children: []
},
]
@@ -130,6 +131,9 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "fa fa-bar-chart", // 图标样式class
name: "",
component: Ask,
+ meta: {
+ keepAlive: true,
+ },
children: []
},
@@ -138,7 +142,7 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "", // 图标样式class
name: "随堂问报表分析",
component: AskAnalysis,
- parent:"ask",
+ parent: "ask",
children: []
}
]
@@ -155,6 +159,9 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "fa fa-pie-chart", // 图标样式class
name: "",
component: Test,
+ meta: {
+ keepAlive: true,
+ },
children: []
},
{
@@ -162,7 +169,7 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "", // 图标样式class
name: "即时测报表分析",
component: TestAnalysis,
- parent:"test",
+ parent: "test",
children: []
}
@@ -184,7 +191,7 @@ let addrouters = [ //测试用,后续后端获取
// }
// ]
// },
-
+
{
path: "/setUpConglomerate",
iconCls: "fa fa-building", // 图标样式class
@@ -274,6 +281,9 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "fa fa-dashboard", // 图标样式class
name: "",
component: Device,
+ meta: {
+ keepAlive: true,
+ },
children: []
},
{
@@ -281,7 +291,7 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "fa fa-list-alt", // 图标样式class
name: "",
component: DeviceLog,
- parent:"device",
+ parent: "device",
children: []
}
]
@@ -321,7 +331,7 @@ let addrouters = [ //测试用,后续后端获取
iconCls: "", // 图标样式class
name: "授课端软件",
component: DownClient,
- parent:"down",
+ parent: "down",
children: []
}
]
@@ -347,4 +357,4 @@ let addrouters = [ //测试用,后续后端获取
export default new Router({
routes: defaultRouter
})
-export {defaultRouter,addrouters}
+export { defaultRouter, addrouters }
diff --git a/src/views/ask/analysis.vue b/src/views/ask/analysis.vue
index e068e8c..830ab63 100644
--- a/src/views/ask/analysis.vue
+++ b/src/views/ask/analysis.vue
@@ -468,7 +468,7 @@ export default {
});
downloadFile("随堂问-单课时报表.xlsx", blob);
} else {
- this.$message.error(info);
+ this.$message.error("下载失败");
}
},
},
diff --git a/src/views/ask/index.vue b/src/views/ask/index.vue
index 035e51a..35b08a3 100644
--- a/src/views/ask/index.vue
+++ b/src/views/ask/index.vue
@@ -439,7 +439,7 @@
>
-
+
@@ -467,7 +467,7 @@
@@ -541,7 +541,7 @@ export default {
sn: "",
frequency: "",
pairingCode: "",
- classIds: [],
+ classIds: "",
roomName: "",
},
formRules: {
@@ -615,9 +615,7 @@ export default {
edit(obj) {
for (let key in this.form) {
if (key == "classIds") {
- this.form[key] = obj.classList?.map((item) => {
- return [item.classId];
- });
+ this.form[key] = obj.classList[0]?.classId
} else {
this.form[key] = obj[key];
}
@@ -713,7 +711,7 @@ export default {
this.selectionTabIds = [];
this.$message.success("开启自动更新成功");
} else {
- this.$message.error(data.message);
+ this.$message.error(data.info);
}
},
async stopUpdate(id) {
@@ -733,7 +731,7 @@ export default {
this._QueryData(false);
this.$message.success("关闭自动更新成功");
} else {
- this.$message.error(data.message);
+ this.$message.error(data.info);
}
},
async downExcel() {
@@ -750,16 +748,18 @@ export default {
}
},
- // 添加设备
- addAnswerEqu() {
+ // 修改基站
+ setAnswerEqu() {
this.$refs.forms.validate(async (valid) => {
if (valid) {
if (this.loadingAnswerEqu) return;
this.loadingAnswerEqu = true;
let query = { ...this.form };
- query.classIds = query.classIds.map((item) => {
- return item[1];
- });
+
+ // query.classIds = query.classIds.map((item) => {
+ // return item[1];
+ // });
+ query.classIds = [query.classIds]
const { data, status, info } = await this.$request.updateDevice({
...query,
});
diff --git a/src/views/examinationPaper/add.vue b/src/views/examinationPaper/add.vue
index c7a6b41..ae3dfb6 100644
--- a/src/views/examinationPaper/add.vue
+++ b/src/views/examinationPaper/add.vue
@@ -186,7 +186,7 @@
class="number-ipt"
size="medium"
:min="1"
- :max="100"
+ :max="200"
:precision="2"
:step="1"
v-model="subQuestions.score"
@@ -308,7 +308,7 @@
>
diff --git a/src/views/examinationPaper/index.vue b/src/views/examinationPaper/index.vue
index dae2399..6f3bfcb 100644
--- a/src/views/examinationPaper/index.vue
+++ b/src/views/examinationPaper/index.vue
@@ -108,6 +108,9 @@
}}
+
+
+
{{ item.realName }}|
-
-
-
+
+
+
@@ -41,6 +44,7 @@ export default {
},
created() {
// this.initRouter();
+ console.log(this.$route.meta.keepAlive)
},
methods: {
initRouter() {
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index c723022..e93f95e 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -95,14 +95,14 @@ export default {
loginForm: {
// username: "15911715665",
// password: "715665",
- username: "18314340313",
- password: "Pw340313#",
+ // username: "18314340313",
+ // password: "Pw340313#",
// username: "18687826606",
// password: "Pw826606#",
// username: "18893712576",
// password: "712576",
- // username: "13247726488",
- // password: "726488",
+ username: "13247726488",
+ password: "726488",
},
loginRules: {
username: [
diff --git a/src/views/setUp/account.vue b/src/views/setUp/account.vue
index 3c09f2f..642ec9a 100644
--- a/src/views/setUp/account.vue
+++ b/src/views/setUp/account.vue
@@ -440,7 +440,7 @@ export default {
});
downloadFile(`账号信息.xlsx`, blob);
} else {
- this.$message.error(data.message);
+ this.$message.error(data.info);
}
},
openAddDia() {
diff --git a/src/views/setUp/school.vue b/src/views/setUp/school.vue
index 11c53c5..1b32190 100644
--- a/src/views/setUp/school.vue
+++ b/src/views/setUp/school.vue
@@ -412,7 +412,7 @@ export default {
});
downloadFile(`设备信息.xlsx`, blob);
} else {
- this.$message.error(data.message);
+ this.$message.error(data.info);
}
},
},
diff --git a/src/views/setUp/student.vue b/src/views/setUp/student.vue
index 058a8e1..bb5c2d5 100644
--- a/src/views/setUp/student.vue
+++ b/src/views/setUp/student.vue
@@ -425,7 +425,7 @@ export default {
});
downloadFile(`设备信息.xlsx`, blob);
} else {
- this.$message.error(data.message);
+ this.$message.error(data.info);
}
},
},
diff --git a/src/views/setUp/teacher.vue b/src/views/setUp/teacher.vue
index 798e02f..c39949a 100644
--- a/src/views/setUp/teacher.vue
+++ b/src/views/setUp/teacher.vue
@@ -761,9 +761,9 @@ export default {
let blob = new Blob([data], {
type: "application/vnd.ms-excel;charset=utf-8",
});
- downloadFile(`设备信息.xlsx`, blob);
+ downloadFile(`教师名单.xlsx`, blob);
} else {
- this.$message.error(data.message);
+ this.$message.error(data.info);
}
},
},
diff --git a/src/views/test/analysis.vue b/src/views/test/analysis.vue
index affa0ef..9ee3086 100644
--- a/src/views/test/analysis.vue
+++ b/src/views/test/analysis.vue
@@ -131,12 +131,12 @@
:label="item.title"
:prop="'count' + index"
align="center"
- >{{
+ >{{
scope.row.questionType == "5"
? ""
: scope.row["option" + index]
? `${scope.row["option" + index]}(${
- scope.row["present" + index]
+ scope.row["persent" + index]
})`
: ""
}}
@@ -522,7 +522,7 @@ export default {
});
downloadFile(`主观题模版.xlsx`, blob);
} else {
- this.$message.error(data.message);
+ this.$message.error(data.info);
}
},
async _QueryData() {
@@ -625,8 +625,8 @@ export default {
if (index != 4) {
params["count" + index] =
defaultArr[index]?.option != "未答" ? defaultArr[index]?.count : "";
- params["present" + index] =
- defaultArr[index]?.option != "未答" ? defaultArr[index]?.present : "";
+ params["persent" + index] =
+ defaultArr[index]?.option != "未答" ? defaultArr[index]?.persent : "";
params["option" + index] =
defaultArr[index]?.option != "未答"
? defaultArr[index]?.option == 1
@@ -639,7 +639,7 @@ export default {
} else {
items["title"] = "未答";
params["count" + index] = lastOPtion.count;
- params["present" + index] = lastOPtion.present;
+ params["persent" + index] = lastOPtion.persent;
params["option" + index] = "?";
}
});
@@ -660,15 +660,23 @@ export default {
},
//导出
async exportData() {
- // if (this.exportLoading == true) return;
- // this.exportLoading = true;
- // const { data, status, info } = await this.$request.exportPeriodReport();
- // this.exportLoading = false;
- // if (data) {
- // downloadFile(this.title + "报表", data);
- // } else {
- // this.$message.error(info);
- // }
+ if (this.exportLoading == true) return;
+ this.exportLoading = true;
+ const data = await this.$request.exportExamReport({
+ examId:this.id
+ });
+ this.exportLoading = false;
+ if (data) {
+ let blob = new Blob([data], {
+ type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
+ });
+ downloadFile(
+ "即时测-单卷测练报表.xlsx",
+ blob
+ );
+ } else {
+ this.$message.error("下载失败");
+ }
},
},
};
@@ -706,7 +714,7 @@ div::-webkit-scrollbar-thumb {
z-index: 10;
}
}
-.present{
+.persent{
white-space: nowrap;
}
.error {
diff --git a/src/views/test/editAnswer.vue b/src/views/test/editAnswer.vue
index a455819..971c5f3 100644
--- a/src/views/test/editAnswer.vue
+++ b/src/views/test/editAnswer.vue
@@ -208,6 +208,7 @@
-
-
-
-
+
+
-
-
-
-
-
-
+ v-for="(item, index) in answerList"
+ :key="index"
+ :label="item.title"
+ >
+
+
+
+
+
-
-
+ v-for="(item, index) in answerList"
+ :key="index"
+ :label="item"
+ >
+
+
+
+
+
+
+
-
+
导出报表
@@ -458,6 +462,7 @@ export default {
components: { editAnswer },
data() {
return {
+ exportLoading:false,
tableMaxHeight: 300,
role: "",
loading: false,
@@ -643,7 +648,7 @@ export default {
});
downloadFile(`主观题模版.xlsx`, blob);
} else {
- this.$message.error(data.message);
+ this.$message.error(data.info);
}
},
async changClazz() {
@@ -837,6 +842,49 @@ export default {
this.$message.error(info);
}
},
+ async downExl(){
+ if (this.exportLoading == true) return;
+ let query = {};
+ for (let key in this.query) {
+ if (this.query[key] != "") {
+ if (key == "subjectNames" && this.role != "ROLE_BANZHUREN") {
+ query["subjectName"] = this.query[key];
+ } else {
+ query[key] = this.query[key];
+ }
+ }
+ }
+ if (this.role == "ROLE_BANZHUREN") {
+ if (
+ query["subjectNames"] &&
+ query["subjectNames"].length == 1 &&
+ query["subjectNames"][0] == "全部"
+ ) {
+ query["subjectNames"] = this.subjectList.map((item) => {
+ return item.value;
+ });
+ query["subjectNames"].shift();
+ }
+ if (!query["subjectNames"]) {
+ this.$message.warning("请选择科目");
+ return;
+ }
+ }
+ this.exportLoading = true;
+ const data = await this.$request.exportPhaseExamReport({ ...query });
+ this.exportLoading = false;
+ if (data) {
+ let blob = new Blob([data], {
+ type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
+ });
+ downloadFile(
+ "即时测-阶段测练报表.xlsx",
+ blob
+ );
+ } else {
+ this.$message.error("下载失败");
+ }
+ }
},
};