From 77d68ad37eea074ec6bf55df166ff54dd0e26800 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 24 十月 2023 12:35:37 +0800
Subject: [PATCH] 修改角色权限,菜单配置查询接口
---
Source/UBCS-WEB/src/views/authority/role.vue | 79 ++++++++++++++++++++++++---------------
1 files changed, 48 insertions(+), 31 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/authority/role.vue b/Source/UBCS-WEB/src/views/authority/role.vue
index 0384af2..55bd32a 100644
--- a/Source/UBCS-WEB/src/views/authority/role.vue
+++ b/Source/UBCS-WEB/src/views/authority/role.vue
@@ -1,22 +1,24 @@
<template>
<basic-container>
<avue-crud :option="option"
- :table-loading="loading"
- :data="data"
- ref="crud"
- v-model="form"
- :permission="permissionList"
- :before-open="beforeOpen"
- @row-del="rowDel"
- @row-update="rowUpdate"
- @row-save="rowSave"
- @search-change="searchChange"
- @search-reset="searchReset"
- @selection-change="selectionChange"
- @current-change="currentChange"
- @size-change="sizeChange"
- @refresh-change="refreshChange"
- @on-load="onLoad">
+ :table-loading="loading"
+ :data="data"
+ ref="crud"
+ :page.sync="page"
+ v-model="form"
+ :permission="permissionList"
+ :before-open="beforeOpen"
+ @row-del="rowDel"
+ @row-update="rowUpdate"
+ @row-save="rowSave"
+ @search-change="searchChange"
+ @search-reset="searchReset"
+ @row-click="clickRowChange"
+ @selection-change="selectionChange"
+ @current-change="currentChange"
+ @size-change="sizeChange"
+ @refresh-change="refreshChange"
+ @on-load="onLoad">
<template slot="menuLeft">
<el-button type="danger"
size="small"
@@ -25,19 +27,20 @@
plain
@click="handleDelete">鍒� 闄�
</el-button>
+ <!-- v-if="userInfo.role_name.includes('admin')" -->
<el-button size="small"
- icon="el-icon-setting"
- @click="handleRole"
- v-if="userInfo.role_name.includes('admin')"
- plain>鏉冮檺璁剧疆
+ icon="el-icon-setting"
+ @click="handleRole"
+ plain>鏉冮檺璁剧疆
</el-button>
</template>
</avue-crud>
<el-dialog title="瑙掕壊鏉冮檺閰嶇疆"
- append-to-body
- :visible.sync="box"
- width="345px">
- <el-tabs type="border-card">
+ append-to-body
+ :visible.sync="box"
+ width="350px"
+ style="height: 115vh; margin-top: -13vh; overflow: hidden">
+ <el-tabs type="border-card" style="overflow-y: auto; height: 72vh">
<el-tab-pane label="鑿滃崟鏉冮檺">
<el-tree :data="menuGrantList"
show-checkbox
@@ -78,9 +81,10 @@
</template>
<script>
- import {add, getList, getRole, getRoleTreeById, grant, grantTree, remove, update} from "@/api/system/role";
+ import {add, getPage, getRole, getRoleTreeById, grant, grantTree, remove, update} from "@/api/system/role";
import {mapGetters} from "vuex";
import website from '@/config/website';
+ import {setStore, getStore} from '@/util/store'
export default {
data() {
@@ -107,8 +111,10 @@
total: 0
},
option: {
+ height: "auto",
tip: false,
- simplePage: true,
+ columnBtn:false,
+ // simplePage: true,
searchShow: true,
searchMenuSpan: 6,
tree: true,
@@ -118,6 +124,7 @@
viewBtn: true,
dialogWidth: 900,
dialogClickModal: false,
+ highlightCurrentRow: true, //琛岄�変腑鏃堕珮浜�
column: [
{
label: "瑙掕壊鍚嶇О",
@@ -137,8 +144,8 @@
prop: "tenantId",
type: "tree",
dicUrl: "/api/ubcs-system/tenant/select",
- addDisplay: false,
- editDisplay: false,
+ addDisplay: website.tenantId === getStore({name: 'tenantId'}),
+ editDisplay: website.tenantId === getStore({name: 'tenantId'}),
viewDisplay: website.tenantMode,
span: 24,
props: {
@@ -149,7 +156,7 @@
search: website.tenantMode,
rules: [{
required: true,
- message: "璇疯緭鍏ユ墍灞炵鎴�",
+ message: "璇烽�夋嫨鎵�灞炵鎴�",
trigger: "click"
}]
},
@@ -304,6 +311,13 @@
},
selectionChange(list) {
this.selectionList = list;
+ this.$refs.crud.setCurrentRow(this.selectionList[list.length-1]);
+ },
+ clickRowChange(row){
+ this.selectionList = row;
+ this.$refs.crud.toggleSelection();
+ this.$refs.crud.setCurrentRow(row);
+ this.$refs.crud.toggleRowSelection(row); //閫変腑褰撳墠琛�
},
selectionClear() {
this.selectionList = [];
@@ -360,6 +374,7 @@
},
currentChange(currentPage) {
this.page.currentPage = currentPage;
+
},
sizeChange(pageSize) {
this.page.pageSize = pageSize;
@@ -369,8 +384,10 @@
},
onLoad(page, params = {}) {
this.loading = true;
- getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
- this.data = res.data.data;
+ getPage(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
+ const data = res.data.data;
+ this.data = data.records;
+ this.page.total = data.total;
this.loading = false;
this.selectionClear();
});
--
Gitblit v1.9.3