优化平台端租户端
This commit is contained in:
@@ -12,6 +12,11 @@
|
||||
{{ roleDetail.status === 1 ? "启用" : "禁用" }}
|
||||
</el-tag>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="分类">
|
||||
<el-tag :type="roleDetail.cid === 1 ? 'warning' : 'primary'" size="small">
|
||||
{{ roleDetail.cid === 1 ? "平台角色" : "租户角色" }}
|
||||
</el-tag>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="权限列表">
|
||||
<div v-if="menuNames.length > 0" style="max-height: 300px; overflow-y: auto;">
|
||||
<el-tag
|
||||
@@ -44,7 +49,7 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, watch, computed } from "vue";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { getRoleById } from "@/api/role";
|
||||
import { getPlatformRoleById } from "@/api/platformRole";
|
||||
import { getAllMenus } from "@/api/menu";
|
||||
|
||||
interface Props {
|
||||
@@ -67,11 +72,11 @@ const allMenus = ref<any[]>([]);
|
||||
// 监听 modelValue
|
||||
watch(
|
||||
() => props.modelValue,
|
||||
(val) => {
|
||||
async (val) => {
|
||||
visible.value = val;
|
||||
if (val && props.roleId) {
|
||||
loadRoleDetail();
|
||||
loadMenus();
|
||||
await loadRoleDetail();
|
||||
await loadMenus(roleDetail.value.cid);
|
||||
}
|
||||
}
|
||||
);
|
||||
@@ -127,7 +132,7 @@ const loadRoleDetail = async () => {
|
||||
|
||||
loading.value = true;
|
||||
try {
|
||||
const res = await getRoleById(props.roleId);
|
||||
const res = await getPlatformRoleById(props.roleId);
|
||||
if (res.code === 200) {
|
||||
roleDetail.value = res.data || {};
|
||||
} else {
|
||||
@@ -141,10 +146,12 @@ const loadRoleDetail = async () => {
|
||||
}
|
||||
};
|
||||
|
||||
// 加载菜单树
|
||||
const loadMenus = async () => {
|
||||
// 加载菜单树:租户角色(cid=2)只展示租户端菜单;平台角色展示全部权限
|
||||
const loadMenus = async (cid?: number) => {
|
||||
try {
|
||||
const res = await getAllMenus();
|
||||
const isTenant = cid === undefined || cid === 2;
|
||||
const params = isTenant ? { cid: 2 } : {};
|
||||
const res = await getAllMenus(params);
|
||||
if (res.code === 200) {
|
||||
allMenus.value = res.data || [];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user