From b4f0454f9d0e2fa885a8659a4239d426db48a83a Mon Sep 17 00:00:00 2001 From: wangting <wangting@vci-tech.com> Date: 星期一, 30 十二月 2024 18:35:36 +0800 Subject: [PATCH] Action增加图标 --- Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue | 116 +++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 79 insertions(+), 37 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue index 19d7f72..a93c5c3 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue @@ -22,33 +22,39 @@ </el-aside> <el-main> - <basic-container v-if="treeNodeRow.id === 'root' "> - <div class="headerCon"> - <el-button v-if="permissionList.addBtn" icon="el-icon-plus" plain size="small" type="primary" @click="addTreeClickHandler">鍒涘缓 - </el-button> - <!--<el-button v-if="permissionList.editBtn" icon="el-icon-edit" plain size="small" type="primary" @click="editTreeClickHandler">淇敼 - </el-button> - <el-button v-if="permissionList.delBtn" icon="el-icon-delete" plain size="small" type="danger" @click="delTreeClickHandler">鍒犻櫎 - </el-button>--> - <el-button v-if="permissionList.importBtn" icon="el-icon-upload2" plain size="small" type="primary" @click="uploadClickHandler">瀵煎叆 - </el-button> - <el-button v-if="permissionList.exportBtn" icon="el-icon-download" plain size="small" type="primary" @click="exportClickHandler">瀵煎嚭 - </el-button> - </div> + <basic-container v-show="treeNodeRow.id === 'root' "> <div> <avue-crud ref="treeCrud" v-model="treeForm" - :data="treeData[0].childs" + :data="treeData[0].children" :option="treeCrudOption" @row-del="rowTreeDelHandler" @row-save="rowTreeSaveHandler" @row-update="rowTreeUpdataHandler" @refresh-change="handleRefresh"> + <template slot="menuLeft"> + <el-button v-if="permissionList.addBtn" icon="el-icon-plus" plain size="small" type="primary" @click="addTreeClickHandler(treeNodeRow)">鍒涘缓 + </el-button> + <!--<el-button v-if="permissionList.editBtn" icon="el-icon-edit" plain size="small" type="primary" @click="editTreeClickHandler">淇敼 + </el-button> + <el-button v-if="permissionList.delBtn" icon="el-icon-delete" plain size="small" type="danger" @click="delTreeClickHandler">鍒犻櫎 + </el-button>--> + <el-button v-if="permissionList.importBtn" icon="el-icon-upload2" plain size="small" type="primary" @click="uploadClickHandler">瀵煎叆 + </el-button> + <el-button v-if="permissionList.exportBtn" icon="el-icon-download" plain size="small" type="primary" @click="exportClickHandler">瀵煎嚭 + </el-button> + </template> + <template #menu="{ row, size }"> + <el-button v-if="permissionList.addBtn" :size="size" icon="el-icon-plus" + text + type="text" + @click="addTreeClickHandler(row)">鏂板瀛愮骇</el-button> + </template> </avue-crud> </div> </basic-container> - <basic-container v-else> + <basic-container v-show="treeNodeRow.id !== 'root'"> <div> <avue-crud ref="crud" @@ -65,6 +71,14 @@ @refresh-change="handleRefresh" @selection-change="selectChangeHandler" @row-click="rowClickHandler"> + <template slot="plCSClass" slot-scope="{row}"> + <span class="avue-icon"> + <icon-show :name="row.plCSClass"></icon-show> + </span> + </template> + <template slot-scope="{type,disabled}" slot="plCSClassForm"> + <input-icon :disabled="disabled" v-model="form.plCSClass"></input-icon> + </template> <template slot="plTypeType" slot-scope="{row}"> <el-tag :type="row.plTypeType === 'business' ? '' : 'success'"> {{ row.plTypeType === 'business' ? '涓氬姟绫诲瀷' : '閾炬帴绫诲瀷' }} @@ -174,7 +188,7 @@ props: { label: 'name', value: 'id', - children: 'childs' + children: 'children' } }, treeData: [] @@ -206,10 +220,13 @@ addBtn: false, calcHeight: -50, highlightCurrentRow: true, - menuWidth: 160, + rowKey: 'id', + rowParentKey: 'pid', + menuWidth: 300, span: 24, labelWidth: 100, dialogWidth: '800', + align:'left', column: [{ label: '鍒嗙被鍚嶇О', prop: 'name', @@ -229,11 +246,6 @@ }, { label: '鐖朵富绫�', prop: 'pidName', - formatter:function(row){ - if(row.pid=='root'){ - return 'Action鍒嗙被' - } - }, disabled: true, span: 24 }, { @@ -260,6 +272,7 @@ { label: '缂栧彿', prop: 'plCode', + width: 220, overHidden: true, search: true, rules: [ @@ -284,6 +297,18 @@ ] }, { + label: '鍥炬爣', + prop: 'plCSClass', + width: 80, + rules: [ + { + required: true, + message: '璇烽�夋嫨鍥炬爣', + trigger: 'blur' + } + ] + }, + { label: '鍒嗙被', prop: 'plActionCls', type: 'tree', @@ -291,7 +316,7 @@ props: { label: 'name', value: 'id', - children: 'childs' + children: 'children' }, rules: [ { @@ -302,13 +327,13 @@ ], dicData: [] }, - { + /*{ label: 'C/S绫昏矾寰�', prop: 'plCSClass', - search: true, + hide:true, searchLabelWidth:120, overHidden: true, - }, + },*/ { label: 'B/S閾炬帴鍦板潃', prop: 'plBSUrl', @@ -396,19 +421,33 @@ } getActionTree(params).then(res => { const data = res.data.obj; - this.treeData = [data]; + this.treeData = this.treeDataFormAtter([data],'Action鍒嗙被'); const selectTreeData = this.option.column.find(item => item.prop === 'plActionCls'); // 鎵惧埌action娣诲姞鍒嗙被鏍� - const dicData=[data]; + const dicData=this.treeData; dicData[0].disabled=true;//鏍硅妭鐐逛笉鑳介�� selectTreeData.dicData = dicData; }) }, + treeDataFormAtter(items,pidName) { + return items.map(item => { + // 杞崲褰撳墠鑺傜偣鐨勫睘鎬� + const formList = { + ...item, + pidName:pidName, + children: item.childs && item.childs.length > 0 ? this.treeDataFormAtter(item.childs,item.name) : undefined + }; + return formList; + }); + }, + // 宸︿晶鏍戣鐐瑰嚮 nodeClick(row) { this.treeNodeRow = row; - this.getRightTableList(row); - this.bottomData = []; + if(this.treeNodeRow.id !== 'root'){ + this.getRightTableList(row); + this.bottomData = []; + } }, // 澶撮儴鍒锋柊鎸夐挳 @@ -488,13 +527,12 @@ beforeOpen(done, type, loading) { if ([ 'edit'].includes(type)) { // 缂栬緫閫昏緫 - this.$set(this.option.column[2],'disabled',false); + this.$set(this.option.column[3],'disabled',false); } else { // 鏂板閫昏緫 - this.$set(this.option.column[2],'disabled',true); + this.$set(this.option.column[3],'disabled',true); } done(); - console.log(this.option.column) }, // action鍒楄〃澧炲姞 addClickHandler() { @@ -675,16 +713,20 @@ }, // 宸︿晶鏍戝垱寤� - addTreeClickHandler() { - if (func.isEmptyObject(this.treeNodeRow)) { + addTreeClickHandler(row) { + let parentRow=row; + if(!row || !row.id){ + parentRow=this.treeNodeRow + } + if (func.isEmptyObject(parentRow)) { this.$message.error('璇烽�夋嫨涓�鏉″垎绫昏繘琛屾坊鍔�'); return; } - if (!this.treeNodeRow.id && this.treeNodeRow.name=='鏈垎绫�') { + if (!parentRow.id && parentRow.name=='鏈垎绫�') { this.$message.error('鏈垎绫讳笅涓嶈兘鍒涘缓瀛愬垎绫�'); return; } - const {createTime, creator, name, id, description} = this.treeNodeRow; + const {createTime, creator, name, id, description} = parentRow; this.$set(this.treeForm, 'createTime', func.formattedDate(createTime)); this.$set(this.treeForm, 'creator', creator); this.$set(this.treeForm, 'pid', id); -- Gitblit v1.9.3