From 60f6dc0e78c7426fa9ab77301e94bfd3b96d6951 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Tue, 8 Sep 2020 20:53:19 +0300 Subject: [PATCH] Initial PermissionManagementModal --- .../Pages/Identity/RoleManagement.razor | 6 +-- .../Pages/Identity/RoleManagement.razor.cs | 4 ++ .../PermissionManagementModal.razor | 43 +++++++++++++++-- .../PermissionManagementModal.razor.cs | 48 +++++++++++++++++++ .../_Imports.razor | 4 ++ 5 files changed, 99 insertions(+), 6 deletions(-) create mode 100644 modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs diff --git a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor index e6d34cb2c4..361e197cec 100644 --- a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor +++ b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor @@ -35,8 +35,8 @@ @L["Edit"] - @L["Permissions"] - + @L["Permissions"] + @L["Delete"] @@ -109,4 +109,4 @@ -@**@ \ No newline at end of file + \ No newline at end of file diff --git a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs index 9b86d68fdf..f8a9aefdd4 100644 --- a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs +++ b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs @@ -9,11 +9,14 @@ using Volo.Abp.ObjectExtending; using Volo.Abp.Application.Dtos; using Volo.Abp.AspNetCore.Components.WebAssembly; using Volo.Abp.ObjectMapping; +using Volo.Abp.PermissionManagement.Blazor.Components; namespace Volo.Abp.Identity.Blazor.Pages.Identity { public partial class RoleManagement { + private const string PermissionProviderName = "R"; + [Inject] private IIdentityRoleAppService RoleAppService { get; set; } [Inject] private IUiMessageService UiMessageService { get; set; } [Inject] private IObjectMapper ObjectMapper { get; set; } @@ -30,6 +33,7 @@ namespace Volo.Abp.Identity.Blazor.Pages.Identity private Modal _createModal; private Modal _editModal; + private PermissionManagementModal _permissionManagementModal; public RoleManagement() { diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor index c17f33c52b..bbe76dd058 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor @@ -1,3 +1,40 @@ -
- Permission management modal! -
+@using Microsoft.Extensions.Localization +@using Volo.Abp.PermissionManagement.Localization +@inject IStringLocalizer L + + + + + Edit role + + + + @if (_groups != null) + { + + + @foreach (var group in _groups) + { + @group.DisplayName + } + + + @foreach (var group in _groups) + { + + @foreach (var permission in group.Permissions) + { + @permission.DisplayName (@permission.IsGranted.ToString()) + } + + } + + + } + + + + + + + \ No newline at end of file diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs new file mode 100644 index 0000000000..e64cacf447 --- /dev/null +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs @@ -0,0 +1,48 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using Blazorise; +using Microsoft.AspNetCore.Components; + +namespace Volo.Abp.PermissionManagement.Blazor.Components +{ + public partial class PermissionManagementModal + { + [Inject] private IPermissionAppService PermissionAppService { get; set; } + + private Modal _modal; + + private string _providerName; + private string _providerKey; + + private string _entityDisplayName; + private List _groups; + + public async Task OpenAsync(string providerName, string providerKey) + { + _providerName = providerName; + _providerKey = providerKey; + + var result = await PermissionAppService.GetAsync(_providerName, _providerKey); + + _entityDisplayName = result.EntityDisplayName; + _groups = result.Groups; + + _modal.Show(); + } + + private void CloseModal() + { + _modal.Hide(); + } + + private async Task SaveAsync() + { + + } + + public string GetNormalizedGroupName(string name) + { + return "PermissionGroup_" + name.Replace(".", "_"); + } + } +} diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/_Imports.razor b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/_Imports.razor index 77285129da..4685ac9893 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/_Imports.razor +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/_Imports.razor @@ -1 +1,5 @@ @using Microsoft.AspNetCore.Components.Web +@using Volo.Abp.AspNetCore.Components.WebAssembly +@using Volo.Abp.BlazoriseUI +@using Blazorise +@using Blazorise.DataGrid \ No newline at end of file