From ea3ab34e0d3af27887cbeef5e5871cefd1cc459e Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期四, 26 十月 2023 11:30:54 +0800 Subject: [PATCH] 主题库定义-按钮权限 --- Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue | 96 +++++++++++++++++++++---------- Source/UBCS-WEB/src/views/code/code.vue | 8 +- Source/UBCS-WEB/src/views/system/menu.vue | 1 Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue | 45 +++++++++----- 4 files changed, 97 insertions(+), 53 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue b/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue index 9066963..369da39 100644 --- a/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue +++ b/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue @@ -3,67 +3,81 @@ <div v-if="this.crudArrayFlag" class="app" style="display: flex;flex-wrap: wrap; display: inline-block"> <el-button-group> <!--鏂板--> - <el-button - v-if="attrEditVisible == false && attrFlagChiledren==false && editOpenFlag && (!checkStatus || crudLCStatus=='Editing' )" - icon="el-icon-plus" plain size="small" type="primary" @click="busineHandle">娣诲姞 {{ msg }} + <span v-if="permissionList.busineStatus"> + <el-button + v-if="attrEditVisible == false && attrFlagChiledren==false && editOpenFlag && (!checkStatus || crudLCStatus=='Editing' )" + icon="el-icon-plus" plain size="small" type="primary" @click="busineHandle" >娣诲姞 {{ msg }} </el-button> + </span> <!-- 鍏ㄥ睆缂栬緫--> - <el-button - v-if=" attrEditVisible == false && attrFlagChiledren==false && editOpenFlag&&(!checkStatus || crudLCStatus=='Editing')" - icon="el-icon-full-screen" size="small" @click="fullscreenHandle">鍏ㄥ睆缂栬緫 + <span v-if="permissionList.fullscreenStatus"> + <el-button + v-if=" attrEditVisible == false && attrFlagChiledren==false && editOpenFlag&&(!checkStatus || crudLCStatus=='Editing')" + icon="el-icon-full-screen" size="small" @click="fullscreenHandle">鍏ㄥ睆缂栬緫 </el-button> - <!-- 楠岃瘉瑙勫垯--> + </span> + <span v-if="permissionList.ruleStatus"> + <!-- 楠岃瘉瑙勫垯--> <el-button v-if="(!checkStatus || crudLCStatus=='Editing' )&& editOpenFlag" icon="el-icon-info" size="small" - @click="ruleAddHandler">楠岃瘉瑙勫垯 + @click="ruleAddHandler" >楠岃瘉瑙勫垯 </el-button> - <!-- 灞炴�у垎缁�--> + </span> + <span v-if="permissionList.attrStatus"> + <!-- 灞炴�у垎缁�--> <el-button v-if="(!checkStatus || crudLCStatus=='Editing') && editOpenFlag" icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁� </el-button> + </span> </el-button-group> <el-button-group> - <!-- 淇濆瓨--> + <span v-if="permissionList.saveStatus"> + <!-- 淇濆瓨--> <el-button v-if="(!checkStatus|| crudLCStatus=='Editing') && editOpenFlag" icon="el-icon-check" plain size="small" - type="success" @click.prevent="addsHandler">淇濆瓨 + type="success" @click.prevent="addsHandler" >淇濆瓨 </el-button> - <!-- 棰勮鎺掑簭--> - <el-button icon="el-icon-arrow-down" size="small" @click="orderHandle">棰勮鎺掑簭</el-button> - <!-- 鍒犻櫎--> + </span> + <!-- 棰勮鎺掑簭--> + <el-button icon="el-icon-arrow-down" size="small" @click="orderHandle" v-if="permissionList.orderStatus">棰勮鎺掑簭</el-button> + <span v-if="permissionList.removeStatus"> + <!-- 鍒犻櫎--> <el-button v-if="(!checkStatus || crudLCStatus=='Editing') && editOpenFlag" icon="el-icon-delete" size="small" - @click="CrudRemove">鍒犻櫎 + @click="CrudRemove" >鍒犻櫎 </el-button> + </span> <!-- 閲嶇疆--> - <el-button icon="el-icon-refresh-right" size="small" @click="reset">閲嶇疆</el-button> + <el-button icon="el-icon-refresh-right" size="small" @click="resetHandler" v-if="permissionList.resetStatus">閲嶇疆</el-button> </el-button-group> <el-button-group> - <!--鏂板--> - <!-- 鍒嗙被娉ㄥ叆--> + <span v-if="permissionList.injectStatus"><!-- 鍒嗙被娉ㄥ叆--> <el-button v-if="(!checkStatus || crudLCStatus=='Editing') && editOpenFlag" icon="el-icon-magic-stick" - size="small" @click="injectBtn">鍒嗙被娉ㄥ叆 - </el-button> - <!-- 缁勫悎瑙勫垯--> + size="small" @click="injectBtn" >鍒嗙被娉ㄥ叆 + </el-button></span> + <span v-if="permissionList.isShowStatus"> <!-- 缁勫悎瑙勫垯--> <el-button v-if="(!checkStatus || crudLCStatus=='Editing') && editOpenFlag" icon="el-icon-film" size="small" @click="isShowHandler">缁勫悎瑙勫垯 - </el-button> - <!-- 鏋氫妇娉ㄥ叆--> + </el-button></span> + <span v-if="permissionList.enumStatus"> <!-- 鏋氫妇娉ㄥ叆--> <el-button v-if="(!checkStatus || crudLCStatus=='Editing') && editOpenFlag" icon="el-icon-c-scale-to-original" - size="small" @click="enmuVisHandle">鏋氫妇娉ㄥ叆 - </el-button> - <!-- 绾ц仈灞炴��--> + size="small" @click="enumVisHandle" >鏋氫妇娉ㄥ叆 + </el-button></span> + + <span v-if="permissionList.cascadStatus"> + <!-- 绾ц仈灞炴��--> <el-button v-if="(!checkStatus|| crudLCStatus=='Editing') && editOpenFlag" icon="el-icon-coin" size="small" @click="CascadeHandle">绾ц仈灞炴�� </el-button> + </span> </el-button-group> <el-button-group> <!-- 鍚屾鍒板叾浠栨ā鏉�--> - <el-button icon="el-icon-share" size="small" @click="syncHandle">鍚屾鍒板叾浠栨ā鏉�</el-button> + <el-button icon="el-icon-share" size="small" @click="syncHandle" v-if="permissionList.syncStatus">鍚屾鍒板叾浠栨ā鏉�</el-button> </el-button-group> <el-button-group> <!-- 缂栫爜鐢宠棰勮--> - <el-button icon="el-icon-view" size="small" style="" @click="applicationHandle">缂栫爜鐢宠棰勮</el-button> + <el-button icon="el-icon-view" size="small" style="" @click="applicationHandle" v-if="permissionList.applicationStatus">缂栫爜鐢宠棰勮</el-button> </el-button-group> <!-- 鏄惁寮�鍚紪杈� --> @@ -292,7 +306,6 @@ <el-button size="small" type="primary" @click="addVisible=false">鍙栨秷</el-button> </div> </el-dialog> - <!-- 鍙傜収閰嶇疆--> <refer-config-dialog :display="referConfigVisble" @@ -382,7 +395,7 @@ import {getList} from "@/api/refer/table"; import func from "@/util/func"; import {getCurrentInstance} from "vue"; - +import {mapGetters} from "vuex"; export default { name: "attrCrud .vue", props: { @@ -1530,6 +1543,25 @@ } }, computed: { + ...mapGetters(["permission"]), + permissionList(){ + return{ + busineStatus:this.vaildData(this.permission.classifyTree.attr_add,false), + fullscreenStatus:this.vaildData(this.permission.classifyTree.attr_view_edit,false), + ruleStatus:this.vaildData(this.permission.classifyTree.attr_rule,false), + attrStatus:this.vaildData(this.permission.classifyTree.attr_group,false), + saveStatus:this.vaildData(this.permission.classifyTree.attr_save,false), + resetStatus:this.vaildData(this.permission.classifyTree.attr_reset,false), + injectStatus:this.vaildData(this.permission.classifyTree.attr_inject,false), + isShowStatus:this.vaildData(this.permission.classifyTree.attr_formrule,false), + enumStatus:this.vaildData(this.permission.classifyTree.attr_enum,false), + cascadStatus:this.vaildData(this.permission.classifyTree.attr_parentcode,false), + syncStatus:this.vaildData(this.permission.classifyTree.attr_sync,false), + applicationStatus:this.vaildData(this.permission.classifyTree.attr_application,false), + orderStatus:this.vaildData(this.permission.classifyTree.attr_sort,false), + removeStatus:this.vaildData(this.permission.classifyTree.attr_delete,false), + } + }, attrOids() { let oids = []; this.attrSelectList.forEach(ele => { @@ -1921,7 +1953,7 @@ this.tableData.splice(row.$index, 1) }, //鏋氫妇娉ㄥ叆鎸夐挳 - enmuVisHandle() { + enumVisHandle() { if (this.attrSelectList.length > 1) { this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉垮睘鎬�') } else if (this.attrSelectList < 1) { @@ -2091,7 +2123,7 @@ }) }, //琛ㄦ牸閲嶇疆 - reset() { + resetHandler() { this.CrudRend() }, //鍚屾鍒板叾浠栨ā鏉� diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue index 2a2a987..c78fbf7 100644 --- a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue +++ b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue @@ -8,16 +8,16 @@ <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"> @@ -104,9 +104,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> @@ -401,12 +401,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 { @@ -764,7 +761,6 @@ } }, watch: {}, - //tab鏍忛粯璁ゆ槸琛ㄦ牸 mounted() { this.type = this.tabOption.column[0]; this.getAttr(); @@ -779,6 +775,22 @@ }, 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, @@ -837,7 +849,6 @@ } }, created() { - }, methods: { //瀛樺偍鐨勪笟鍔$被鍨嬪叧闂� diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue index 1c397cf..3e6a917 100644 --- a/Source/UBCS-WEB/src/views/code/code.vue +++ b/Source/UBCS-WEB/src/views/code/code.vue @@ -1,5 +1,5 @@ <template> - <basic-container class="code-total" style="height: 100%"> + <basic-container class="code-total" style=" height: 100%"> <!-- 缂栫爜瑙勫垯淇℃伅灞曠ず鍖哄煙 --> <basic-container class="code-rule-container"> <p @@ -2600,9 +2600,9 @@ onLoad(page, params = {}) { this.loading = true; gridCodeRule( - page.currentPage, - page.pageSize, - Object.assign({},params,this.query), + page.currentPage, + page.pageSize, + Object.assign({},params,this.query), ).then((res) => { //console.log(res.data); const data = res.data.data; diff --git a/Source/UBCS-WEB/src/views/system/menu.vue b/Source/UBCS-WEB/src/views/system/menu.vue index 6c8f412..3f4ac08 100644 --- a/Source/UBCS-WEB/src/views/system/menu.vue +++ b/Source/UBCS-WEB/src/views/system/menu.vue @@ -127,6 +127,7 @@ label: "鑿滃崟鍚嶇О", prop: "name", search: true, + width:220, rules: [ { required: true, -- Gitblit v1.9.3