From 4e385222a7b56fd7d957a4cd49d48ee74fd4127d Mon Sep 17 00:00:00 2001 From: Ryan Wang Date: Fri, 22 Jul 2022 12:49:06 +0800 Subject: [PATCH] feat: show the number of permissions under the role Signed-off-by: Ryan Wang --- src/modules/system/roles/RoleDetail.vue | 12 +++++++++++- src/modules/system/roles/RoleList.vue | 14 ++++++++++++-- .../system/roles/components/RoleCreationModal.vue | 3 ++- 3 files changed, 25 insertions(+), 4 deletions(-) diff --git a/src/modules/system/roles/RoleDetail.vue b/src/modules/system/roles/RoleDetail.vue index aeb51865..56570ac2 100644 --- a/src/modules/system/roles/RoleDetail.vue +++ b/src/modules/system/roles/RoleDetail.vue @@ -178,7 +178,17 @@ onMounted(() => {

- 包含 {{ formState.role?.rules?.length }} 个权限 + 包含 + {{ + JSON.parse( + formState.role.metadata.annotations?.[ + rbacAnnotations.DEPENDENCIES + ] || "[]" + ).length + }} + 个权限

diff --git a/src/modules/system/roles/RoleList.vue b/src/modules/system/roles/RoleList.vue index 5e80ff71..97f2a1f8 100644 --- a/src/modules/system/roles/RoleList.vue +++ b/src/modules/system/roles/RoleList.vue @@ -17,7 +17,7 @@ import { computed, onMounted, ref } from "vue"; import type { Role } from "@halo-dev/api-client"; import { apiClient } from "@halo-dev/admin-shared"; import { roleLabels } from "@/constants/labels"; -import { pluginAnnotations } from "@/constants/annotations"; +import { pluginAnnotations, rbacAnnotations } from "@/constants/annotations"; const createVisible = ref(false); const roles = ref([]); @@ -187,7 +187,17 @@ onMounted(() => {
- 包含 0 个权限 + + 包含 + {{ + JSON.parse( + role.metadata.annotations?.[ + rbacAnnotations.DEPENDENCIES + ] || "[]" + ).length + }} + 个权限 +
diff --git a/src/modules/system/roles/components/RoleCreationModal.vue b/src/modules/system/roles/components/RoleCreationModal.vue index bfbc79a8..742b32ec 100644 --- a/src/modules/system/roles/components/RoleCreationModal.vue +++ b/src/modules/system/roles/components/RoleCreationModal.vue @@ -120,7 +120,7 @@ watch(