Commit 96dbf0ac48b778e134bd0c44fcc5288fe516f28c
1 parent
0f102a24
feat:试卷下载
Showing
4 changed files
with
40 additions
and
4 deletions
src/api/apis/apis.js
@@ -193,6 +193,35 @@ export default { | @@ -193,6 +193,35 @@ export default { | ||
193 | tPaperDetail(data) { | 193 | tPaperDetail(data) { |
194 | return defaltService(setUpUrls.tPaperDetail, data); | 194 | return defaltService(setUpUrls.tPaperDetail, data); |
195 | }, | 195 | }, |
196 | + tPaperDownload(paperId, title) { | ||
197 | + return new Promise((resolve, reject) => { | ||
198 | + service({ | ||
199 | + method: "get", | ||
200 | + url: setUpUrls.tPaperDownload + "?id=" + paperId, // 请求地址 | ||
201 | + responseType: "blob" // 表明返回服务器返回的数据类型 | ||
202 | + }).then( | ||
203 | + (response) => { | ||
204 | + resolve(response); | ||
205 | + console.log(response) | ||
206 | + let fileName = title + ".docx"; | ||
207 | + if (window.navigator.msSaveOrOpenBlob) { | ||
208 | + navigator.msSaveBlob(response, fileName); | ||
209 | + } else { | ||
210 | + let link = document.createElement("a"); | ||
211 | + link.href = window.URL.createObjectURL(response); | ||
212 | + link.download = fileName; | ||
213 | + link.click(); | ||
214 | + window.URL.revokeObjectURL(link.href); | ||
215 | + } | ||
216 | + }, | ||
217 | + (err) => { | ||
218 | + reject(err); | ||
219 | + } | ||
220 | + ); | ||
221 | + }); | ||
222 | + | ||
223 | + // return defaltGetService(setUpUrls.tPaperDownload + "?id=" + paperId); | ||
224 | + }, | ||
196 | //任课老师-查询管理班级授课科目 | 225 | //任课老师-查询管理班级授课科目 |
197 | tSubjectList(data) { | 226 | tSubjectList(data) { |
198 | return defaltService(setUpUrls.tSubjectList, data); | 227 | return defaltService(setUpUrls.tSubjectList, data); |
src/api/urls/apis.js
@@ -78,6 +78,7 @@ export default { | @@ -78,6 +78,7 @@ export default { | ||
78 | tTestExamReport: "/api_html/teaching/testExamReport", | 78 | tTestExamReport: "/api_html/teaching/testExamReport", |
79 | //任课老师-查询答题卡详情 | 79 | //任课老师-查询答题卡详情 |
80 | tPaperDetail: "/api_html/teaching/paperDetail", | 80 | tPaperDetail: "/api_html/teaching/paperDetail", |
81 | + tPaperDownload: "/api_html/teaching/wrongQuestion/download", | ||
81 | //任课老师-查询管理班级授课科目 | 82 | //任课老师-查询管理班级授课科目 |
82 | tSubjectList: "/api_html/teaching/subjectList", | 83 | tSubjectList: "/api_html/teaching/subjectList", |
83 | tListExamReport: "/api_html/teaching/listExamReport", | 84 | tListExamReport: "/api_html/teaching/listExamReport", |
src/utils/index.js
@@ -989,8 +989,7 @@ export function paperPrint(paper) { | @@ -989,8 +989,7 @@ export function paperPrint(paper) { | ||
989 | } | 989 | } |
990 | // size: A4 portrait; | 990 | // size: A4 portrait; |
991 | // size: A3 landscape; | 991 | // size: A3 landscape; |
992 | - | ||
993 | - printWin.document.title = "中天易教"; | 992 | + |
994 | const style = printWin.document.createElement('style'); | 993 | const style = printWin.document.createElement('style'); |
995 | style.innerHTML = ` | 994 | style.innerHTML = ` |
996 | @media print | 995 | @media print |
@@ -998,7 +997,7 @@ export function paperPrint(paper) { | @@ -998,7 +997,7 @@ export function paperPrint(paper) { | ||
998 | @page { | 997 | @page { |
999 | size: A4 portrait; | 998 | size: A4 portrait; |
1000 | margin-top:0mm; | 999 | margin-top:0mm; |
1001 | - margin-bottom:10mm; | 1000 | + margin-bottom:8.5mm; |
1002 | margin-left:4mm; | 1001 | margin-left:4mm; |
1003 | margin-right:4mm; | 1002 | margin-right:4mm; |
1004 | } | 1003 | } |
src/views/basic/askTestQuestion/index.vue
@@ -72,6 +72,8 @@ | @@ -72,6 +72,8 @@ | ||
72 | @click.native="_detailQ(item.id)">查看</el-dropdown-item> | 72 | @click.native="_detailQ(item.id)">查看</el-dropdown-item> |
73 | <el-dropdown-item v-if="dataType != 1" | 73 | <el-dropdown-item v-if="dataType != 1" |
74 | @click.native="_print(item)">打印</el-dropdown-item> | 74 | @click.native="_print(item)">打印</el-dropdown-item> |
75 | + <el-dropdown-item v-if="dataType != 1" | ||
76 | + @click.native="_download(item)">下载</el-dropdown-item> | ||
75 | <el-dropdown-item @click.native="_updateQ(item)">修改</el-dropdown-item> | 77 | <el-dropdown-item @click.native="_updateQ(item)">修改</el-dropdown-item> |
76 | <el-dropdown-item @click.native="_copy(item)">复制</el-dropdown-item> | 78 | <el-dropdown-item @click.native="_copy(item)">复制</el-dropdown-item> |
77 | <el-dropdown-item> | 79 | <el-dropdown-item> |
@@ -658,7 +660,12 @@ export default { | @@ -658,7 +660,12 @@ export default { | ||
658 | } | 660 | } |
659 | paperPrint(data); | 661 | paperPrint(data); |
660 | this.$loading.close(); | 662 | this.$loading.close(); |
661 | - }) | 663 | + }) |
664 | + }, | ||
665 | + async _download(item) { | ||
666 | + this.$loading.open(); | ||
667 | + await this.$request.tPaperDownload(item.id, item.title); | ||
668 | + this.$loading.close(); | ||
662 | }, | 669 | }, |
663 | _updateQ(item) { | 670 | _updateQ(item) { |
664 | 671 |