From afbe6b99f5ad08087c982c78a5965b49f58f0c37 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 09 十一月 2023 14:39:17 +0800
Subject: [PATCH] 整合代码
---
Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue | 201 ++++++++++++++++++++++++++++++++------------------
1 files changed, 128 insertions(+), 73 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
index 4030c0d..ae3a1ef 100644
--- a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
+++ b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
@@ -3,26 +3,38 @@
<el-container>
<!-- 宸︿晶鑿滃崟-->
<el-aside>
- <basic-container style="overflow:hidden;">
+ <basic-container>
<div>
<div>
<div style="display: flex; flex-direction: column;">
<div style="display: flex;">
- <el-button plain size="small" type="primary" @click="TreeAdd">娣诲姞</el-button>
- <el-button plain size="small" type="primary" @click="TreeEdit">淇敼</el-button>
- <el-button plain size="small" type="primary" @click="TreeDel">鍒犻櫎</el-button>
- <el-button plain size="small" type="primary" @click="flushed">鍒锋柊</el-button>
+ <el-button plain size="small" type="primary" @click="TreeAdd" v-if="permissionList.TreeAddStatus">娣诲姞</el-button>
+ <el-button plain size="small" type="primary" @click="TreeEdit" v-if="permissionList.TreeEditStatus">淇敼</el-button>
+ <el-button plain size="small" type="primary" @click="TreeDel" v-if="permissionList.TreeDelStatus">鍒犻櫎</el-button>
+ <el-button plain size="small" type="primary" @click="flushed" v-if="permissionList.flushedStatus">鍒锋柊</el-button>
</div>
<div style="display: flex; margin-top: 10px">
- <el-button plain size="small" type="primary" @click="Enable">鍚敤</el-button>
- <el-button plain size="small" type="primary" @click="Deactivate">鍋滅敤</el-button>
- <el-button plain size="small" type="primary" @click.native="ImportExcel">瀵煎叆</el-button>
- <el-button plain size="small" type="primary" @click="ExportExcel">瀵煎嚭</el-button>
+ <el-button plain size="small" type="primary" @click="Enable" v-if="permissionList.EnableStatus">鍚敤</el-button>
+ <el-button plain size="small" type="primary" @click="Deactivate" v-if="permissionList.DeactivateStatus">鍋滅敤</el-button>
+ <el-button plain size="small" type="primary" @click.native="ImportExcel" v-if="permissionList.ImportExcelStatus">瀵煎叆</el-button>
+ <el-button plain size="small" type="primary" @click="ExportExcel" v-if="permissionList.ExportExcelStatus">瀵煎嚭</el-button>
</div>
</div>
<div style="display: flex;justify-content: space-around;margin-top: 5px;margin-bottom: 5px">
</div>
</div>
+<!-- 宸︿晶鏍�-->
+ <div style="height: calc(100vh - 230px);overflow: auto">
+ <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata"
+ :defaultExpandAll="false"
+ :option="Treeoption"
+ class="classifyTree"
+ style="height: calc(100vh - 280px)"
+ @node-click="nodeClick"
+ >
+ </avue-tree>
+ </div>
+
<!-- 鏍戣妭鐐规坊鍔犲璇濇-->
<el-dialog v-loading="AddLoading" :before-close="TreeEscHandler"
:title="this.TreeFlag ? '娣诲姞鍒嗙被' :'娣诲姞涓婚搴�'" :visible.sync="TreeAddFormVisible" append-to-body
@@ -63,19 +75,12 @@
</el-dialog>
<!-- 淇敼瀵硅瘽妗�-->
<el-dialog :visible.sync="TreeEditFormVisible" append-to-body title="淇敼鍒嗙被">
- <classifyTreeform ref="childForm" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="editTreeFLagCode" :flag="'edit'"
+ <classifyTreeform ref="childForm" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="editTreeFLagCode"
+ :flag="'edit'"
:loneTreeNewForm="TreeList" :nodeClickList="nodeClickList"
:nodeList="nodeList" @MasterHandler="MasterHandler" @flushed="flushed"
@referTreeForm="referTreeForm"></classifyTreeform>
</el-dialog>
- <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata"
- :defaultExpandAll="false"
- :option="Treeoption"
- class="classifyTree"
- style="height: calc(100vh - 230px);"
- @node-click="nodeClick"
- >
- </avue-tree>
</div>
</basic-container>
</el-aside>
@@ -102,9 +107,9 @@
</template>
<template slot="menuLeft">
- <el-button plain size="small" type="primary" @click="FindeHanler">鏌ヨ</el-button>
- <el-button plain size="small" type="primary" @click="TemRefresh">鍒锋柊</el-button>
- <el-button plain size="small" type="primary" @click="CloneBtn">浠庡叾瀹冩ā鏉垮厠闅�</el-button>
+ <el-button plain size="small" type="primary" @click="FindeHanler" v-if="permissionList.FindStatus">鏌ヨ</el-button>
+ <el-button plain size="small" type="primary" @click="TemRefresh" v-if="permissionList.TemRefreshStatus">鍒锋柊</el-button>
+ <el-button plain size="small" type="primary" @click="CloneBtn" v-if="permissionList.CloneBtnStuatus">浠庡叾瀹冩ā鏉垮厠闅�</el-button>
<!-- 鏌ヨ瀵硅瘽妗�-->
<el-dialog :visible.sync="FindFormVisible" append-to-body title="楂樼骇鏌ヨ">
<div>
@@ -141,7 +146,7 @@
<avue-tree ref="cloneTree" v-model="TreeAvueform" v-loading="loading" :data="Treedata"
:defaultExpandAll="false"
:option="Treeoption"
- style="height: 50.5vh;margin-right: 10px"
+ style="height: 50.5vh;margin-right: 10px;width: 300px"
@node-click="ClonenodeClick"
>
</avue-tree>
@@ -233,7 +238,8 @@
:rowIndex="this.selectRow"></templatePro>
</span>
<!-- 缂栫爜瑙勫垯-->
- <el-dialog :visible.sync="MasterdialogVisible" append-to-body title="涓恒�愮紪鐮佽鍒欍�戦�夊彇鍊�" :before-close="masterEscHandler">
+ <el-dialog :before-close="masterEscHandler" :visible.sync="MasterdialogVisible" append-to-body
+ title="涓恒�愮紪鐮佽鍒欍�戦�夊彇鍊�">
<template>
<el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 135px">
<el-option
@@ -248,7 +254,7 @@
<el-button plain size="small" style="margin-left: 20px" type="primary" @click="SelectFindeHandler">鏌ヨ
</el-button>
</template>
- <avue-crud :data="masterData" :option="masterOption" @row-click="masterSelect">
+ <avue-crud :data="masterData" :option="Option" @row-click="masterSelect">
<template slot="radio" slot-scope="{row}">
<el-radio v-model="masterRow" :label="row.$index" style="padding-left: 10px !important;">{{ '' }}
</el-radio>
@@ -266,7 +272,7 @@
</div>
</el-dialog>
<!-- 鍏抽敭灞炴�ф煡璇㈣鍒�-->
- <el-dialog :visible.sync="KeydialogVisible" append-to-body title="涓恒�愬叧閿睘鎬ф煡璇㈣鍒欍�戦�夊彇鍊�" :before-close="KeyEscHandler">
+ <el-dialog :before-close="KeyEscHandler" :visible.sync="KeydialogVisible" append-to-body title="涓恒�愬叧閿睘鎬ф煡璇㈣鍒欍�戦�夊彇鍊�">
<template>
<el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 135px">
<el-option
@@ -281,7 +287,7 @@
<el-button plain size="small" style="margin-left: 20px" type="primary" @click="KeySelectFindeHandler">鏌ヨ
</el-button>
</template>
- <avue-crud :data="KeyData" :option="masterOption" @row-click="KeySelect">
+ <avue-crud :data="KeyData" :option="Option" @row-click="KeySelect">
<template slot="radio" slot-scope="{row}">
<el-radio v-model="masterRow" :label="row.$index" style="padding-left: 10px !important;">{{ '' }}
</el-radio>
@@ -290,7 +296,9 @@
<div style="height: 30px">
<div
style="display: inline-block;float: left;border: 1px solid #eeeeee;padding: 5px;margin-top: 5px;font-size: 14px ">
- 宸茶缃殑鍊间负:[{{ this.TreeAddform.codeKeyAttrRepeatOidName == '' ? '鏈缃��' : this.TreeAddform.codekeyattrrepeatoidName }}]
+ 宸茶缃殑鍊间负:[{{
+ this.TreeAddform.codeKeyAttrRepeatOidName == '' ? '鏈缃��' : this.TreeAddform.codekeyattrrepeatoidName
+ }}]
</div>
<div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden">
<el-button size="small" type="primary" @click="KeyHandlerClick">纭畾</el-button>
@@ -299,7 +307,7 @@
</div>
</el-dialog>
<!-- 鐩镐技椤规煡璇㈣鍒�-->
- <el-dialog :visible.sync="SimidialogVisible" append-to-body title="涓恒�愮浉浼奸」鏌ヨ瑙勫垯銆戦�夊彇鍊�" :before-close="simEscHandler">
+ <el-dialog :before-close="simEscHandler" :visible.sync="SimidialogVisible" append-to-body title="涓恒�愮浉浼奸」鏌ヨ瑙勫垯銆戦�夊彇鍊�">
<template>
<el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 135px">
<el-option
@@ -314,7 +322,7 @@
<el-button plain size="small" style="margin-left: 20px" type="primary" @click="SimSelectFindeHandler">鏌ヨ
</el-button>
</template>
- <avue-crud :data="simData" :option="masterOption" @row-click="simSelect">
+ <avue-crud :data="simData" :option="Option" @row-click="simSelect">
<template slot="radio" slot-scope="{row}">
<el-radio v-model="masterRow" :label="row.$index" style="padding-left: 10px !important;">{{ '' }}
</el-radio>
@@ -323,7 +331,9 @@
<div style="height: 30px">
<div
style="display: inline-block;float: left;border: 1px solid #eee;padding: 5px;margin-top: 5px;font-size: 14px ">
- 宸茶缃殑鍊间负:[{{ this.TreeAddform.codeResembleRuleOidName == '' ? '鏈缃��' : this.TreeAddform.codeResembleRuleOidName }}]
+ 宸茶缃殑鍊间负:[{{
+ this.TreeAddform.codeResembleRuleOidName == '' ? '鏈缃��' : this.TreeAddform.codeResembleRuleOidName
+ }}]
</div>
<div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden">
<el-button size="small" type="primary" @click="simHandlerClick">纭畾</el-button>
@@ -332,7 +342,7 @@
</div>
</el-dialog>
<!-- 涓氬姟绫诲瀷-->
- <el-dialog :visible.sync="BtmdialogVisible" append-to-body title="涓恒�愪笟鍔$被鍨嬭鍒欍�戦�夊彇鍊�" :before-close="BtmEscHandler">
+ <el-dialog :before-close="BtmEscHandler" :visible.sync="BtmdialogVisible" append-to-body title="涓恒�愪笟鍔$被鍨嬭鍒欍�戦�夊彇鍊�">
<template>
<el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 135px !important;">
<el-option
@@ -394,13 +404,9 @@
} from "@/api/template/templateAttr";
import {defaultReferDataGrid, referDataGrid} from '@/api/MasterData/master'
import func from "@/util/func";
-
+import {mapGetters} from "vuex";
export default {
name: "classifyTrees.vue",
- //浣跨敤inject鎺ユ敹鍙傛暟
- //Treeoption宸︿晶鏍戞柊澧炶〃鍗曢」 Treedata宸︿晶鏍戣妭鐐� 閰嶇疆椤� crudTreeOption鍙充晶琛ㄦ牸閰嶇疆椤� crudTreeData鍙充晶琛ㄦ牸鏄剧ず鍐呭
- //Treeform鍙充晶琛ㄥ崟閰嶇疆椤�
- inject: ["crudTreeData"],
data() {
return {
masterRow: null,
@@ -466,6 +472,34 @@
}
]
},
+ Option: {
+ addBtn: false,
+ index: true,
+ columnBtn:false,
+ border: true,
+ menu: false,
+ height: 380,
+ column: [
+ {
+ label: '',
+ prop: 'radio',
+ width: 60,
+ display: false
+ },
+ {
+ label: '鑻辨枃鍚嶇О',
+ prop: 'id'
+ },
+ {
+ label: '涓枃鍚嶇О',
+ prop: 'name'
+ },
+ {
+ label: '鎻忚堪',
+ prop: 'description'
+ }
+ ]
+ },
SelectOption: [
{
value: 'name',
@@ -476,7 +510,7 @@
label: '鑻辨枃鍚嶇О'
}
],
- masterSelectOption:[
+ masterSelectOption: [
{
value: 'id',
label: '涓氬姟绫诲瀷缂栧彿'
@@ -633,6 +667,7 @@
CloneSelect: [],
//鍏嬮殕妯℃澘option
ClonecrudTreeOption: {
+ columnBtn:false,
index: true,
border: true,
menu: false,
@@ -728,7 +763,6 @@
}
},
watch: {},
- //tab鏍忛粯璁ゆ槸琛ㄦ牸
mounted() {
this.type = this.tabOption.column[0];
this.getAttr();
@@ -743,10 +777,27 @@
}, true)
},
computed: {
+ ...mapGetters(["permission"]),
+ permissionList(){
+ return{
+ TreeAddStatus:this.vaildData(this.permission.classifyTree.tree_add,false),
+ TreeEditStatus:this.vaildData(this.permission.classifyTree.tree_edit,false),
+ TreeDelStatus:this.vaildData(this.permission.classifyTree.tree_delete,false),
+ flushedStatus:this.vaildData(this.permission.classifyTree.tree_break,false),
+ EnableStatus:this.vaildData(this.permission.classifyTree.tree_enable,false),
+ DeactivateStatus:this.vaildData(this.permission.classifyTree.tree_stop,false),
+ ImportExcelStatus:this.vaildData(this.permission.classifyTree.tree_import,false),
+ ExportExcelStatus:this.vaildData(this.permission.classifyTree.tree_export,false),
+ FindStatus:this.vaildData(this.permission.classifyTree.manage_search,false),
+ TemRefreshStatus:this.vaildData(this.permission.classifyTree.manage_break,false),
+ CloneBtnStuatus:this.vaildData(this.permission.classifyTree.manage_clone,false),
+ }
+ },
crudTreeOption() {
return {
index: true,
border: true,
+ columnBtn:false,
height: 180,
addBtn: this.Formlist.length <= 0 && this.nodeClickList != "",
editBtn: false,
@@ -800,32 +851,35 @@
}
},
created() {
-
},
methods: {
//瀛樺偍鐨勪笟鍔$被鍨嬪叧闂�
- BtmEscHandler(){
- this.SelectFInd='';
- this.SelectValue='id';
- this.BtmdialogVisible=false;
+ BtmEscHandler() {
+ this.SelectFInd = '';
+ this.SelectValue = 'id';
+ this.masterRow = null;
+ this.BtmdialogVisible = false;
},
//鐩镐技椤瑰叧闂�
- simEscHandler(){
- this.SelectFInd='';
- this.SelectValue='id';
- this.SimidialogVisible=false;
+ simEscHandler() {
+ this.SelectFInd = '';
+ this.SelectValue = 'id';
+ this.masterRow = null;
+ this.SimidialogVisible = false;
},
//鍏抽敭灞炴�у叧闂�
- KeyEscHandler(){
- this.SelectFInd='';
- this.SelectValue='id';
- this.KeydialogVisible=false;
+ KeyEscHandler() {
+ this.SelectFInd = '';
+ this.SelectValue = 'id';
+ this.masterRow = null;
+ this.KeydialogVisible = false;
},
//缂栫爜瑙勫垯鍏抽棴
- masterEscHandler(){
- this.SelectFInd='';
- this.SelectValue='id';
- this.MasterdialogVisible=false;
+ masterEscHandler() {
+ this.SelectFInd = '';
+ this.SelectValue = 'id';
+ this.masterRow = null;
+ this.MasterdialogVisible = false;
},
// 鍏抽棴寮圭獥
/** 瀵煎叆 */
@@ -858,7 +912,7 @@
//缂栫爜瑙勫垯鏌ヨ
SelectFindeHandler() {
const masterParameter = {};
- masterParameter[`conditionMap['${this.SelectValue}']`] = `*${this.SelectFInd}*`;
+ masterParameter[`conditionMap['${this.SelectValue}']`] = this.SelectFInd;
this.MasterdefaultRend(masterParameter)
},
//缂栫爜瑙勫垯纭畾
@@ -873,6 +927,7 @@
this.$set(this.TreeAddform, 'codeRuleOidName', this.masterName)
this.$set(this.TreeAddform, 'codeRuleOid', this.masterOid)
this.$emit('MasterHandler', this.loneTreeNewForm)
+ this.masterRow=null;
}
},
//缂栫爜鎺ュ彛
@@ -881,6 +936,7 @@
referType: 'coderule',
isMuti: 'false',
'conditionMap["lcstatus"]': 'Released',
+ 'limit':'-1',
...masterParameter
}).then(res => {
this.masterData = res.data.records;
@@ -901,12 +957,13 @@
this.KeySelectLIst = []
this.$set(this.TreeAddform, 'codeKeyAttrRepeatOidName', this.KeyName)
this.$set(this.TreeAddform, 'codeKeyAttrRepeatOid', this.KeyOid)
+ this.masterRow=null;
}
},
//鍏抽敭灞炴�ф煡璇�
KeySelectFindeHandler() {
const masterParameter = {};
- masterParameter[`conditionMap['${this.SelectValue}']`] = `*${this.SelectFInd}*`;
+ masterParameter[`conditionMap['${this.SelectValue}']`] = this.SelectFInd;
this.KeydefaultRend(masterParameter)
},
//鍏抽敭灞炴�ф帴鍙�
@@ -915,6 +972,7 @@
referType: 'codekeyattrrepeat',
isMuti: 'false',
'conditionMap["lcstatus"]': 'Enabled',
+ 'limit':'-1',
...masterParameter
}).then(res => {
this.KeyData = res.data.records;
@@ -944,12 +1002,13 @@
this.$set(this.TreeAddform, 'codeResembleRuleOidName', this.simName)
this.$set(this.TreeAddform, 'codeResembleRuleOid', this.simOid)
this.$emit('MasterHandler', this.loneTreeNewForm)
+ this.masterRow=null;
}
},
//鐩镐技椤规煡璇�
SimSelectFindeHandler() {
const masterParameter = {};
- masterParameter[`conditionMap['${this.SelectValue}']`] = `*${this.SelectFInd}*`;
+ masterParameter[`conditionMap['${this.SelectValue}']`] = this.SelectFInd;
this.simdefaultRend(masterParameter)
},
// 鐩镐技椤瑰閫�
@@ -965,6 +1024,7 @@
referType: 'coderesemblerule',
isMuti: 'false',
'conditionMap["lcstatus"]': 'Enabled',
+ 'limit':'-1',
...masterParameter
}).then(res => {
this.simData = res.data.records;
@@ -982,18 +1042,20 @@
} else if (this.btmSelectList.length <= 0) {
this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
} else {
+ this.$refs.myForm.clearValidate();
this.BtmdialogVisible = false;
this.btmSelectList = []
this.$set(this.TreeAddform, 'btmTypeName', this.btmName)
this.$set(this.TreeAddform, 'btmTypeId', this.btmOid)
this.$emit('MasterHandler', this.loneTreeNewForm)
+ this.masterRow=null;
}
},
//涓氬姟绫诲瀷鏌ヨ
BtmSelectFindeHandler() {
const masterParameter = {};
- masterParameter[`conditionMap['${this.SelectValue}']`] = `*${this.SelectFInd}*`;
- this.btmdefaultRend(masterParameter);
+ masterParameter[`conditionMap['${this.SelectValue}']`] = this.SelectFInd;
+ this.btmdefaultRend(masterParameter);
},
//涓氬姟绫诲瀷澶氶��
btmSelect(row) {
@@ -1004,7 +1066,7 @@
},
//涓氬姟绫诲瀷鎺ュ彛
btmdefaultRend(masterParameter) {
- referDataGrid({valueField: 'id', isMuti: 'false', ...masterParameter}).then(res => {
+ referDataGrid({valueField: 'id', isMuti: 'false','limit':'-1', ...masterParameter}).then(res => {
this.BtmData = res.data.data.records
})
},
@@ -1031,7 +1093,6 @@
})
//璋冪敤淇敼灞炴�у悕鏂规硶
this.ModifyProperties(this.CloneTreedata, 'name', 'label');
- console.log(this.CloneTreedata)
this.CloneTreedata = this.CloneTreedata.map(item => {
if (item.attributes.lcStatus === "Disabled") {
item.label += '銆愬仠鐢ㄣ��';
@@ -1087,7 +1148,6 @@
this.$message.warning('璇疯緭鍏ュ唴瀹癸紒');
} else {
const data = this.TreeAddform;
- // data.btmtypename= this.TreeList.btmtypename
this.$set(data, "parentCodeClassifyOid", this.nodeClickList.oid);
TreeSave(data)
.then(() => {
@@ -1185,7 +1245,10 @@
this.getAttr()
setTimeout(() => {
this.loading = false;
- this.nodeClickList = ""
+ this.$refs.tree.setCurrentKey(null);
+ this.nodeClickList = {}
+ this.TreeList = []
+ this.TreeFlagCode = true;
}, 600);
},
//鍚敤鍜屽仠鐢ㄩ兘鍏堝垽鏂姸鎬�
@@ -1254,11 +1317,9 @@
});
}
}
-
},
//鏍戠偣鍑讳簨浠�
async nodeClick(data) {
- console.log(data);
//鎿嶄綔鏂板鍜屼慨鏀圭殑涓氬姟绫诲瀷闅愯棌
this.TreeFlagCode = !data;
this.editTreeFLagCode = !data.parentId;
@@ -1480,9 +1541,6 @@
const {id, name} = row[0];
this.CloneModel = {id, name};
this.CloneSelect[0].codeclassifyoid = this.nodeClickList.oid;
- console.log('row', row)
- console.log('CloneSelect', this.CloneSelect)
- console.log('CloneModel', this.CloneModel)
},
//鍏嬮殕琛ㄥ崟鎻愪氦
Clonesubmit(row, done) {
@@ -1577,7 +1635,7 @@
}
.el-aside {
- height: calc(100% - 30px);
+ //height: calc(100% - 30px);
}
.el-main {
@@ -1603,6 +1661,3 @@
}
</style>
-/sa[pr
-[
-syulep
--
Gitblit v1.9.3