From b62c6c9ab29e933fd0333ac183ef837d00aba5d2 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 12 七月 2024 18:09:28 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/views/answer/dataStatistics.vue |   42 ++++++++++++++++++++++++++++++++++++------
 1 files changed, 36 insertions(+), 6 deletions(-)

diff --git a/src/views/answer/dataStatistics.vue b/src/views/answer/dataStatistics.vue
index 5d334ba..03861d0 100644
--- a/src/views/answer/dataStatistics.vue
+++ b/src/views/answer/dataStatistics.vue
@@ -2,13 +2,14 @@
   <div style="padding: 10px" ref="pageContent">
     <el-form :model="queryParam" ref="queryForm" :inline="true" style="display: flex">
       <el-form-item label="璇曞嵎锛�">
-        <el-select v-model="queryParam.id" filterable placeholder="璇曞嵎">
-          <el-option v-for="item in examPaperList" :key="item.id" :value="item.id" :label="item.name"
-            @change="getType(item.paperType)" />
+        <el-select v-model="queryParam.id" filterable placeholder="璇曞嵎" @change="getType">
+          <el-option v-for="item,index in examPaperList" :key="index" :value="item.id" :label="item.name" />
         </el-select>
       </el-form-item>
       <el-form-item>
         <el-button type="primary" @click="submitForm">鏌ヨ</el-button>
+        <el-button type="danger"  @click="handleExport" class="link-left">瀵煎嚭</el-button>
+        <el-button type="danger"  @click="downloadUrlFile" class="link-left">鎴浘</el-button>
       </el-form-item>
 
     </el-form>
@@ -135,7 +136,8 @@
       chartLoading: false,
       queryParam: {
         id: '',
-        type: 1
+        type: 1,
+        name: '鍒嗘暟缁熻'
       },
       admin: true
     };
@@ -149,13 +151,41 @@
       this.examPaperList = res.response;
       this.queryParam.id = this.examPaperList[0].id;
       this.queryParam.type = this.examPaperList[0].paperType;
+      this.queryParam.name = this.examPaperList[0].name;
       this.getChartData();
       this.observe();
     });
   },
   methods: {
-    getType(type) {
-      this.queryParam.type = type;
+    downloadUrlFile(url, fileName) {
+      // 鑾峰彇base64鍥剧墖
+      const chartImgUrl = this.myChart.getDataURL({
+          pixelRatio: 2,
+          backgroundColor: '#fff'
+      })
+      console.log(chartImgUrl)
+      // 涓嬭浇base64鍥剧墖
+      this.downloadUrlFile(chartImgUrl, 'ECharts 2鍊嶅浘')
+    },
+    handleExport(){
+      let that = this
+      let url ='/api/admin/examPaperAnswer/export?id=' +this.queryParam.id + '&type=' + this.queryParam.type
+      var x = new XMLHttpRequest();
+      x.open("GET", url, true);
+      x.responseType = "blob";
+      x.onload = function () {
+        var url = window.URL.createObjectURL(x.response);
+        var a = document.createElement("a");
+        a.href = url;
+        a.download = that.queryParam.name;
+        a.click();
+      };
+      x.send();
+    },
+    getType(val) {
+      const selectedItem = this.examPaperList.find(item => item.id === val);
+      this.queryParam.type = selectedItem.paperType;
+      this.queryParam.name = selectedItem.name;
       this.getChartData();
     },
     getChartData() {

--
Gitblit v1.8.0