mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-07 01:46:43 +08:00
feat:增加导出作业
This commit is contained in:
2
.env
2
.env
@@ -16,3 +16,5 @@ VUE_APP_IFRAME_STUDENT_URL=https://u-pre.boe.com/pc/loading
|
||||
|
||||
# 课程二维码
|
||||
VUE_APP_COURSE_STUDY=https://u-pre.boe.com/pc/course/studyindex?id=
|
||||
# 导入学员模板
|
||||
VUE_APP_TEMPLATE=https://u-pre.boe.com/upload/
|
||||
|
||||
@@ -9,4 +9,6 @@ VUE_APP_BOE_API_URL=https://u.boe.com
|
||||
VUE_APP_IFRAME_URL=https://u.boe.com/pc/iframe
|
||||
VUE_APP_IFRAME_STUDENT_URL=https://u.boe.com/pc/loading
|
||||
|
||||
VUE_APP_COURSE_STUDY=https://u.boe.com/pc/course/studyindex?id=
|
||||
VUE_APP_COURSE_STUDY=https://u.boe.com/pc/course/studyindex?id=
|
||||
|
||||
VUE_APP_TEMPLATE=https://u-pre.boe.com/upload/
|
||||
@@ -9,4 +9,6 @@ VUE_APP_BOE_API_URL=https://u.boe.com
|
||||
VUE_APP_IFRAME_URL=https://u.boe.com/pc-release/iframe
|
||||
VUE_APP_IFRAME_STUDENT_URL=https://u.boe.com/pc-release/loading
|
||||
|
||||
VUE_APP_COURSE_STUDY=https://u.boe.com/pc-release/course/studyindex?id=
|
||||
VUE_APP_COURSE_STUDY=https://u.boe.com/pc-release/course/studyindex?id=
|
||||
|
||||
VUE_APP_TEMPLATE=https://u-pre.boe.com/upload/
|
||||
@@ -2,7 +2,7 @@
|
||||
* @Author: lixg lixg@dongwu-inc.com
|
||||
* @Date: 2022-11-04 22:45:31
|
||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||
* @LastEditTime: 2023-01-06 18:04:16
|
||||
* @LastEditTime: 2023-01-07 16:53:23
|
||||
* @FilePath: /fe-manage/src/api/index1.js
|
||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
*/
|
||||
@@ -173,5 +173,7 @@ export const batchFinishTask = (obj) => http.post('/admin/student/batchFinishTas
|
||||
//批量更新学员状态
|
||||
export const batchUpdateStatus = (obj) => http.post('/admin/student/batchUpdateStatus', obj)
|
||||
// //面授课批量导入成绩
|
||||
export const batchImportScore = (offcoursePlanId, obj) =>
|
||||
http.post(`/admin/offcourse/batchImportScore?offcoursePlanId=${offcoursePlanId}`, obj);
|
||||
export const batchImportScore = (obj) =>
|
||||
http.post('/admin/student/importHomeWork', obj, {
|
||||
headers: { "Content-Type": "multipart/form-data" },
|
||||
});
|
||||
BIN
src/assets/images/leveladd/success.png
Normal file
BIN
src/assets/images/leveladd/success.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
187
src/components/Modals/ExportHomeWork.vue
Normal file
187
src/components/Modals/ExportHomeWork.vue
Normal file
@@ -0,0 +1,187 @@
|
||||
<!--
|
||||
* @Author: lixg lixg@dongwu-inc.com
|
||||
* @Date: 2023-01-07 17:25:14
|
||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||
* @LastEditTime: 2023-01-07 17:43:55
|
||||
* @FilePath: /fe-manage/src/components/Modals/ExportHomeWork.vue
|
||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
-->
|
||||
<template>
|
||||
<a-modal
|
||||
:visible="exportHomeWorkV"
|
||||
:footer="null"
|
||||
wrapClassName="exportHomeWork"
|
||||
centered="true"
|
||||
>
|
||||
<div class="delete">
|
||||
<div class="del_header"></div>
|
||||
<div class="del_main">
|
||||
<div class="header">
|
||||
<div class="icon"></div>
|
||||
<span>提示</span>
|
||||
<div class="close_exit" @click="clostModal"></div>
|
||||
</div>
|
||||
<div class="body">
|
||||
<img
|
||||
style="width: 40px; height: 40px; margin-bottom: 16px"
|
||||
src="../../assets/images/leveladd/success.png"
|
||||
/>
|
||||
<span>作业导出完成,请下载本地或去下载中心查看</span>
|
||||
</div>
|
||||
<div class="del_btnbox">
|
||||
<div class="del_btn btn1" @click="clostModal">
|
||||
<div class="btnText">取消</div>
|
||||
</div>
|
||||
<div class="del_btn btn2" @click="downloadHomeWork">
|
||||
<div class="btnText">确定</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</a-modal>
|
||||
</template>
|
||||
<script>
|
||||
import { toRefs, reactive } from "vue";
|
||||
|
||||
export default {
|
||||
name: "ProjectHomeWorkManage",
|
||||
props: {
|
||||
exportHomeWorkV: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
},
|
||||
setup(props, ctx) {
|
||||
const state = reactive({});
|
||||
//关闭弹窗
|
||||
const clostModal = () => {
|
||||
ctx.emit("update:exportHomeWorkV", false);
|
||||
};
|
||||
// //下载作业
|
||||
// const downloadHomeWork=()=>{
|
||||
// // props.url
|
||||
// }
|
||||
console.log("props", props);
|
||||
return {
|
||||
...toRefs(state),
|
||||
clostModal,
|
||||
};
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.exportHomeWork {
|
||||
.ant-modal {
|
||||
width: 424px !important;
|
||||
height: 308px !important;
|
||||
.ant-modal-content {
|
||||
width: 424px !important;
|
||||
height: 308px !important;
|
||||
.ant-modal-body {
|
||||
width: 424px !important;
|
||||
height: 308px !important;
|
||||
padding: 0 !important;
|
||||
.delete {
|
||||
z-index: 999;
|
||||
width: 424px;
|
||||
height: 308px;
|
||||
background: #ffffff;
|
||||
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
|
||||
border-radius: 4px;
|
||||
// position: absolute;
|
||||
// left: 50%;
|
||||
// top: 10%;
|
||||
// transform: translate(-50%, -50%);
|
||||
.del_header {
|
||||
position: absolute;
|
||||
width: calc(100%);
|
||||
height: 68px;
|
||||
background: linear-gradient(
|
||||
rgba(78, 166, 255, 0.2) 0%,
|
||||
rgba(78, 166, 255, 0) 100%
|
||||
);
|
||||
}
|
||||
.del_main {
|
||||
width: 100%;
|
||||
position: relative;
|
||||
.header {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding-top: 20px;
|
||||
padding-left: 26px;
|
||||
font-size: 16px;
|
||||
.icon {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 10px;
|
||||
background-image: url(@/assets/images/taskpage/gan.png);
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
.close_exit {
|
||||
position: absolute;
|
||||
right: 42px;
|
||||
cursor: pointer;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
background-image: url(@/assets/images/coursewareManage/close.png);
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
}
|
||||
.body {
|
||||
width: 100%;
|
||||
margin: 34px auto 56px auto;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
// background-color: red;
|
||||
position: relative;
|
||||
.back {
|
||||
position: absolute;
|
||||
top: 30px;
|
||||
font-size: 12px;
|
||||
font-weight: 400;
|
||||
color: #666666;
|
||||
}
|
||||
}
|
||||
.del_btnbox {
|
||||
display: flex;
|
||||
margin: 30px auto;
|
||||
justify-content: center;
|
||||
.del_btn {
|
||||
width: 100px;
|
||||
height: 40px;
|
||||
background: rgba(64, 158, 255, 0);
|
||||
border-radius: 8px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
flex-shrink: 0;
|
||||
cursor: pointer;
|
||||
.btnText {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
line-height: 40px;
|
||||
}
|
||||
}
|
||||
.btn1 {
|
||||
border: 1px solid rgba(64, 158, 255, 1);
|
||||
color: #4ea6ff;
|
||||
margin-right: 14px;
|
||||
}
|
||||
.btn2 {
|
||||
background-color: #4ea6ff;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.ant-modal-close-x {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -18,7 +18,7 @@
|
||||
<div class="main">
|
||||
<div class="minatitl">
|
||||
<div class="up1">请下载</div>
|
||||
<div class="up2">模板</div>
|
||||
<a class="up2" :href="template" style="course: pointer">模板</a>
|
||||
<div class="up1">,按要求填写数据并导入</div>
|
||||
</div>
|
||||
<div class="upload">
|
||||
@@ -138,7 +138,10 @@ export default {
|
||||
},
|
||||
},
|
||||
setup(props, ctx) {
|
||||
const state = reactive({});
|
||||
const state = reactive({
|
||||
template:
|
||||
process.env.VUE_APP_TEMPLATE + "导入学员模版-1672998102528.xlsx",
|
||||
});
|
||||
const closeDrawer = () => {
|
||||
ctx.emit("update:AddImpStuvisible", false);
|
||||
};
|
||||
|
||||
@@ -28,10 +28,12 @@
|
||||
<div style="height: 176px; margin-bottom: 20px">
|
||||
<a-upload-dragger
|
||||
v-model:fileList="fileList"
|
||||
:action="BATCH_IMPORT_SCORE + '?offcoursePlanId=' + id"
|
||||
action="/admin/student/importHomeWork"
|
||||
name="file"
|
||||
:multiple="true"
|
||||
:before-upload="beforeUpload"
|
||||
@change="handleChange"
|
||||
@customRequest="handleUpload"
|
||||
>
|
||||
<p class="ant-upload-drag-icon">
|
||||
<inbox-outlined></inbox-outlined>
|
||||
@@ -60,8 +62,8 @@
|
||||
</div>
|
||||
<div class="curloading">
|
||||
<div class="cur">55%</div>
|
||||
<div class="cancel" style="margin-left: 20px">暂停</div>
|
||||
<div class="cancel" style="margin-left: 15px">取消</div>
|
||||
<!-- <div class="cancel" style="margin-left: 20px">暂停</div>
|
||||
<div class="cancel" style="margin-left: 15px">取消</div> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -79,10 +81,22 @@
|
||||
</div>
|
||||
<div class="curloading">
|
||||
<div class="cur">55%</div>
|
||||
<div class="cancel" style="margin-left: 20px">暂停</div>
|
||||
<div class="cancel" style="margin-left: 15px">取消</div>
|
||||
<div
|
||||
style="color: #387df7; margin-left: 20px; cursor: pointer"
|
||||
>
|
||||
下载失败数据
|
||||
</div>
|
||||
<!-- <div class="cancel" style="margin-left: 20px">暂停</div>
|
||||
<div class="cancel" style="margin-left: 15px">取消</div> -->
|
||||
</div>
|
||||
<div
|
||||
class="defeat"
|
||||
style="display: flex; align-items: center"
|
||||
>
|
||||
<div style="color: #ff7474">
|
||||
20条数据导入成功,5条数据导入失败
|
||||
</div>
|
||||
</div>
|
||||
<div class="defeat">下载失败数据</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="loadborder">
|
||||
@@ -99,7 +113,7 @@
|
||||
</div>
|
||||
<div class="curloading">
|
||||
<div class="cur">100%</div>
|
||||
<div class="cancel" style="margin-left: 20px">删除</div>
|
||||
<!-- <div class="cancel" style="margin-left: 20px">删除</div> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -150,7 +164,18 @@ export default {
|
||||
|
||||
//上传文件
|
||||
const handleChange = (info) => {
|
||||
console.log("info", info, props.id);
|
||||
console.log("info", info);
|
||||
let timer = setInterval(() => {
|
||||
if (info.file.percent < 100) {
|
||||
console.log("info111", info.file.percent);
|
||||
} else {
|
||||
console.log("info22", info.file.percent);
|
||||
clearInterval(timer);
|
||||
}
|
||||
}, 1000);
|
||||
// if (info.event) {
|
||||
// console.log("info.event", info.event);
|
||||
// }
|
||||
const status = info.file.status;
|
||||
if (status !== "uploading") {
|
||||
console.log(info.file, info.fileList);
|
||||
@@ -159,24 +184,61 @@ export default {
|
||||
const formData = new FormData();
|
||||
formData.append("uploadFile", info.file);
|
||||
// formData.append("offcoursePlanId", props.id);
|
||||
console.log(info.file);
|
||||
api.batchImportScore(props.id, formData).then((res) => {
|
||||
// if (res.data.code === 200) {
|
||||
// console.log('上传成功')
|
||||
// }
|
||||
console.log("上传成绩", res);
|
||||
});
|
||||
console.log("info.file", info.file);
|
||||
// api.batchImportScore(formData).then((res) => {
|
||||
// // if (res.data.code === 200) {
|
||||
// // console.log('上传成功')
|
||||
// // }
|
||||
// console.log("上传成绩", res);
|
||||
// });
|
||||
message.success(`${info.file.name} file uploaded successfully.`);
|
||||
} else if (status === "error") {
|
||||
message.error(`${info.file.name} file upload failed.`);
|
||||
}
|
||||
};
|
||||
const beforeUpload = (file) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
// const isJpgOrPng =
|
||||
// file.name.indexOf(".xlsx") !== "-1" ||
|
||||
// file.name.indexOf(".xls") !== "-1";
|
||||
|
||||
// if (!isJpgOrPng) {
|
||||
// message.destroy();
|
||||
// message.error("仅支持xls、xlsx格式!");
|
||||
// return reject(false);
|
||||
// }
|
||||
const formData = new FormData();
|
||||
formData.append("uploadFile", file);
|
||||
// let progress = { percent: 1 };
|
||||
|
||||
// const intervalId = setInterval(() => {
|
||||
// if (progress.percent < 100) {
|
||||
// progress.percent++;
|
||||
// file.onProgress(progress);
|
||||
// } else {
|
||||
// clearInterval(intervalId);
|
||||
// }
|
||||
// }, 100);
|
||||
api.batchImportScore(formData).then((res) => {
|
||||
if (res.data.code === 200) {
|
||||
console.log("上传成功", res);
|
||||
return reject(true);
|
||||
}
|
||||
});
|
||||
return reject(false);
|
||||
});
|
||||
};
|
||||
const handleUpload = (e) => {
|
||||
console.log("handleUpload", e);
|
||||
};
|
||||
return {
|
||||
...toRefs(state),
|
||||
afterVisibleChange,
|
||||
closeDrawer,
|
||||
handleChange,
|
||||
BATCH_IMPORT_SCORE,
|
||||
beforeUpload,
|
||||
handleUpload,
|
||||
};
|
||||
},
|
||||
};
|
||||
@@ -281,12 +343,13 @@ export default {
|
||||
margin-left: 20px;
|
||||
position: relative;
|
||||
.defeat {
|
||||
width: 400px;
|
||||
position: absolute;
|
||||
left: 46px;
|
||||
top: 38px;
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
color: #ff7474;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.img {
|
||||
width: 30px;
|
||||
|
||||
@@ -709,9 +709,7 @@ export default {
|
||||
process.env.VUE_APP_PROXY_URL
|
||||
}admin/student/exportTaskStudent?currentStageId=${
|
||||
props.projectTaskInfo.stageId
|
||||
}&type=${1}&pid=${props.projectTaskInfo.projectId}&taskId=${
|
||||
props.projectTaskInfo.projectTaskId
|
||||
}&taskType=${props.projectTaskInfo.type}`
|
||||
}&type=${1}&pid=${props.projectTaskInfo.projectId}&taskType=0`
|
||||
);
|
||||
// api
|
||||
// .exportTaskStudent({
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
<div class="img2"></div>
|
||||
<div class="wz">导出数据</div>
|
||||
</div>
|
||||
<div class="btn btn2" @click="exportHomeWork">
|
||||
<div class="btn btn2" @click="exportHomeWorkShow">
|
||||
<div class="wz">导出作业</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -165,6 +165,9 @@
|
||||
<CKWork v-model:CWvisible="CWvisible" />
|
||||
<!-- 查看答卷抽屉 -->
|
||||
<CQue v-model:CQvisible="CQvisible" />
|
||||
|
||||
<!-- 导出作业提示框 -->
|
||||
<ExportHomeWork v-model:exportHomeWorkV="exportHomeWorkV" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
@@ -176,6 +179,7 @@ import CQue from "../CheckQue.vue";
|
||||
import EntryScores from "../EntryScores.vue";
|
||||
// import * as api from "../../../api/index";
|
||||
import * as api from "../../../api/index1";
|
||||
import ExportHomeWork from "../../Modals/ExportHomeWork.vue";
|
||||
export default {
|
||||
name: "ProjectFaceTaskManage",
|
||||
components: {
|
||||
@@ -183,6 +187,7 @@ export default {
|
||||
CKWork,
|
||||
CQue,
|
||||
ASOver,
|
||||
ExportHomeWork,
|
||||
},
|
||||
props: {
|
||||
Fvisible: {
|
||||
@@ -473,6 +478,7 @@ export default {
|
||||
},
|
||||
},
|
||||
],
|
||||
exportHomeWorkV: false,
|
||||
});
|
||||
// //面授直播管理列表操作
|
||||
// const ListOpera = () => {
|
||||
@@ -656,9 +662,7 @@ export default {
|
||||
process.env.VUE_APP_PROXY_URL
|
||||
}admin/student/exportTaskStudent?currentStageId=${
|
||||
props.projectTaskInfo.stageId
|
||||
}&type=${1}&pid=${props.projectTaskInfo.projectId}&taskId=${
|
||||
props.projectTaskInfo.projectTaskId
|
||||
}&taskType=${props.projectTaskInfo.type}`
|
||||
}&type=${1}&pid=${props.projectTaskInfo.projectId}taskType=0`
|
||||
);
|
||||
// api
|
||||
// .exportTaskStudent({
|
||||
@@ -676,6 +680,12 @@ export default {
|
||||
// console.log(err);
|
||||
// });
|
||||
}
|
||||
|
||||
//显示导出作业弹窗
|
||||
const exportHomeWorkShow = () => {
|
||||
state.exportHomeWorkV = true;
|
||||
// exportHomeWork();
|
||||
};
|
||||
//导出作业
|
||||
function exportHomeWork() {
|
||||
console.log("props.projectTaskInfo", props.projectTaskInfo);
|
||||
@@ -704,6 +714,7 @@ export default {
|
||||
resetTaskList,
|
||||
changePaginationStu,
|
||||
exportTaskStu,
|
||||
exportHomeWorkShow,
|
||||
exportHomeWork,
|
||||
getStudent,
|
||||
};
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
<div class="img2"></div>
|
||||
<div class="wz">导出数据</div>
|
||||
</div>
|
||||
<div class="btn btn2" @click="exportHomeWork">
|
||||
<div class="btn btn2" @click="exportHomeWorkShow">
|
||||
<div class="wz">导出作业</div>
|
||||
</div>
|
||||
<div class="btn btn2">
|
||||
@@ -134,6 +134,9 @@
|
||||
<CKWork v-model:CWvisible="CWvisible" />
|
||||
<!-- 查看答卷抽屉 -->
|
||||
<CQue v-model:CQvisible="CQvisible" />
|
||||
|
||||
<!-- 导出作业提示框 -->
|
||||
<ExportHomeWork v-model:exportHomeWorkV="exportHomeWorkV" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
@@ -145,6 +148,7 @@ import CQue from "../CheckQue.vue";
|
||||
import EScore from "../ExportScore.vue";
|
||||
// import * as api from "../../../api/index";
|
||||
import * as api from "../../../api/index1";
|
||||
import ExportHomeWork from "../../Modals/ExportHomeWork.vue";
|
||||
export default {
|
||||
name: "ProjectHomeWorkManage",
|
||||
components: {
|
||||
@@ -152,6 +156,7 @@ export default {
|
||||
CKWork,
|
||||
CQue,
|
||||
EScore,
|
||||
ExportHomeWork,
|
||||
},
|
||||
props: {
|
||||
Wvisible: {
|
||||
@@ -382,6 +387,7 @@ export default {
|
||||
className: "h",
|
||||
},
|
||||
],
|
||||
exportHomeWorkV: false,
|
||||
});
|
||||
//面授直播管理列表操作
|
||||
const ListOpera = () => {
|
||||
@@ -546,9 +552,7 @@ export default {
|
||||
process.env.VUE_APP_PROXY_URL
|
||||
}admin/student/exportTaskStudent?currentStageId=${
|
||||
props.projectTaskInfo.stageId
|
||||
}&type=${1}&pid=${props.projectTaskInfo.projectId}&taskId=${
|
||||
props.projectTaskInfo.projectTaskId
|
||||
}&taskType=${props.projectTaskInfo.type}`
|
||||
}&type=${1}&pid=${props.projectTaskInfo.projectId}&taskType=0`
|
||||
);
|
||||
// api
|
||||
// .exportTaskStudent({
|
||||
@@ -566,6 +570,12 @@ export default {
|
||||
// console.log(err);
|
||||
// });
|
||||
}
|
||||
//显示导出作业弹窗
|
||||
const exportHomeWorkShow = () => {
|
||||
state.exportHomeWorkV = true;
|
||||
// exportHomeWork();
|
||||
};
|
||||
|
||||
//导出作业
|
||||
function exportHomeWork() {
|
||||
console.log("props.projectTaskInfo", props.projectTaskInfo);
|
||||
@@ -595,6 +605,7 @@ export default {
|
||||
changePaginationStu,
|
||||
exportTaskStu,
|
||||
exportHomeWork,
|
||||
exportHomeWorkShow,
|
||||
};
|
||||
},
|
||||
};
|
||||
|
||||
@@ -641,9 +641,7 @@ export default {
|
||||
process.env.VUE_APP_PROXY_URL
|
||||
}admin/student/exportTaskStudent?currentStageId=${
|
||||
props.datasource.chapterId
|
||||
}&type=${2}&pid=${props.datasource.routerId}&taskId=${
|
||||
props.datasource.routerTaskId
|
||||
}&taskType=${props.datasource.type}`
|
||||
}&type=${2}&pid=${props.datasource.routerId}&taskType=0`
|
||||
);
|
||||
// api
|
||||
// .exportTaskStudent({
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
<div class="img2"></div>
|
||||
<div class="wz">导出数据</div>
|
||||
</div>
|
||||
<div class="btn btn2" @click="exportHomeWork">
|
||||
<div class="btn btn2" @click="exportHomeWorkShow">
|
||||
<div class="wz">导出作业</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -150,6 +150,8 @@
|
||||
<CKWork v-model:CWvisible="CWvisible" />
|
||||
<!-- 查看答卷抽屉 -->
|
||||
<CQue v-model:CQvisible="CQvisible" />
|
||||
<!-- 导出作业提示框 -->
|
||||
<ExportHomeWork v-model:exportHomeWorkV="exportHomeWorkV" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
@@ -161,6 +163,7 @@ import CQue from "../CheckQue.vue";
|
||||
import EntryScores from "../EntryScores.vue";
|
||||
// import * as api from "../../../api/index";
|
||||
import * as api from "../../../api/index1";
|
||||
import ExportHomeWork from "../../Modals/ExportHomeWork.vue";
|
||||
export default {
|
||||
name: "RouterFaceTeachManage",
|
||||
components: {
|
||||
@@ -168,6 +171,7 @@ export default {
|
||||
CKWork,
|
||||
CQue,
|
||||
ASOver,
|
||||
ExportHomeWork,
|
||||
},
|
||||
props: {
|
||||
FaceTeachModelVisible: {
|
||||
@@ -418,6 +422,7 @@ export default {
|
||||
className: "h",
|
||||
},
|
||||
],
|
||||
exportHomeWorkV: false,
|
||||
});
|
||||
//面授直播管理列表操作
|
||||
const ListOpera = () => {
|
||||
@@ -602,9 +607,7 @@ export default {
|
||||
process.env.VUE_APP_PROXY_URL
|
||||
}admin/student/exportTaskStudent?currentStageId=${
|
||||
props.datasource.chapterId
|
||||
}&type=${2}&pid=${props.datasource.routerId}&taskId=${
|
||||
props.datasource.routerTaskId
|
||||
}&taskType=${props.datasource.type}`
|
||||
}&type=${2}&pid=${props.datasource.routerId}&taskType=0`
|
||||
);
|
||||
// api
|
||||
// .exportTaskStudent({
|
||||
@@ -622,6 +625,13 @@ export default {
|
||||
// console.log(err);
|
||||
// });
|
||||
}
|
||||
|
||||
//显示导出作业弹窗
|
||||
const exportHomeWorkShow = () => {
|
||||
state.exportHomeWorkV = true;
|
||||
// exportHomeWork();
|
||||
};
|
||||
|
||||
//导出作业
|
||||
function exportHomeWork() {
|
||||
console.log("props.datasource", props.datasource);
|
||||
@@ -651,6 +661,7 @@ export default {
|
||||
exportTaskStu,
|
||||
exportHomeWork,
|
||||
getStudent,
|
||||
exportHomeWorkShow,
|
||||
};
|
||||
},
|
||||
};
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
<div class="img2"></div>
|
||||
<div class="wz">导出数据</div>
|
||||
</div>
|
||||
<div class="btn btn2" @click="exportHomeWork">
|
||||
<div class="btn btn2" @click="exportHomeWorkShow">
|
||||
<div class="wz">导出作业</div>
|
||||
</div>
|
||||
<div class="btn btn2">
|
||||
@@ -129,6 +129,9 @@
|
||||
<CKWork v-model:CWvisible="CWvisible" />
|
||||
<!-- 查看答卷抽屉 -->
|
||||
<CQue v-model:CQvisible="CQvisible" />
|
||||
|
||||
<!-- 导出作业提示框 -->
|
||||
<ExportHomeWork v-model:exportHomeWorkV="exportHomeWorkV" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
@@ -140,6 +143,7 @@ import CQue from "../CheckQue.vue";
|
||||
import EScore from "../ExportScore.vue";
|
||||
// import * as api from "../../../api/index";
|
||||
import * as api from "../../../api/index1";
|
||||
import ExportHomeWork from "../../Modals/ExportHomeWork.vue";
|
||||
export default {
|
||||
name: "RouterCommonManage",
|
||||
components: {
|
||||
@@ -147,6 +151,7 @@ export default {
|
||||
CKWork,
|
||||
CQue,
|
||||
EScore,
|
||||
ExportHomeWork,
|
||||
},
|
||||
props: {
|
||||
HomeworkModelVisible: {
|
||||
@@ -393,6 +398,7 @@ export default {
|
||||
className: "h",
|
||||
},
|
||||
],
|
||||
exportHomeWorkV: false,
|
||||
});
|
||||
//面授直播管理列表操作
|
||||
const ListOpera = () => {
|
||||
@@ -554,9 +560,7 @@ export default {
|
||||
process.env.VUE_APP_PROXY_URL
|
||||
}admin/student/exportTaskStudent?currentStageId=${
|
||||
props.datasource.chapterId
|
||||
}&type=${2}&pid=${props.datasource.routerId}&taskId=${
|
||||
props.datasource.routerTaskId
|
||||
}&taskType=${props.datasource.type}`
|
||||
}&type=${2}&pid=${props.datasource.routerId}&taskType=0`
|
||||
);
|
||||
// api
|
||||
// .exportTaskStudent({
|
||||
@@ -574,6 +578,12 @@ export default {
|
||||
// console.log(err);
|
||||
// });
|
||||
}
|
||||
//显示导出作业弹窗
|
||||
const exportHomeWorkShow = () => {
|
||||
state.exportHomeWorkV = true;
|
||||
// exportHomeWork();
|
||||
};
|
||||
|
||||
//导出作业
|
||||
function exportHomeWork() {
|
||||
console.log("props.datasource", props.datasource);
|
||||
@@ -603,6 +613,7 @@ export default {
|
||||
changePaginationStu,
|
||||
exportTaskStu,
|
||||
exportHomeWork,
|
||||
exportHomeWorkShow,
|
||||
};
|
||||
},
|
||||
};
|
||||
|
||||
@@ -161,7 +161,7 @@
|
||||
<div
|
||||
class="stmm_btn btn5"
|
||||
style="margin-left: 15px"
|
||||
@click="exportHomeWork"
|
||||
@click="exportHomeWorkShow"
|
||||
>
|
||||
<div class="btnText">导出作业</div>
|
||||
</div>
|
||||
@@ -339,6 +339,8 @@
|
||||
|
||||
<!-- 导入作业成绩抽屉 -->
|
||||
<ExportScore v-model:eScorevisible="eScorevisible" :type="3" :id="id" />
|
||||
<!-- 导出作业提示框 -->
|
||||
<ExportHomeWork v-model:exportHomeWorkV="exportHomeWorkV" />
|
||||
</template>
|
||||
<script setup>
|
||||
import { computed, defineProps, onMounted, ref, watch } from "vue";
|
||||
@@ -350,6 +352,7 @@ import { message } from "ant-design-vue";
|
||||
import SeeStu from "../../components/drawers/SeeStu";
|
||||
import ExportScore from "../drawers/ExportScore.vue";
|
||||
import OrgClass from "@/components/project/OrgClass";
|
||||
import ExportHomeWork from "../Modals/ExportHomeWork.vue";
|
||||
const props = defineProps({
|
||||
type: Number,
|
||||
id: String,
|
||||
@@ -627,14 +630,20 @@ const showEScoreModal = () => {
|
||||
eScorevisible.value = true;
|
||||
};
|
||||
|
||||
//导出作业
|
||||
const exportHomeWork = () => {
|
||||
window.open(
|
||||
`${
|
||||
process.env.VUE_APP_PROXY_URL
|
||||
}admin/student/exportHomeWork?type=${3}&pid=${props.id}`
|
||||
);
|
||||
//显示导出作业弹窗
|
||||
const exportHomeWorkV = ref(false);
|
||||
const exportHomeWorkShow = () => {
|
||||
exportHomeWorkV.value = true;
|
||||
// exportHomeWork();
|
||||
};
|
||||
// //导出作业
|
||||
// const exportHomeWork = () => {
|
||||
// window.open(
|
||||
// `${
|
||||
// process.env.VUE_APP_PROXY_URL
|
||||
// }admin/student/exportHomeWork?type=${3}&pid=${props.id}`
|
||||
// );
|
||||
// };
|
||||
//导出
|
||||
const exportStu = () => {
|
||||
window.open(
|
||||
|
||||
Reference in New Issue
Block a user