From 9ab8a4adc0167c594724fbc7bed1fde7022f4b71 Mon Sep 17 00:00:00 2001 From: dai <851733175@qq.com> Date: Mon, 15 Aug 2022 11:14:30 +0800 Subject: [PATCH 01/11] =?UTF-8?q?=E6=81=A2=E5=A4=8D=E6=8A=A5=E8=A1=A8?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/modules/cpts/baobiao/index.vue | 138 +++++++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100644 src/views/modules/cpts/baobiao/index.vue diff --git a/src/views/modules/cpts/baobiao/index.vue b/src/views/modules/cpts/baobiao/index.vue new file mode 100644 index 000000000..4408cec24 --- /dev/null +++ b/src/views/modules/cpts/baobiao/index.vue @@ -0,0 +1,138 @@ + + + + + From 9682bf4dc0cdd990836175eee8eb154fae1a9ae4 Mon Sep 17 00:00:00 2001 From: dai <851733175@qq.com> Date: Mon, 15 Aug 2022 11:18:46 +0800 Subject: [PATCH 02/11] =?UTF-8?q?=E6=81=A2=E5=A4=8D=E9=A1=B5=E9=9D=A22?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/base/community/buildTable.vue | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/views/modules/base/community/buildTable.vue b/src/views/modules/base/community/buildTable.vue index 486dc9ec7..53dbad392 100644 --- a/src/views/modules/base/community/buildTable.vue +++ b/src/views/modules/base/community/buildTable.vue @@ -57,6 +57,9 @@ size="small" :disabled="yihuyidangDisabled" @click="handleExportYihuyidang()">导出一户一档 + 智能填报
@@ -194,6 +197,7 @@ @dialogOk="addFormOk"> +
@@ -204,6 +208,7 @@ import BuildForm from './buildForm' import { requestPost } from "@/js/dai/request"; import { mapGetters } from 'vuex' import { Loading } from 'element-ui' // 引入Loading服务 +import baobiao from "@/views/modules/cpts/baobiao"; let loading // 加载动画 export default { @@ -233,6 +238,7 @@ export default { } }, components: { + baobiao, BuildForm }, async mounted () { @@ -248,6 +254,28 @@ export default { ...mapGetters(['clientHeight', 'iframeHeight']) }, methods: { + reportForm(){ + let paramMap = { + pageSize: this.pageSize, + pageNo: this.pageNo, + level: this.agencyObj.level, + id: this.agencyObj.id, + ownerName: this.ownerName, + ownerPhone: this.ownerPhone, + rentFlag: this.rentFlag, + purpose: this.purpose, + remark: this.remark, + sortType: this.sortType, + updateStartDate: this.updateStartDate, + updateEndDate: this.updateEndDate, + }; + this.$refs.baobiao.init({ + elseParams: { + categoryKeys:['house_info'], categoryKey: 'house_info', paramMap + } + }) + }, + indexMethod (index) { return index + 1; }, From 1a1d8b8d4708eb0baeb3a10eae50a623cac84bce Mon Sep 17 00:00:00 2001 From: dai <851733175@qq.com> Date: Mon, 15 Aug 2022 11:19:35 +0800 Subject: [PATCH 03/11] =?UTF-8?q?=E6=81=A2=E5=A4=8D=E9=A1=B5=E9=9D=A23?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/base/community/roomTable.vue | 963 +++++++++--------- 1 file changed, 486 insertions(+), 477 deletions(-) diff --git a/src/views/modules/base/community/roomTable.vue b/src/views/modules/base/community/roomTable.vue index 8be48e23d..15c62a15e 100644 --- a/src/views/modules/base/community/roomTable.vue +++ b/src/views/modules/base/community/roomTable.vue @@ -1,222 +1,246 @@ - From a567f592c050a7fa5704cc62a84e3f043bec0dc0 Mon Sep 17 00:00:00 2001 From: dai <851733175@qq.com> Date: Wed, 17 Aug 2022 17:18:26 +0800 Subject: [PATCH 10/11] =?UTF-8?q?=E5=8F=88=E6=94=B9=E4=BA=86=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/modules/cpts/baobiao/index.vue | 44 ++++++++++++++++++++++-- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/src/views/modules/cpts/baobiao/index.vue b/src/views/modules/cpts/baobiao/index.vue index f068168b1..d7adbdb5a 100644 --- a/src/views/modules/cpts/baobiao/index.vue +++ b/src/views/modules/cpts/baobiao/index.vue @@ -43,6 +43,7 @@ import { Loading } from "element-ui"; // 引入Loading服务 import { requestPost, requestGet } from "@/js/dai/request"; import { mapGetters } from "vuex"; +import axios from "axios"; export default { data() { @@ -130,9 +131,13 @@ export default { if (code === 0) { let token = localStorage.getItem("token"); let prefix = window.SITE_CONFIG["apiURL"].slice(0, -4); - window.open( - `${prefix}/jmreport/view/${reportId}?token=${token}¶mKey=${data.paramKey}` - ); + if (item.isList) { + this.exportAll(reportId, data.paramKey); + } else { + window.open( + `${prefix}/jmreport/view/${reportId}?token=${token}¶mKey=${data.paramKey}` + ); + } // this.visible = false; this.$emit("afterFillIn"); @@ -140,6 +145,39 @@ export default { this.$message.error(msg); } }, + + async exportAll(reportId, paramKey) { + const url = "/oper/customize/icCustomerReport/batch-export"; + axios({ + url: window.SITE_CONFIG["apiURL"] + url, + method: "post", + data: { + reportId, + paramKey, + }, + responseType: "blob", + }) + .then((res) => { + let fileName = window.decodeURI( + res.headers["content-disposition"].split(";")[1].split("=")[1] + ); + console.log("filename", fileName); + let blob = new Blob([res.data], { type: "application/zip" }); + var url = window.URL.createObjectURL(blob); + var aLink = document.createElement("a"); + aLink.style.display = "none"; + aLink.href = url; + aLink.setAttribute("download", fileName); + document.body.appendChild(aLink); + aLink.click(); + document.body.removeChild(aLink); //下载完成移除元素 + window.URL.revokeObjectURL(url); //释放掉blob对象 + }) + .catch((err) => { + console.log("批量导出失败", err); + return this.$message.error("网络错误"); + }); + }, }, }; From 91ac5a34253f083c03bf38d89b6cbe160b5dc154 Mon Sep 17 00:00:00 2001 From: dai <851733175@qq.com> Date: Wed, 17 Aug 2022 17:44:54 +0800 Subject: [PATCH 11/11] =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E5=8F=88=E8=AF=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/modules/cpts/baobiao/index.vue | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/views/modules/cpts/baobiao/index.vue b/src/views/modules/cpts/baobiao/index.vue index d7adbdb5a..95d3f21ac 100644 --- a/src/views/modules/cpts/baobiao/index.vue +++ b/src/views/modules/cpts/baobiao/index.vue @@ -119,7 +119,7 @@ export default { }, async fillIn(item) { - const { reportId } = item; + const { reportId, reportName } = item; const url = "/oper/customize/icCustomerReport/preview"; const parmas = { ...this.elseParams, @@ -132,7 +132,7 @@ export default { let token = localStorage.getItem("token"); let prefix = window.SITE_CONFIG["apiURL"].slice(0, -4); if (item.isList) { - this.exportAll(reportId, data.paramKey); + this.exportAll(reportId, data.paramKey, reportName); } else { window.open( `${prefix}/jmreport/view/${reportId}?token=${token}¶mKey=${data.paramKey}` @@ -146,7 +146,7 @@ export default { } }, - async exportAll(reportId, paramKey) { + async exportAll(reportId, paramKey, reportName) { const url = "/oper/customize/icCustomerReport/batch-export"; axios({ url: window.SITE_CONFIG["apiURL"] + url, @@ -158,9 +158,11 @@ export default { responseType: "blob", }) .then((res) => { - let fileName = window.decodeURI( - res.headers["content-disposition"].split(";")[1].split("=")[1] - ); + console.log("批量导出接口返回", res); + // let fileName = window.decodeURI( + // res.headers["content-disposition"].split(";")[1].split("=")[1] + // ); + let fileName = reportName; console.log("filename", fileName); let blob = new Blob([res.data], { type: "application/zip" }); var url = window.URL.createObjectURL(blob);