提交 5c6f32a9 authored 作者: Ma's avatar Ma

提交代码 更改生成本季度报告导出接口

上级 6cc17ea4
......@@ -14,19 +14,22 @@ const mimeMap = {
// const baseUrl = window.baseURL ? (process.env.NODE_ENV === 'development' ? window.baseURL.devUrl : window.baseURL.prodUrl) : process.env.VUE_APP_BASE_API;
let loading; // loading;
export function downLoadWps(filename) {
export function downLoadWps(filename, cycleId, token) {
loading = ElLoading.service({
lock: true,
text: 'Loading',
background: 'rgba(0, 0, 0, 0.7)'
})
axios({
method: 'get',
url: 'http://222.75.116.199:9094/indexImport/quarterlyReport',
method: 'post',
url: `http://192.168.102.183:9095/export/exportReport/${cycleId}`,
// url: 'http://222.75.116.199:9094/indexImport/quarterlyReport',
responseType: 'blob',
// headers: { 'Authorization': 'Bearer ' + getToken() }
headers: { 'Authorization': 'Bearer ' + token }
}).then(res => {
resolveBlob(res, mimeMap.wps,filename)
resolveBlob(res, mimeMap.wps, filename)
}).catch(err=>{
console.log('downLoadWps','下载失败',err);
})
}
......@@ -52,9 +55,9 @@ export function resolveBlob(res, mimeType, fileName) {
// //从response的headers中获取filename, 后端response.setHeader("Content-disposition", "attachment; filename=xxxx.docx") 设置的文件名;
var patt = new RegExp('filename=([^;]+\\.[^\\.;]+);*');
var contentDisposition = decodeURI(res.headers['content-disposition']);
if(fileName){
if (fileName) {
console.log('有文件名');
}else if (contentDisposition == undefined || contentDisposition == 'undefined') {
} else if (contentDisposition == undefined || contentDisposition == 'undefined') {
console.log('文件名未获取到');
} else {
var result = patt.exec(contentDisposition)
......
......@@ -2,7 +2,7 @@
<template>
<div class="app-head-warpper">
<div class="header-bg">
<a class="generate" @click="downloadFile" v-if="curDataType == '2022Two'">
<a class="generate" @click="getCycleId" v-if="curDataType == '2022Two'">
<img src="@/assets/img/generate.png" alt=""> 生成本季度报告
</a>
</div>
......@@ -113,33 +113,49 @@ export default defineComponent({
{
label: "2021年第二季度",
value: "typeTwo",
year: '2021',
quarter: '2',
disabed: false,
},
{
label: "2021年第三季度",
value: "typeThree",
year: '2021',
quarter: '3',
disabed: false,
},
{
label: "2021年第四季度",
value: "typeFour",
year: '2021',
quarter: '4',
disabed: false,
},
{
label: "2022年第一季度",
value: "2022One",
year: '2022',
quarter: '1',
disabed: false,
},
{
label: "2022年第二季度",
value: "2022Two",
year: '2022',
quarter: '2',
disabed: false,
},
],
curYearIndex: 4,
token: '',
};
},
created() {
// 获取token
const url = window.location.href;
const str = url.split('?token=')[1] || '';
const token = str.split(this.$route.href)[0];
this.token = token;
this.years.map((item, index) => {
if (index == this.curYearIndex) {
this.$store.commit("SET_CUR_DATA_TYPE", item.value);
......@@ -187,9 +203,24 @@ export default defineComponent({
},
methods: {
// 查询当前选择年月日对应的周期id
getCycleId() {
const activeData = this.years.filter(item => item.value == this.curDataType)[0];
axios({
method: 'get',
url: `http://192.168.102.183:9095/calculation/getCycleIdByYearAndQuarter/${activeData.year}/${activeData.quarter}`,
headers: { 'Authorization': 'Bearer ' + this.token }
}).then(res => {
this.downloadFile(res.data.data);
})
},
// 文件下载 流文件下载
downloadFile() {
downLoadWps('全省军民融合创新示范建设情况分析.wps');
downloadFile(cycleId) {
if(cycleId){
downLoadWps('全省军民融合创新示范建设情况分析.wps', cycleId,this.token);
}else{
console.log(cycleId,'周期id不存在');
}
},
init() {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论