From ded6e8d2312e139e8ce770c7f1d5830bf2db4af6 Mon Sep 17 00:00:00 2001 From: xiejun <xj@2023> Date: 星期三, 19 七月 2023 11:39:41 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS-WEB/src/components/Master/MasterTransfer.vue | 86 ++++++++++++++++++++++++++++++++---------- 1 files changed, 65 insertions(+), 21 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue b/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue index ccfc623..9341b92 100644 --- a/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue +++ b/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue @@ -1,6 +1,8 @@ <template> <el-dialog :visible.sync="dialogPush" append-to-body :close-on-click-modal="false" @close="recoverPage" title="瀵煎嚭"> <div style="margin-bottom: 10px"> + <el-button type="success" + @click="handleExcel">涓嬭浇 澶氱骇琛ㄥごexcel</el-button> <el-radio-group v-model="radio"> <el-radio :label="0">閫夋嫨</el-radio> <el-radio :label="1">鍏ㄩ儴</el-radio> @@ -9,11 +11,12 @@ </div> <div style="text-align: center"> <el-transfer - style="text-align: left; display: inline-block" + style="text-align: left; display: inline-block;height: 400px" filterable :filter-method="filterMethod" - filter-placeholder="璇疯緭鍏ュ煄甯傛嫾闊�" + filter-placeholder="鍏抽敭璇嶆悳绱�" v-model="value" + :titles="['鏈�夊睘鎬�', '宸查�夊睘鎬�']" :data="data"> </el-transfer> </div> @@ -23,28 +26,27 @@ <script> export default { name: "MasterTransfer", - props:['visible','tableHeadData'], + props:['visible','tableHeadData','codeClassifyOid','tableData'], data(){ - const generateData = () => { - const data = []; - const cities = ['涓婃捣', '鍖椾含', '骞垮窞', '娣卞湷', '鍗椾含', '瑗垮畨', '鎴愰兘']; - cities.forEach((city, index) => { - data.push({ - label: city, - key: index, - }); - }); - return data; - }; return { - data: generateData(), + data: [], value: [], filterMethod(query, item) { return item.label.indexOf(query) > -1; }, dialogPush:this.visible, radio:0, - tableHeadFindData:[] + tableHeadFindData:[], + tableExportData:[], + option:{ + title: '鏂囨。鏍囬', + column: [{ + label: '澶氱骇琛ㄥご', + prop: 'header', + children: [] + }], + data: [] + } }; }, watch:{ @@ -52,22 +54,64 @@ visible (){ this.dialogPush = this.visible; }, - tableHeadData(){ - this.tableHeadFindData=this.tableHeadData; - + //琛ㄥご鏁版嵁 鐢ㄦ潵娓叉煋绌挎妗� + 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({ + label: city, + key: index, + }); + }); + //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){ + } } }, computed:{ }, mounted() { - console.log(this.tableHeadData) }, methods:{ //鍏抽棴椤甸潰 recoverPage(){ this.$emit('update:visible', false); - } + }, + handleExcel(){ + this.$Export.excel({ + title: this.option.title, + columns: this.option.column, + data: this.option.data + }); + }, } } </script> -- Gitblit v1.9.3