From 9675f1491ef23c4c6f69cb83cbf6de3fd6dac61b Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期三, 26 七月 2023 17:40:58 +0800 Subject: [PATCH] 主数据导出 --- Source/UBCS-WEB/src/components/Master/MasterTransfer.vue | 103 +++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 82 insertions(+), 21 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue b/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue index 186a952..5af0fcb 100644 --- a/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue +++ b/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue @@ -18,13 +18,18 @@ :data="data"> </el-transfer> </div> + <div style="display: flex;justify-content: flex-end;"> + <el-button size="small" plain type="success" @click="handleExcel">纭畾</el-button> + <el-button size="small" plain >鍙栨秷</el-button> + </div> </el-dialog> </template> <script> +import {exportCode} from '@/api/GetItem' export default { name: "MasterTransfer", - props:['visible','tableHeadData','codeClassifyOid'], + props:['visible','tableHeadData','codeClassifyOid','tableData','selectRow'], data(){ return { data: [], @@ -39,17 +44,11 @@ option:{ title: '鏂囨。鏍囬', column: [{ - label: '澶氱骇琛ㄥご', + label: '涓绘暟鎹�', prop: 'header', children: [] }], - data: [{ - title1: "娴嬭瘯鏁版嵁1", - title2: "娴嬭瘯鏁版嵁2" - }, { - title1: "娴嬭瘯鏁版嵁2", - title2: "娴嬭瘯鏁版嵁2" - }] + data: [] } }; }, @@ -61,7 +60,9 @@ //琛ㄥご鏁版嵁 鐢ㄦ潵娓叉煋绌挎妗� tableHeadData:{ handler(newval,oldval){ + console.log(newval) if(newval){ + //excel琛ㄥご鏁版嵁杞崲 this.tableHeadFindData=newval.map(obj => obj.label); this.tableHeadFindData.forEach((city, index) => { this.data.push({ @@ -69,13 +70,31 @@ key: index, }); }); - return this.data; + //excel琛ㄦ牸鏁版嵁杞崲 + this.option.column[0].children=newval.map(obj => { + return { + label: obj.label, + prop: obj.prop + } + }) } } }, + tableData(){ + // 灏嗗�奸噷闈㈢殑true鎴杅alse鏀瑰彉涓烘槸鎴栧惁 + this.option.data = this.tableData.map(obj => { + for (let prop in obj) { + if (obj[prop] === "true") { + obj[prop] = "鏄�"; + } else if (obj[prop] === "false") { + obj[prop] = "鍚�"; + } + } + return obj; + }); + }, codeClassifyOid:{ handler(newval,oldval){ - console.log('daochu',newval,oldval) } } }, @@ -83,23 +102,65 @@ }, mounted() { - this.ExportRend() }, methods:{ //鍏抽棴椤甸潰 recoverPage(){ this.$emit('update:visible', false); }, - //瀵煎嚭琛ㄦ牸鏁版嵁杞崲琛ㄥご淇℃伅 - ExportRend(){ - this.tableExportData=this.tableHeadData.map(obj => { - return { - label: obj.label, - prop: obj.prop + handleExcel(){ + // this.$Export.excel({ + // title: this.option.title, + // columns: this.option.column, + // data: this.option.data + // }); + if(this.radio === 0){ + if(this.selectRow.length<=0){ + this.$message.warning('璇烽�夋嫨瑕佸鍑虹殑妯℃澘') + }else { + //宸查�夋嫨澶氶�� + const selectList=[] + //宸查�夋嫨灞炴�� + let exportArr={} + const ids = this.selectRow.map(item => item.oid).join(',') + this.selectRow.forEach(item=>{ + selectList.push( + item.oid + ) + }) + this.value.map(index => this.tableHeadData[index].prop).forEach((item, index) => { + exportArr[`attrIdIndexMap[${index}]`] = item + }) + exportCode({codeClassifyOid:this.codeClassifyOid,'conditionMap[oid]':ids,...exportArr}).then(res=>{ + console.log('res',res) + const filename = '涓嬭浇.xlsx'; // 涓嬭浇鐨勬枃浠跺悕 + const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' }); + const a = document.createElement('a'); + const url = window.URL.createObjectURL(blob); + a.href = url; + a.download = filename; + a.style.display = 'none'; + document.body.appendChild(a); + a.click(); + document.body.removeChild(a); + window.URL.revokeObjectURL(url); + + // const filename = '涓嬭浇.xlsx'; // 涓嬭浇鐨勬枃浠跺悕 + // const blob = new Blob([response.data], { type: 'application/vnd.ms-excel' }); + // + // const url = window.URL.createObjectURL(blob); + // const link = document.createElement('a'); + // link.href = url; + // link.setAttribute('download', filename); + // document.body.appendChild(link); + // link.click(); + // document.body.removeChild(link); + // URL.revokeObjectURL(url); + }) + } - }) - console.log(this.tableExportData) - } + }; + }, } } </script> -- Gitblit v1.9.3