From 20653f8aeba9b0a47394dc930bed65b6907270e4 Mon Sep 17 00:00:00 2001
From: zhijie <1003392067@qq.com>
Date: 星期四, 14 四月 2022 00:34:15 +0800
Subject: [PATCH] 答题结束后报告下载

---
 src/lang/th.js                  |    1 +
 src/lang/zh.js                  |    1 +
 src/views/exam/paper/finish.vue |   22 +++++++++++++++++++++-
 src/lang/en.js                  |    1 +
 src/views/exam/paper/guide.vue  |    2 +-
 src/api/examPaper.js            |    6 ++++--
 6 files changed, 29 insertions(+), 4 deletions(-)

diff --git a/src/api/examPaper.js b/src/api/examPaper.js
index a8ed906..defe3fc 100644
--- a/src/api/examPaper.js
+++ b/src/api/examPaper.js
@@ -1,4 +1,4 @@
-import { post, postOts } from '@/utils/request'
+import { post, postOts, get } from '@/utils/request'
 
 export default {
   // select: id => post('/api/student/exam/paper/select/' + id),
@@ -6,5 +6,7 @@
   selectTokenId: tokenId => postOts('/api/exam/paper/selectTokenId/' + tokenId),
   recordLogininfor: tokenId => postOts('/api/exam/paper/recordLogininfor/' + tokenId),
   pageList: query => post('/api/student/exam/paper/pageList', query),
-  updateTestMemberStatus: tokenId => postOts('/api/exam/exampaper/answer/updateTestMemberStatus/' + tokenId)
+  updateTestMemberStatus: tokenId => postOts('/api/exam/exampaper/answer/updateTestMemberStatus/' + tokenId),
+  selectTesterReport: tokenId => postOts('/api/exam/paper/testerReport/' + tokenId),
+  down: (fileName) => get('/api/exam/paper/download?fileName=' + fileName + '&delete=false')
 }
diff --git a/src/lang/en.js b/src/lang/en.js
index 14d3504..66820fe 100644
--- a/src/lang/en.js
+++ b/src/lang/en.js
@@ -1,6 +1,7 @@
 export default {
   start: 'Continue testing',
   submission: 'submit',
+  down: 'download',
   lastQuestion: 'Last',
   nextQuestion: 'Next',
   recommendedTime: 'Recommended Time:',
diff --git a/src/lang/th.js b/src/lang/th.js
index 14d3504..66820fe 100644
--- a/src/lang/th.js
+++ b/src/lang/th.js
@@ -1,6 +1,7 @@
 export default {
   start: 'Continue testing',
   submission: 'submit',
+  down: 'download',
   lastQuestion: 'Last',
   nextQuestion: 'Next',
   recommendedTime: 'Recommended Time:',
diff --git a/src/lang/zh.js b/src/lang/zh.js
index c5190ee..fb84277 100644
--- a/src/lang/zh.js
+++ b/src/lang/zh.js
@@ -1,6 +1,7 @@
 export default {
   start: '缁х画娴嬭瘯',
   submission: ' 鎻愪氦',
+  down: '涓嬭浇',
   lastQuestion: '鍥炲埌涓婁竴棰�',
   nextQuestion: '涓嬩竴棰�',
   recommendedTime: '寤鸿鏃堕棿锛�',
diff --git a/src/views/exam/paper/finish.vue b/src/views/exam/paper/finish.vue
index 1a9360e..57b7f01 100644
--- a/src/views/exam/paper/finish.vue
+++ b/src/views/exam/paper/finish.vue
@@ -6,20 +6,35 @@
       <el-main class="align-center">
         <H1 v-if="content!==null && content.trim()!==''">{{content}}</H1>
         <H1 v-else>{{$t('finishMsg')}}</H1>
+        <el-button type="danger" :disabled="downDisable" @click="downReport" round>{{$t('down')}}</el-button>
       </el-main>
     </el-container>
   </div>
 </template>
 
 <script>
+import examPaperApi from '@/api/examPaper'
+import {mapState} from "vuex";
 export default {
   data () {
     return {
       name: this.$route.query.name,
-      content: this.$route.query.content
+      content: this.$route.query.content,
+      downDisable: true,
+      downUrl: ''
     }
   },
   created () {
+    let _this = this
+    examPaperApi.selectTesterReport(_this.memberToken).then(re => {
+      if (re.code === 0) {
+        _this.downDisable = false
+        _this.downUrl = re.msg
+        console.log(re)
+      } else {
+        console.log(re)
+      }
+    })
   },
   mounted () {
 
@@ -27,8 +42,13 @@
   beforeDestroy () {
   },
   methods: {
+    downReport: function () {
+      let _this = this
+      examPaperApi.down(_this.downUrl)
+    }
   },
   computed: {
+    ...mapState('user', { memberToken: state => state.memberToken })
   }
 }
 </script>
diff --git a/src/views/exam/paper/guide.vue b/src/views/exam/paper/guide.vue
index 70cfdaa..3a76279 100644
--- a/src/views/exam/paper/guide.vue
+++ b/src/views/exam/paper/guide.vue
@@ -43,7 +43,7 @@
     },
     openExplain: function () {
       let _this = this
-      window.open(_this.formDo.jobDescriptionFile);
+      window.open(_this.formDo.jobDescriptionFile)
     }
   },
   computed: {

--
Gitblit v1.9.1