From 64b26a4ea858d2cf9f0064fdb993f79c136b9911 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E9=9C=84?= Date: Mon, 23 Oct 2023 14:46:34 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=96=87=E6=A1=A3=E6=8B=86=E5=88=86-?= =?UTF-8?q?=E7=BC=96=E8=BE=91-=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../documentComparison/DocumentComparison.vue | 6 +- .../documentComparison/InitiateComparison.vue | 1 + .../documentSplit/DocumentSplitDetail.vue | 55 ++++++++++++++++++- 3 files changed, 56 insertions(+), 6 deletions(-) diff --git a/src/views/documentTool/documentComparison/DocumentComparison.vue b/src/views/documentTool/documentComparison/DocumentComparison.vue index 63a4e93c..bd4163fe 100644 --- a/src/views/documentTool/documentComparison/DocumentComparison.vue +++ b/src/views/documentTool/documentComparison/DocumentComparison.vue @@ -187,7 +187,7 @@ export default { clickEvent: 'subscribe', has: 'documentComparison:publishWithdraw', show: (record) => { - return (record.createBy === this.userInfo.username || this.administrators) && (!record.releaseState || record.releaseState === 'draft') + return (record.createBy === this.userInfo.id || this.administrators) && (!record.releaseState || record.releaseState === 'draft') } }, // 撤回 @@ -196,7 +196,7 @@ export default { clickEvent: 'subscribe', has: 'documentComparison:publishWithdraw', show: (record) => { - return (record.createBy === this.userInfo.username || this.administrators) && !(!record.releaseState || record.releaseState === 'draft') + return (record.createBy === this.userInfo.id || this.administrators) && !(!record.releaseState || record.releaseState === 'draft') } }, // 编辑 @@ -205,7 +205,7 @@ export default { clickEvent: 'edit', has: 'documentComparison:edit', show: (record) => { - // return (record.createBy === this.userInfo.username || this.administrators) && record.releaseState === 'draft' + // return (record.createBy === this.userInfo.id || this.administrators) && record.releaseState === 'draft' return true } }, diff --git a/src/views/documentTool/documentComparison/InitiateComparison.vue b/src/views/documentTool/documentComparison/InitiateComparison.vue index acaba581..87c67653 100644 --- a/src/views/documentTool/documentComparison/InitiateComparison.vue +++ b/src/views/documentTool/documentComparison/InitiateComparison.vue @@ -125,6 +125,7 @@
+ {{ $t('docTool.comparison.initiateDocumentComparison') }}
diff --git a/src/views/documentTool/documentSplit/DocumentSplitDetail.vue b/src/views/documentTool/documentSplit/DocumentSplitDetail.vue index e61dcf4c..43971cbc 100644 --- a/src/views/documentTool/documentSplit/DocumentSplitDetail.vue +++ b/src/views/documentTool/documentSplit/DocumentSplitDetail.vue @@ -89,7 +89,7 @@ type="primary" ghost v-has="'split:sarFileSplitItems:export'" - @click="handleExportXls($t('standardRegulationLibrary.domesticStandard.exportFileName'), 'zip')"> + @click="handleExportXls($t('standardRegulationLibrary.domesticStandard.exportFileName'), '.zip')"> {{ $t('export') }} @@ -195,7 +195,7 @@ import { import Search from '../../../components/customField/Search.vue' import { isHasPermission } from '../../../utils/hasPermission.js' import SplitDetailBatchEditDrawer from './modules/SplitDetailBatchEditDrawer.vue' -import { postAction } from '../../../api/manage' +import { downFile, postAction } from '../../../api/manage' export default { name: 'DocumentSplitDetail', @@ -564,7 +564,56 @@ export default { }) } }) - } + }, + /** + * 导出 + * @param fileName + * @param fileSuffix + */ + handleExportXls (fileName, fileSuffix = '.xls') { + if (!fileName || typeof fileName !== 'string') { + fileName = '导出文件' + } + const param = this.getQueryParams() + if (this.selectedRowKeys && this.selectedRowKeys.length > 0) { + param.idList = this.selectedRowKeys.join(',') + } + param.exportName = fileName + fileSuffix + param.parameter = this.infoId + // 加一个大的提示 + const modalLoading = this.$info({ + title: this.$t('tips'), + content: {this.$t('exportTip')} + , + keyboard: false + }) + // 把知道了这个按钮去掉 + this.$nextTick(() => { + document.getElementsByClassName('ant-modal-confirm-btns')[0].style = 'display:none' + }) + downFile(this.url.exportXlsUrl, param).then((data) => { + if (!data) { + this.$message.warning(this.$t('fileDownloadFail')) + return + } + if (typeof window.navigator.msSaveBlob !== 'undefined') { + window.navigator.msSaveBlob(new Blob([data], { type: 'application/vnd.ms-excel' }), fileName + fileSuffix) + } else { + const url = window.URL.createObjectURL(new Blob([data], { type: 'application/vnd.ms-excel' })) + const link = document.createElement('a') + link.style.display = 'none' + link.href = url + link.setAttribute('download', fileName + fileSuffix) + document.body.appendChild(link) + link.click() + document.body.removeChild(link) // 下载完成移除元素 + window.URL.revokeObjectURL(url) // 释放掉blob对象 + } + }).finally(() => { + // 销毁这个提示 + modalLoading.destroy() + }) + }, } }