Browse Source
feat(permission-management): update resource permission management modal with dynamic provider key selection
pull/24374/head
maliming
11 months ago
No known key found for this signature in database
GPG Key ID: A646B9CB645ECEA4
4 changed files with
47 additions and
4 deletions
-
modules/identity/src/Volo.Abp.PermissionManagement.Domain.Identity/Volo/Abp/PermissionManagement/Identity/RoleResourcePermissionProviderKeyLookupService.cs
-
modules/identity/src/Volo.Abp.PermissionManagement.Domain.Identity/Volo/Abp/PermissionManagement/Identity/UserResourcePermissionProviderKeyLookupService.cs
-
modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Pages/AbpPermissionManagement/AddResourcePermissionManagementModal.cshtml
-
modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Pages/AbpPermissionManagement/add-resource-permission-management-modal.js
|
|
@ -2,6 +2,7 @@ using System.Collections.Generic; |
|
|
using System.Linq; |
|
|
using System.Linq; |
|
|
using System.Threading; |
|
|
using System.Threading; |
|
|
using System.Threading.Tasks; |
|
|
using System.Threading.Tasks; |
|
|
|
|
|
using Volo.Abp.Authorization.Permissions.Resources; |
|
|
using Volo.Abp.DependencyInjection; |
|
|
using Volo.Abp.DependencyInjection; |
|
|
using Volo.Abp.Identity; |
|
|
using Volo.Abp.Identity; |
|
|
using Volo.Abp.Identity.Localization; |
|
|
using Volo.Abp.Identity.Localization; |
|
|
@ -11,7 +12,7 @@ namespace Volo.Abp.PermissionManagement.Identity; |
|
|
|
|
|
|
|
|
public class RoleResourcePermissionProviderKeyLookupService : IResourcePermissionProviderKeyLookupService, ITransientDependency |
|
|
public class RoleResourcePermissionProviderKeyLookupService : IResourcePermissionProviderKeyLookupService, ITransientDependency |
|
|
{ |
|
|
{ |
|
|
public string Name => "Role"; |
|
|
public string Name => RoleResourcePermissionValueProvider.ProviderName; |
|
|
|
|
|
|
|
|
public ILocalizableString DisplayName { get; } |
|
|
public ILocalizableString DisplayName { get; } |
|
|
|
|
|
|
|
|
|
|
|
@ -2,6 +2,7 @@ using System.Collections.Generic; |
|
|
using System.Linq; |
|
|
using System.Linq; |
|
|
using System.Threading; |
|
|
using System.Threading; |
|
|
using System.Threading.Tasks; |
|
|
using System.Threading.Tasks; |
|
|
|
|
|
using Volo.Abp.Authorization.Permissions.Resources; |
|
|
using Volo.Abp.DependencyInjection; |
|
|
using Volo.Abp.DependencyInjection; |
|
|
using Volo.Abp.Identity; |
|
|
using Volo.Abp.Identity; |
|
|
using Volo.Abp.Identity.Localization; |
|
|
using Volo.Abp.Identity.Localization; |
|
|
@ -11,7 +12,7 @@ namespace Volo.Abp.PermissionManagement.Identity; |
|
|
|
|
|
|
|
|
public class UserResourcePermissionProviderKeyLookupService : IResourcePermissionProviderKeyLookupService, ITransientDependency |
|
|
public class UserResourcePermissionProviderKeyLookupService : IResourcePermissionProviderKeyLookupService, ITransientDependency |
|
|
{ |
|
|
{ |
|
|
public string Name => "User"; |
|
|
public string Name => UserResourcePermissionValueProvider.ProviderName; |
|
|
|
|
|
|
|
|
public ILocalizableString DisplayName { get; } |
|
|
public ILocalizableString DisplayName { get; } |
|
|
|
|
|
|
|
|
|
|
|
@ -16,7 +16,7 @@ |
|
|
<script src="/Pages/AbpPermissionManagement/add-resource-permission-management-modal.js"></script> |
|
|
<script src="/Pages/AbpPermissionManagement/add-resource-permission-management-modal.js"></script> |
|
|
|
|
|
|
|
|
<form method="post" asp-page="/AbpPermissionManagement/AddResourcePermissionManagementModal"> |
|
|
<form method="post" asp-page="/AbpPermissionManagement/AddResourcePermissionManagementModal"> |
|
|
<abp-modal> |
|
|
<abp-modal id="addResourcePermissionManagementModal"> |
|
|
<abp-modal-header title="@(L["AddResourcePermissions"].Value)"></abp-modal-header> |
|
|
<abp-modal-header title="@(L["AddResourcePermissions"].Value)"></abp-modal-header> |
|
|
<input asp-for="@Model.ResourceName" /> |
|
|
<input asp-for="@Model.ResourceName" /> |
|
|
<input asp-for="@Model.ResourceKey" /> |
|
|
<input asp-for="@Model.ResourceKey" /> |
|
|
@ -38,7 +38,12 @@ |
|
|
} |
|
|
} |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<abp-input asp-for="@Model.AddModel.ProviderKey"/> |
|
|
|
|
|
|
|
|
<div class="mb-3"> |
|
|
|
|
|
<label class="form-label" for="AddModel.ProviderKey">ProviderKey:</label> |
|
|
|
|
|
<select asp-for="@Model.AddModel.ProviderKey" id="AddModel.ProviderKey" class="form-control"></select> |
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="mb-3" id="permissionList"> |
|
|
<div class="mb-3" id="permissionList"> |
|
|
<div class="mb-1 d-flex align-items-center justify-content-between"> |
|
|
<div class="mb-1 d-flex align-items-center justify-content-between"> |
|
|
<label class="form-labe">Permissions:</label> |
|
|
<label class="form-labe">Permissions:</label> |
|
|
|
|
|
@ -8,4 +8,40 @@ var abp = abp || {}; |
|
|
$items.on("change", function () { |
|
|
$items.on("change", function () { |
|
|
$all.prop("checked", $items.length === $items.filter(":checked").length); |
|
|
$all.prop("checked", $items.length === $items.filter(":checked").length); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
var $providerKey = $("#AddModel\\.ProviderKey"); |
|
|
|
|
|
$providerKey.select2({ |
|
|
|
|
|
ajax: { |
|
|
|
|
|
url: '/api/permission-management/permissions/search-resource-provider-keys', |
|
|
|
|
|
delay: 250, |
|
|
|
|
|
dataType: "json", |
|
|
|
|
|
data: function (params) { |
|
|
|
|
|
var query = {}; |
|
|
|
|
|
query["serviceName"] = $('input[name="AddModel.ProviderName"]:checked').val(); |
|
|
|
|
|
query["filter"] = params.term; |
|
|
|
|
|
return query; |
|
|
|
|
|
}, |
|
|
|
|
|
processResults: function (data) { |
|
|
|
|
|
var keyValues = []; |
|
|
|
|
|
data.keys.forEach(function (item, index) { |
|
|
|
|
|
keyValues.push({ |
|
|
|
|
|
id: item["providerKey"], |
|
|
|
|
|
text: item["providerDisplayName"], |
|
|
|
|
|
displayName: item["providerDisplayName"] |
|
|
|
|
|
}) |
|
|
|
|
|
}); |
|
|
|
|
|
return { |
|
|
|
|
|
results: keyValues |
|
|
|
|
|
}; |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
width: '100%', |
|
|
|
|
|
dropdownParent: $('#addResourcePermissionManagementModal'), |
|
|
|
|
|
language: abp.localization.currentCulture.cultureName |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
$('input[name="AddModel.ProviderName"]').change(function () { |
|
|
|
|
|
$providerKey.val(null).trigger('change'); |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
})(jQuery); |
|
|
})(jQuery); |
|
|
|