From 22b45a79b2ceab7625e0fe248458c398cc26110d Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期一, 25 九月 2023 12:53:59 +0800 Subject: [PATCH] modified: src/components/view/Processingproducts.vue modified: src/components/view/rawInsDetail.vue modified: src/components/view/sale.vue --- src/components/view/sale.vue | 65 +++++++++++++++++++++++--------- 1 files changed, 46 insertions(+), 19 deletions(-) diff --git a/src/components/view/sale.vue b/src/components/view/sale.vue index 72e2de9..63fe12f 100644 --- a/src/components/view/sale.vue +++ b/src/components/view/sale.vue @@ -119,7 +119,7 @@ :icon="isSync ? 'el-icon-loading' : 'el-icon-refresh'">鍚屾</el-button> <el-button type="primary" icon="el-icon-plus" @click="openAddDia">鏂板</el-button> <el-button icon="el-icon-delete" @click="delSales">鍒犻櫎</el-button> - <el-button icon="el-icon-download">瀵煎嚭</el-button> + <el-button icon="el-icon-download" @click="exportSale">瀵煎嚭</el-button> </el-col> </el-row> </div> @@ -160,7 +160,7 @@ <el-tag effect="dark" size="mini" style="font-size: 8px;">{{ scope.row.order_type }}</el-tag> </template> </el-table-column> - <el-table-column prop="code" label="鍚堝悓缂栧彿" width="220"> + <el-table-column prop="code" label="鍚堝悓缂栧彿" > </el-table-column> <el-table-column prop="name" label="宸ョ▼鍚嶇О" width="120"> </el-table-column> @@ -174,10 +174,10 @@ <template slot-scope="scope"> <span style="color: #34BD66;" v-if="scope.row.type == 1">閫氳繃</span> <span style="color: #E84738;" v-else-if="scope.row.type == 0">涓嶉�氳繃</span> - <span v-else>{{ null }}</span> + <span style="color: #ff9900;" v-else>鏈鏍�</span> </template> </el-table-column> - <el-table-column label="鎿嶄綔" width="220"> + <el-table-column label="鎿嶄綔" width="250"> <template slot-scope="scope"> <span class="table_do" @click="changeShowDetail(scope.row)"> 鏌ョ湅璇︽儏 </span> <span class="table_do" @click="downloadFile(scope.row)"> 涓嬭浇闄勪欢 </span> @@ -456,24 +456,51 @@ this.axios.post(this.$api.url.saleDownload, { id: row.id }).then(res => { - // console.log(res.data); - // 寰幆閬嶅巻姣忎釜鏂囦欢骞跺垱寤轰笅杞介摼鎺� - for (let index = 0; index < res.data.length; index++) { - const element = res.data[index]; - // 鍒涘缓涓�涓摼鎺ュ厓绱� - var a = document.createElement('a'); + const fileUrls = []; // 鏂囦欢鐨剈rls + res.data.forEach(item=>{ + let url=baseIp+item + fileUrls.push(url) + }) + const downloadFile = (url, fileName) => { + const link = document.createElement('a'); + link.href = url; + link.download = fileName; + // link.style.display = 'none'; + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + }; - // 璁剧疆閾炬帴鍏冪礌鐨刪ref灞炴�т负鏂囦欢鐨刄RL - a.href = baseIp+element; - - // // 璁剧疆閾炬帴鍏冪礌鐨刣ownload灞炴�т负鏂囦欢鍚� - // a.download = row.name+"闄勪欢"+(index+1); - - // 妯℃嫙鐐瑰嚮閾炬帴浠ヨЕ鍙戜笅杞� - a.click(); - } + console.log(fileUrls); + fileUrls.forEach((url, index) => { + let s=url.split(".") + const fileName = row.name+`闄勪欢(${index + 1}).`+s[s.length-1]; + downloadFile(url, fileName); + }); }) }, + //閿�鍞鍗曞鍑� + exportSale(){ + this.$axios.post(this.$api.url.exportSale,{ + delTime: this.search.delTime, + name: this.search.name, + type: this.search.type, + orderNumber: this.search.code + },{responseType:'blob',headers:{"Content-Type":"application/json"}}).then((res)=>{ + const result = res; + var nameList = result.headers['content-disposition']; + nameList = decodeURI(nameList); + var fileName = nameList.split('=')[1]; + const blob = new Blob([result.data,{type: 'application/vnd.ms-excel'}]); + const link = document.createElement('a'); + link.download = fileName; + const URL = window.URL || window.webkitURL; + link.href= URL.createObjectURL(blob); + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + }).catch() + }, closeDialog() { this.addData = { orderNumber: null, -- Gitblit v1.9.3