From c8471e1aa4b0945f6bd7b7a6ee5050871cf4769c Mon Sep 17 00:00:00 2001 From: colin Date: Fri, 20 Dec 2024 17:59:45 +0800 Subject: [PATCH] =?UTF-8?q?feat(roles):=20=E5=A2=9E=E5=8A=A0=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E5=AE=9E=E4=BD=93=E5=8F=98=E6=9B=B4=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/roles/RoleTable.vue | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/apps/vben5/packages/@abp/identity/src/components/roles/RoleTable.vue b/apps/vben5/packages/@abp/identity/src/components/roles/RoleTable.vue index 5e8a8d044..434b6f481 100644 --- a/apps/vben5/packages/@abp/identity/src/components/roles/RoleTable.vue +++ b/apps/vben5/packages/@abp/identity/src/components/roles/RoleTable.vue @@ -7,10 +7,11 @@ import type { IdentityRoleDto } from '../../types/roles'; import { defineAsyncComponent, h } from 'vue'; import { useAccess } from '@vben/access'; -import { useVbenModal } from '@vben/common-ui'; +import { useVbenDrawer, useVbenModal } from '@vben/common-ui'; import { createIconifyIcon } from '@vben/icons'; import { $t } from '@vben/locales'; +import { AuditLogPermissions, EntityChangeDrawer } from '@abp/auditing'; import { useAbpStore } from '@abp/core'; import { PermissionModal } from '@abp/permission'; import { useVbenVxeGrid } from '@abp/ui'; @@ -32,9 +33,10 @@ const MenuItem = Menu.Item; const MenuOutlined = createIconifyIcon('heroicons-outline:menu-alt-3'); const ClaimOutlined = createIconifyIcon('la:id-card-solid'); const PermissionsOutlined = createIconifyIcon('icon-park-outline:permissions'); +const AuditLogIcon = createIconifyIcon('fluent-mdl2:compliance-audit'); + const RoleModal = defineAsyncComponent(() => import('./RoleModal.vue')); const ClaimModal = defineAsyncComponent(() => import('./RoleClaimModal.vue')); - const abpStore = useAbpStore(); const { hasAccessByCodes } = useAccess(); const [RolePermissionModal, permissionModalApi] = useVbenModal({ @@ -43,6 +45,9 @@ const [RolePermissionModal, permissionModalApi] = useVbenModal({ const [RoleClaimModal, claimModalApi] = useVbenModal({ connectedComponent: ClaimModal, }); +const [RoleChangeDrawer, roleChangeDrawerApi] = useVbenDrawer({ + connectedComponent: EntityChangeDrawer, +}); const formOptions: VbenFormProps = { // 默认展开 @@ -143,6 +148,14 @@ const handleMenuClick = async (row: IdentityRoleDto, info: MenuInfo) => { claimModalApi.open(); break; } + case 'entity-changes': { + roleChangeDrawerApi.setData({ + entityId: row.id, + entityTypeFullName: 'Volo.Abp.Identity.IdentityRole', + }); + roleChangeDrawerApi.open(); + break; + } case 'permissions': { const roles = abpStore.application?.currentUser.roles ?? []; permissionModalApi.setData({ @@ -237,6 +250,13 @@ const handleMenuClick = async (row: IdentityRoleDto, info: MenuInfo) => { > {{ $t('AppPlatform.Menu:Manage') }} + + {{ $t('AbpAuditLogging.EntitiesChanged') }} +