diff --git a/src/api/evaluation.js b/src/api/evaluation.js
index f6788ad2..191a5b84 100644
--- a/src/api/evaluation.js
+++ b/src/api/evaluation.js
@@ -34,4 +34,6 @@ export const savePermission = (obj) => http.post(`${process.env.VUE_APP_ACT_API}
export const saveLists = (obj) => http.post(`${process.env.VUE_APP_ACT_API}/permission/list`,obj)
//删除配置管理
export const deleteId = (obj) => http.post(`${process.env.VUE_APP_ACT_API}/permission/delete`,obj)
+//普通管理员权限
+export const getByUserId = (obj) => http.post(`${process.env.VUE_APP_ACT_API}/permission/getByUserId`,obj)
diff --git a/src/components/drawers/router/RouterFaceStu.vue b/src/components/drawers/router/RouterFaceStu.vue
index 2203721c..a03cb60a 100644
--- a/src/components/drawers/router/RouterFaceStu.vue
+++ b/src/components/drawers/router/RouterFaceStu.vue
@@ -512,7 +512,7 @@ const qrcodeVisibleSign = () => {
courseName: props.courseName,
createName: data.value[coursePlanIndex.value].offteachers.map(teacher => teacher.teacherName).join(', '),
name: signName + '课程签到',
- url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${taskId}&taskType=${2}&type=${3}`,
+ url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${taskId}&taskType=${2}&type=${3}&openCourseId=${taskId}`,
});
}
// qrCode({
diff --git a/src/components/student/TableStudent.vue b/src/components/student/TableStudent.vue
index 8b7769c0..ee9bd636 100644
--- a/src/components/student/TableStudent.vue
+++ b/src/components/student/TableStudent.vue
@@ -540,7 +540,7 @@ const tablecolumns = ref([
title: "操作",
dataIndex: "operation",
key: "operation",
- width: 210,
+ width: 260,
align: "center",
slots: { customRender: "action" },
},
diff --git a/src/utils/zipdownload.js b/src/utils/zipdownload.js
new file mode 100644
index 00000000..d42e85c2
--- /dev/null
+++ b/src/utils/zipdownload.js
@@ -0,0 +1,36 @@
+import axios from 'axios'
+import {getCookieForName} from "@/api/method";
+
+const mimeMap = {
+ xlsx: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
+ zip: 'application/zip'
+}
+
+const baseUrl = process.env.VUE_APP_ACT_API
+export function downLoadZip(str, filename) {
+ var url = baseUrl + str
+ axios({
+ method: 'get',
+ url: url,
+ responseType: 'blob',
+ headers: { 'Authorization': 'Bearer ' + getCookieForName("token") }
+ }).then(res => {
+ resolveBlob(res, mimeMap.zip,filename)
+ })
+}
+/**
+ * 解析blob响应内容并下载
+ * @param {*} res blob响应内容
+ * @param {String} mimeType MIME类型
+ */
+export function resolveBlob(res, mimeType,filename) {
+ const link = document.createElement('a');// 创建a标签
+ let blob = new Blob([res.data], { type: mimeType }); // 设置文件类型
+ link.style.display = "none";
+ link.href = URL.createObjectURL(blob); // 创建URL
+ link.setAttribute("download", `${filename}`);
+ document.body.appendChild(link);
+ link.click();
+ URL.revokeObjectURL(link.href);
+ document.body.removeChild(link);
+}
diff --git a/src/views/courselibrary/CoursewareManage.vue b/src/views/courselibrary/CoursewareManage.vue
index d6d7ce2d..f43b2915 100644
--- a/src/views/courselibrary/CoursewareManage.vue
+++ b/src/views/courselibrary/CoursewareManage.vue
@@ -5118,7 +5118,9 @@ function onFocusEnd(){
: process.env.VUE_APP_BASE_API +
`/admin/student/studentSign?taskId=${
record.id
- }&taskType=${2}&type=${3}`,
+ }&taskType=${2}&type=${3}&openCourseId=${
+ record.id
+ }`,
};
console.log("codeInfo", state.codeInfo, record);
state.codeIndex = 0;
diff --git a/src/views/evaluation/EvaDown.vue b/src/views/evaluation/EvaDown.vue
index cda8484d..a502f703 100644
--- a/src/views/evaluation/EvaDown.vue
+++ b/src/views/evaluation/EvaDown.vue
@@ -69,6 +69,7 @@ import { useRoute } from "vue-router";
import { message } from "ant-design-vue";
import { useStore } from "vuex";
import {boeRequest} from "@/api/request";
+import {downLoadZip} from "@/utils/zipdownload";
export default {
name: "evadown",
components: {},
@@ -165,7 +166,8 @@ import {boeRequest} from "@/api/request";
message.info('请先上传报告')
return
}
- window.open(`/activityApi/evaluation/download?id=${route.query.id}`);
+ // window.open(`/activityApi/evaluation/download?id=${route.query.id}`);
+ downLoadZip(`/evaluation/download?id=${route.query.id}`,route.query.name)
}
const listData = async () => {
state.tableLoading = true
diff --git a/src/views/evaluation/evaluationUpload.vue b/src/views/evaluation/evaluationUpload.vue
index 153daf2b..7a442fd1 100644
--- a/src/views/evaluation/evaluationUpload.vue
+++ b/src/views/evaluation/evaluationUpload.vue
@@ -49,6 +49,69 @@
:pagination="false"
>
+