From d2d549d1c09087a886dece6ee6379b493d851dc5 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 18 四月 2024 00:46:13 +0800
Subject: [PATCH] 按钮权限配置
---
Source/UBCS-WEB/src/views/integration/vciAttribute.vue | 58 +++++++++++++++++++++++++++-
Source/UBCS-WEB/src/views/integration/integrationIndex.vue | 36 ++++++++++++------
2 files changed, 79 insertions(+), 15 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue
index 5cb52d3..083d865 100644
--- a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue
+++ b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue
@@ -59,16 +59,17 @@
<!-- <el-button :disabled="disabledPush" icon="el-icon-plus" size="small" type="primary"-->
<!-- @click="dialogPush = true">鏂� 澧�-->
<!-- </el-button>-->
- <el-button icon="el-icon-check" size="small" type="primary" @click="handleSave">淇� 瀛�
+ <el-button v-if="permissionList.saveBtn" icon="el-icon-check" size="small" type="primary"
+ @click="handleSave">淇� 瀛�
</el-button>
- <el-button icon="el-icon-connection" size="small" type="primary"
- @click="handleSync('all')">鍚屾涓绘ā鍨�
+ <el-button v-if="permissionList.allSyncBtn" icon="el-icon-connection" size="small"
+ type="primary" @click="handleSync('all')">鍚屾涓绘ā鍨�
</el-button>
- <el-button icon="el-icon-connection" size="small" type="primary"
- @click="handleSync('one')">鍚屾璇︾粏妯″瀷
+ <el-button v-if="permissionList.oneSyncBtn" icon="el-icon-connection" size="small"
+ type="primary" @click="handleSync('one')">鍚屾璇︾粏妯″瀷
</el-button>
- <el-button icon="el-icon-coordinate" size="small" type="primary"
- @click="handlerAuto">鑷姩濉厖
+ <el-button v-if="permissionList.autoBtn" icon="el-icon-coordinate" size="small"
+ type="primary" @click="handlerAuto">鑷姩濉厖
</el-button>
</template>
</avue-crud>
@@ -78,8 +79,8 @@
@row-update="handleUpdate"
@row-dblclick="handleRowClick">
<template slot="menuLeft">
- <el-button icon="el-icon-coordinate" size="small" type="primary"
- @click="handlerBottomAuto">鑷姩濉厖
+ <el-button v-if="permissionList.bottomAutoBtn" icon="el-icon-coordinate" size="small"
+ type="primary" @click="handlerBottomAuto">鑷姩濉厖
</el-button>
</template>
</avue-crud>
@@ -94,6 +95,7 @@
<script>
import integrationTransfer from './integrationTransfer.vue'
import pinyin from 'js-pinyin'
+import {mapGetters} from "vuex";
import {
referCodeClassifyTree,
referTree,
@@ -281,7 +283,17 @@
},
targetColumn() {
return this.optionMapping.column.find(column => column.prop === 'targetAttrName');
- }
+ },
+ ...mapGetters(["permission"]),
+ permissionList() {
+ return {
+ allSyncBtn: this.vaildData(this.permission.integration.integration_allSync, false),
+ autoBtn: this.vaildData(this.permission.integration.integration_auto, false),
+ bottomAutoBtn: this.vaildData(this.permission.integration.integration_bottomAuto, false),
+ oneSyncBtn: this.vaildData(this.permission.integration.integration_oneSync, false),
+ saveBtn: this.vaildData(this.permission.integration.integration_save, false),
+ }
+ },
},
methods: {
handlerAuto() {
@@ -314,7 +326,7 @@
}
})
})
- this.$message.success('濉厖鎴愬姛锛�');
+ this.$message.success('鑷姩濉厖鎴愬姛锛岃纭灞炴�у悗鐐瑰嚮淇濆瓨锛�');
})
.catch(error => {
console.log(error)
@@ -337,7 +349,7 @@
}
})
})
-
+ this.$message.success('鑷姩濉厖鎴愬姛锛岃纭灞炴�у悗鐐瑰嚮淇濆瓨锛�')
})
},
calculateSimilarity(str1, str2) {
diff --git a/Source/UBCS-WEB/src/views/integration/vciAttribute.vue b/Source/UBCS-WEB/src/views/integration/vciAttribute.vue
index 24e1a38..33230eb 100644
--- a/Source/UBCS-WEB/src/views/integration/vciAttribute.vue
+++ b/Source/UBCS-WEB/src/views/integration/vciAttribute.vue
@@ -4,8 +4,21 @@
@size-change="sizeChange" @row-dblclick="handleRowClick" @row-update="handleUpdate"
@selection-change="selectChange">
<template slot="menuLeft">
- <el-button plain size="small" type="success" @click="savaHandler">淇濆瓨</el-button>
- <el-button plain size="small" type="primary" @click="syncHandler">鍚屾</el-button>
+ <el-button v-if="permissionList.saveBtn" plain size="small" type="success" @click="savaHandler">淇濆瓨</el-button>
+ <el-button v-if="permissionList.syncBtn" plain size="small" type="primary" @click="syncHandler">鍚屾</el-button>
+ <span style="width: 200px;display: inline-block">
+ <el-select slot="prepend" v-model="searchSelect" placeholder="璇烽�夋嫨" size="small">
+ <el-option v-for="item in searchData" :key="item.prop" :label="item.label" :value="item.prop"
+ ></el-option>
+ </el-select>
+ </span>
+ <span style="margin-left: 5px">
+ <el-input v-model="searchValue" class="attrSearch" clearable placeholder="璇疯緭鍏ュ唴瀹�"
+ prefix-icon="el-icon-search"
+ size="small" type="text"></el-input>
+ <el-button v-if="permissionList.searchBtn" icon="el-icon-search" plain size="small" type="primary"
+ @click="searchHandler"> 鎼滅储</el-button>
+ </span>
</template>
</avue-crud>
</basic-container>
@@ -14,11 +27,29 @@
<script>
import {getGroupAttrPoolALlList, editGroupAttr, syncGroupAttrMapping} from '@/api/vciAttrbute'
import {getPage} from "@/api/omd/OmdAttribute";
+import {mapGetters} from "vuex";
export default {
name: "vciAttribute",
data() {
return {
+ searchSelect: "groupAttrKey",
+ searchValue: '',
+ searchData: [
+ {
+ label: "闆嗗洟灞炴�х紪鍙�",
+ prop: "groupAttrKey",
+ align: "left",
+ display: false,
+ width: 200,
+ required: true
+ }, {
+ label: "闆嗗洟灞炴�у悕绉�",
+ prop: "groupAttrName",
+ align: "left",
+ display: false
+ }
+ ],
data: [],
options: {
height: 'auto',
@@ -86,9 +117,30 @@
computed: {
codeMetaColumn() {
return this.options.column.find(column => column.prop === 'codeMetaAttrName');
- }
+ },
+ ...mapGetters(["permission"]),
+ permissionList() {
+ return {
+ saveBtn: this.vaildData(this.permission.vciAttribute.attribute_save, false),
+ syncBtn: this.vaildData(this.permission.vciAttribute.attribute_sync, false),
+ searchBtn: this.vaildData(this.permission.vciAttribute.attribute_search, false),
+ }
+ },
},
methods: {
+ searchHandler() {
+ console.log(this.searchSelect)
+ const params = {
+ [`conditionMap[${this.searchSelect}_like]`]: this.searchValue,
+ page: this.page.currentPage,
+ limit: this.page.pageSize
+ }
+ getGroupAttrPoolALlList(params).then(res => {
+ const data = res.data.data;
+ this.data = data.records;
+ this.page.total = data.total;
+ })
+ },
codeMetaDis() {
for (const item of this.data) {
if (item.codeMetaAttrOid && item.codeMetaAttrKey && item.codeMetaAttrName) {
--
Gitblit v1.9.3