From 18715a9d20518abb1374408007759ab2988d1150 Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期二, 08 十月 2024 11:58:35 +0800 Subject: [PATCH] 页签克隆 --- Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue | 197 ++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 153 insertions(+), 44 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue index bba8a82..961577c 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/index.vue @@ -21,6 +21,14 @@ </el-button> </template> + <template slot="menu" slot-scope="scope"> + <el-button icon="el-icon-edit" size="small" type="text" @click="editBtnClick(scope.row)">缂栬緫 + </el-button> + <el-button icon="el-icon-delete" size="small" type="text" @click="rowDeleteHandler(scope.row)">鍒犻櫎 + </el-button> + <el-button icon="el-icon-document-copy" size="small" type="text" @click="rowCloneHandler(scope.row)">鍏嬮殕</el-button> + </template> + <!-- eventKey浠ュ強eventValue鏄剧ず鍖哄煙 --> <template slot="bottomValueForm" slot-scope="scope"> <avue-crud @@ -72,7 +80,7 @@ </el-button> <el-button plain size="mini" type="primary">璋冩暣涓轰笅绾ф寜閽�</el-button> <el-button plain size="mini" type="primary">璋冩暣涓轰笂绾ф寜閽�</el-button> - <el-button plain size="mini" type="primary">澶嶅埗鍒板叾浠栫粍浠�</el-button> + <el-button plain size="mini" type="primary" @click="cloneClickBtnHandler">澶嶅埗鍒板叾浠栫粍浠�</el-button> </div> </el-header> <el-container> @@ -188,6 +196,7 @@ </el-container> </el-dialog> <action-dialog ref="actionDialog" @updataAction="actionSaveHandler"></action-dialog> + <clone-dialog ref="cloneDialog"></clone-dialog> </div> </template> @@ -201,9 +210,12 @@ getQTInfoDatasByPage, getTabButtons, addTapButton, - updateTapButton, getTabByContextIdAndType + updateTapButton, + getLinkDatasByPage, + addPageDefination } from "@/api/UI/uiDefine"; import actionDialog from '@/views/modelingMenu/ui/uiDefine/rightRegion/bottomTable/components/action'; +import cloneDialog from "@/views/modelingMenu/ui/uiDefine/rightRegion/cloneDialog"; export default { props: { @@ -218,12 +230,13 @@ } }, components: { - actionDialog + actionDialog, + cloneDialog }, name: "index", data() { return { - paramsForm:{}, + paramsForm: {}, eventOption: { ...basicOption, addBtn: false, @@ -344,6 +357,8 @@ addBtn: false, index: true, calcHeight: -30, + editBtn: false, + delBtn: false, column: [ { label: '鍚嶇О', @@ -415,7 +430,10 @@ return val; }, change: (val) => { - console.log(val); + const list = ['showType' ,'linkType' ,'templateId', 'SubUILayout' , 'searchObjType' ,'queryTemplateName', 'controlPath' ,'expandCols', 'rootContent', 'showAbs' ,'showLinkAbs' ,'separator'] + list.forEach(item => { + this.form[item] = ""; + }) const searchTarger = this.option.column.find(item => item.prop === 'searchTarger'); // 鑾峰彇鎼滅储绫诲瀷閰嶇疆椤� searchTarger.display = true; // 鍒囨崲榛樿灞曠ず鎼滅储绫诲瀷 // 妯℃澘绫诲瀷涓鸿〃鏍� @@ -442,7 +460,7 @@ dicData: [ { label: '涓嶆樉绀�', - value: '1' + value: '3' }, { label: '鏄剧ず瑙掕壊', @@ -450,7 +468,7 @@ }, { label: '鏄剧ずFolder', - value: '3', + value: '1', }, ], }, @@ -480,6 +498,11 @@ const obj = this.option.group[0].column.find(item => item.prop === 'linkType'); obj.display = val.value !== '1'; } + // 鍒囨崲娓呯┖妯℃澘绫诲瀷 + const list = ['showType', 'linkType', 'templateId', 'SubUILayout', 'queryTemplateName', 'searchObjType']; + list.forEach(item => { + this.form[item] = ''; + }) } }, { @@ -504,6 +527,13 @@ label: 'name', value: 'name' }, + rules: [ + { + required: true, + message: '璇烽�夋嫨鍐呭', + trigger: 'change' + } + ], children: { border: true, column: [{ @@ -516,12 +546,18 @@ prop: 'label' }], }, + change: (val) => { + const list = ['linkType', 'templateId', 'SubUILayout', 'queryTemplateName', 'searchObjType']; + list.forEach(item => { + this.form[item] = ''; + }) + }, onLoad: ({page, value, data}, callback) => { //page鍒嗛〉 // 涓嶇鏄悳绱� 杩樻槸棣栨鍔犺浇閮戒細瑙﹀彂page 鎵�浠ュ彧闇�瑕佹嬁page瀛樺湪涓庡惁杩涜璇锋眰灏卞彲浠� 濡傛灉鍐嶅幓鍒ゆ柇data鎼滅储 鎴栬�卾alue鍒濇鍔犺浇灏变細閲嶅璇锋眰 if (page) { const params = { - "conditionMap[filterInputValue]": value ? value.name : '' + "conditionMap[filterInputValue]": data ? data.name : '' }; getBtmDatasByPage(page.currentPage, page.pageSize, params).then(res => { callback({ @@ -538,8 +574,8 @@ type: 'table', display: false, props: { - label: 'viName', - value: 'viName' + label: 'name', + value: 'name' }, children: { border: true, @@ -547,19 +583,18 @@ label: '鍚嶇О', search: true, searchSpan: 24, - prop: 'viName' + prop: 'name' }, { - label: '绫诲瀷', - prop: 'viType' + label: '鏍囩', + prop: 'tag' }], }, onLoad: ({page, value, data}, callback) => { if (page) { const params = { "conditionMap[selectBtmType]": this.form.showType, - "conditionMap[filterInputValue]": data ? data.viName : '', }; - getPortalVIDatasByPage(page.currentPage, page.pageSize, params).then(res => { + getLinkDatasByPage(page.currentPage, page.pageSize, params).then(res => { console.log(res); callback({ total: res.data.total, @@ -571,9 +606,16 @@ }, { label: '閫夋嫨妯℃澘', - prop: 'showTypea', + prop: 'templateId', display: false, type: 'table', + rules: [ + { + required: true, + message: '璇烽�夋嫨妯℃澘', + trigger: 'submit' + } + ], props: { label: 'viName', value: 'viName' @@ -608,7 +650,7 @@ }, { label: 'UI瀹氫箟', - prop: 'UI', + prop: 'SubUILayout', type: 'table', display: false, props: { @@ -646,6 +688,7 @@ label: '鏌ヨ绫诲瀷', prop: 'searchType', display: false, + value: '1', type: 'radio', span: 24, dicData: [ @@ -684,10 +727,10 @@ onLoad: ({page, value, data}, callback) => { if (page) { const params = { - "conditionMap[selectBtmType]": this.form.showType, - "conditionMap[filterInputValue]": data ? data.qtName : '', + "conditionMap[selectBtmType]": null, // cs绔湁闂 鏆傛椂涓嶅睍绀哄唴瀹� }; - getQTInfoDatasByPage(page.currentPage, page.pageSize, params).then(res => { + getLinkDatasByPage(page.currentPage, page.pageSize, params).then(res => { + console.log(res); callback({ total: res.data.total, data: res.data.data @@ -698,7 +741,7 @@ }, { label: '鏌ヨ妯℃澘', - prop: 'showTypes', + prop: 'queryTemplateName', type: 'table', display: false, props: { @@ -734,40 +777,35 @@ }, { label: '鎺у埗璺緞', - prop: 'kzlj', + prop: 'controlPath', display: false, type: 'textarea', + span: 24, rows: 3 }, { - label: '鏍硅妭鐐规樉绀鸿〃杈惧紡', - prop: 'genjiedian', + label: '鏍戠粨鏋勫睍寮�鍒�', + prop: 'expandCols', + labelWidth: 110, display: false, - labelWidth: 135, - span: 24 - }, - { - label: '鏍戣妭鐐规樉绀鸿〃杈惧紡', - prop: 'shujiedian', - display: false, - labelWidth: 135, - span: 24 + span: 12 }, { label: '鍙傜収鏍戣缃�', - prop: 'canzhaoshu', + prop: 'showLinkAbs', display: false, }, { label: '鍒嗛殧绗�', - prop: 'fgf', + prop: 'separator', display: false, }, { label: '灞曞紑鏂瑰紡', - prop: 'zkfs', + prop: 'expandMode', display: false, type: 'radio', + value:'1', dicData: [ { label: '閫愮骇灞曞紑', @@ -775,9 +813,23 @@ }, { label: '鍏ㄩ儴灞曞紑', - value: '2' + value: '0' } ] + }, + { + label: '鏍硅妭鐐规樉绀鸿〃杈惧紡', + prop: 'rootContent', + display: false, + labelWidth: 135, + span: 12 + }, + { + label: '鏍戣妭鐐规樉绀鸿〃杈惧紡', + prop: 'showAbs', + display: false, + labelWidth: 135, + span: 12 }, ] }, @@ -873,6 +925,48 @@ this.$refs.crud.rowAdd(); }, + // 淇敼 + editBtnClick(row) { + console.log(row); + this.eventData = []; + if (row.eventKey && row.eventValue) { + let keys = row.eventKey.split(','); + let values = row.eventValue.split(','); + + this.eventData = keys.map((key, index) => { + return { + index: this.eventData.length, + eventKey: key.trim(), + eventValue: values[index], + $cellEdit: true + }; + }); + } + this.$refs.crud.rowEdit(row); + }, + + // 淇濆瓨 + rowSaveHandler(row,done,loading){ + if(row.templateType === '6'){ + row.SubUIObjType = row.showType; + row.showType = ""; + } + console.log(this.sourceData); + const params = { + ...row, + tabPageOId:this.sourceData.plOId + } + addPageDefination(params).then(res => { + console.log(res); + if(res.data.code === 200){ + this.$message.success(res.data.obj); + done() + } + }).catch(err=> { + loading(); + }) + }, + // 瀵硅瘽妗嗚〃鏍艰鐐瑰嚮 formDataRowClick(row) { this.formDataRow = row; @@ -924,7 +1018,7 @@ // 妯℃澘绫诲瀷涓鸿〃鏍� templateTypeTable(val) { if (!val) return; - this.updateDisplay(val, ['showType', 'showTypea', 'showTypes']); + this.updateDisplay(val, ['showType', 'templateId', 'queryTemplateName']); }, // 妯℃澘绫诲瀷涓鸿嚜瀹氫箟妯℃澘 @@ -932,19 +1026,19 @@ if (!val) return; const searchTarger = this.option.column.find(item => item.prop === 'searchTarger'); // 鑾峰彇鎼滅储绫诲瀷閰嶇疆椤� searchTarger.display = false; // 涓嶅睍绀烘悳绱㈢被鍨� - this.updateDisplay(val, ['kzlj']); + this.updateDisplay(val, ['controlPath']); }, // 妯℃澘绫诲瀷涓烘爲琛� templateTypeTreeTable(val) { if (!val) return; - this.updateDisplay(val, ['showType', 'showTypea', 'showTypes', 'zkl', 'zkfs']); + this.updateDisplay(val, ['showType', 'templateId', 'queryTemplateName', 'expandCols', 'zkfs']); }, // 妯℃澘绫诲瀷涓鸿〃鍗� templateTypeForm(val) { if (!val) return; - this.updateDisplay(val, ['showType', 'showTypea', 'showTypes']); + this.updateDisplay(val, ['showType', 'templateId', 'queryTemplateName']); }, // 妯℃澘绫诲瀷涓烘爲 @@ -952,7 +1046,7 @@ if (!val) return; const searchTarger = this.option.column.find(item => item.prop === 'searchTarger'); // 鑾峰彇鎼滅储绫诲瀷閰嶇疆椤� searchTarger.display = false; // 涓嶅睍绀烘悳绱㈢被鍨� - this.updateDisplay(val, ['showType', 'showTypes', 'genjiedian', 'shujiedian', 'canzhaoshu', 'fgf', 'zkfs', 'linkType']); + this.updateDisplay(val, ['showType', 'queryTemplateName', 'rootContent', 'showAbs', 'showLinkAbs', 'separator', 'expandMode', 'linkType']); }, // 妯℃澘绫诲瀷涓篣I瀹氫箟 @@ -960,7 +1054,7 @@ if (!val) return; const searchTarger = this.option.column.find(item => item.prop === 'searchTarger'); // 鑾峰彇鎼滅储绫诲瀷閰嶇疆椤� searchTarger.display = false; // 涓嶅睍绀烘悳绱㈢被鍨� - this.updateDisplay(val, ['showType', 'UI', 'searchType', 'searchObjType', 'showTypes']); + this.updateDisplay(val, ['showType', 'SubUILayout', 'searchType', 'searchObjType', 'queryTemplateName']); }, // 鏌ユ壘鏁扮粍涓璞$储寮� @@ -1015,6 +1109,7 @@ this.treeData = [{ label: this.selectList[0].name, oId: 'parentNode', + disabled: true, children: data }]; this.treeLoading = false; @@ -1169,6 +1264,17 @@ }); }, + cloneClickBtnHandler(){ + if (func.isEmptyObject(this.nodeTreeRow)) { + this.$message.error('璇烽�夋嫨鑺傜偣杩涜澶嶅埗'); + return; + } + if (this.nodeTreeRow.oId === "parentNode") { + this.$message.error('椤跺眰鑺傜偣涓嶅厑璁稿鍒�'); + return; + } + this.$refs.cloneDialog.openDialog(this.nodeTreeRow); + }, // 閫夋嫨action actionFoucus() { this.$refs.actionDialog.btnActionVisible = true; @@ -1178,7 +1284,10 @@ actionSaveHandler(val) { this.$set(this.basicForm, 'actionName', val.plName); this.$set(this.basicForm, 'actionOId', val.plOId); - } + }, + rowCloneHandler(row) { + this.$refs.cloneDialog.openDialog(row); + }, } } </script> -- Gitblit v1.9.3