From ad510cead1fe3743719fcd471f674b31c9866478 Mon Sep 17 00:00:00 2001 From: maliming Date: Thu, 10 Aug 2023 14:08:32 +0800 Subject: [PATCH] Only keep one method of `IPermissionIntegrationService`. --- .../IPermissionIntegrationService.cs | 4 +- ...rantedInput.cs => PermissionGrantInput.cs} | 2 +- ...ntedOutput.cs => PermissionGrantOutput.cs} | 4 +- .../PermissionIntegrationService.cs | 20 +++------ ...missionIntegrationClientProxy.Generated.cs | 14 ++----- .../permissionManagement-generate-proxy.json | 41 ++++++------------- .../PermissionIntegrationController.cs | 10 +---- 7 files changed, 25 insertions(+), 70 deletions(-) rename modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/{IsGrantedInput.cs => PermissionGrantInput.cs} (82%) rename modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/{IsGrantedOutput.cs => PermissionGrantOutput.cs} (59%) diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IPermissionIntegrationService.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IPermissionIntegrationService.cs index 62fa2ed107..09b8ae538e 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IPermissionIntegrationService.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IPermissionIntegrationService.cs @@ -7,7 +7,5 @@ namespace Volo.Abp.PermissionManagement.Integration; [IntegrationService] public interface IPermissionIntegrationService : IApplicationService { - Task IsGrantedAsync(IsGrantedInput input); - - Task> IsGrantedAsync(List input); + Task > IsGrantedAsync(List input); } diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IsGrantedInput.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/PermissionGrantInput.cs similarity index 82% rename from modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IsGrantedInput.cs rename to modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/PermissionGrantInput.cs index 4f5c06ed9b..d5639f8b22 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IsGrantedInput.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/PermissionGrantInput.cs @@ -2,7 +2,7 @@ using System; namespace Volo.Abp.PermissionManagement.Integration; -public class IsGrantedInput +public class PermissionGrantInput { public Guid UserId { get; set; } diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IsGrantedOutput.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/PermissionGrantOutput.cs similarity index 59% rename from modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IsGrantedOutput.cs rename to modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/PermissionGrantOutput.cs index df8179387e..613c7407bf 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/IsGrantedOutput.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/Integration/PermissionGrantOutput.cs @@ -3,9 +3,9 @@ using System.Collections.Generic; namespace Volo.Abp.PermissionManagement.Integration; -public class IsGrantedOutput +public class PermissionGrantOutput { public Guid UserId { get; set; } - public List GrantedPermissionNames { get; set; } + public Dictionary Permissions { get; set; } } diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationService.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationService.cs index 4b226c2a84..ff6319dda6 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationService.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationService.cs @@ -1,4 +1,3 @@ -using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; @@ -17,24 +16,15 @@ public class PermissionIntegrationService : ApplicationService, IPermissionInteg PermissionManager = permissionManager; } - public virtual async Task IsGrantedAsync(IsGrantedInput input) + public virtual async Task> IsGrantedAsync(List input) { - return new IsGrantedOutput - { - UserId = input.UserId, - GrantedPermissionNames = (await PermissionManager.GetAsync(input.PermissionNames, UserPermissionValueProvider.ProviderName, input.UserId.ToString())).Result.Where(x => x.IsGranted).Select(x => x.Name).ToList() - }; - } - - public virtual async Task> IsGrantedAsync(List input) - { - var result = new List(); + var result = new List(); foreach (var item in input) { - result.Add(new IsGrantedOutput - { + result.Add(new PermissionGrantOutput { UserId = item.UserId, - GrantedPermissionNames = (await PermissionManager.GetAsync(item.PermissionNames, UserPermissionValueProvider.ProviderName, item.UserId.ToString())).Result.Where(x => x.IsGranted).Select(x => x.Name).ToList() + Permissions = (await PermissionManager.GetAsync(item.PermissionNames, UserPermissionValueProvider.ProviderName, item.UserId.ToString())).Result + .ToDictionary(x => x.Name, x => x.IsGranted) }); } diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/ClientProxies/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationClientProxy.Generated.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/ClientProxies/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationClientProxy.Generated.cs index 1ffc7ad17b..dd43db07f4 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/ClientProxies/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationClientProxy.Generated.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/ClientProxies/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationClientProxy.Generated.cs @@ -18,19 +18,11 @@ namespace Volo.Abp.PermissionManagement.Integration; [IntegrationService] public partial class PermissionIntegrationClientProxy : ClientProxyBase, IPermissionIntegrationService { - public virtual async Task IsGrantedAsync(IsGrantedInput input) + public virtual async Task> IsGrantedAsync(List input) { - return await RequestAsync(nameof(IsGrantedAsync), new ClientProxyRequestTypeValue + return await RequestAsync>(nameof(IsGrantedAsync), new ClientProxyRequestTypeValue { - { typeof(IsGrantedInput), input } - }); - } - - public async Task> IsGrantedAsync(List input) - { - return await RequestAsync>(nameof(IsGrantedAsync), new ClientProxyRequestTypeValue - { - { typeof(IsGrantedInput), input } + { typeof(List), input } }); } } diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/ClientProxies/permissionManagement-generate-proxy.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/ClientProxies/permissionManagement-generate-proxy.json index 2c928da5c1..0e7dec06ee 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/ClientProxies/permissionManagement-generate-proxy.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/ClientProxies/permissionManagement-generate-proxy.json @@ -231,33 +231,16 @@ "parametersOnMethod": [ { "name": "input", - "typeAsString": "Volo.Abp.PermissionManagement.Integration.IsGrantedInput, Volo.Abp.PermissionManagement.Application.Contracts", - "type": "Volo.Abp.PermissionManagement.Integration.IsGrantedInput", - "typeSimple": "Volo.Abp.PermissionManagement.Integration.IsGrantedInput", + "typeAsString": "System.Collections.Generic.List`1[[Volo.Abp.PermissionManagement.Integration.PermissionGrantInput, Volo.Abp.PermissionManagement.Application.Contracts, Version=7.4.0.0, Culture=neutral, PublicKeyToken=null]], System.Private.CoreLib", + "type": "System.Collections.Generic.List", + "typeSimple": "[Volo.Abp.PermissionManagement.Integration.PermissionGrantInput]", "isOptional": false, "defaultValue": null } ], "returnValue": { - "type": "Volo.Abp.PermissionManagement.Integration.IsGrantedOutput", - "typeSimple": "Volo.Abp.PermissionManagement.Integration.IsGrantedOutput" - } - }, - { - "name": "IsGrantedAsync", - "parametersOnMethod": [ - { - "name": "input", - "typeAsString": "System.Collections.Generic.List`1[[Volo.Abp.PermissionManagement.Integration.IsGrantedInput, Volo.Abp.PermissionManagement.Application.Contracts, Version=7.4.0.0, Culture=neutral, PublicKeyToken=null]], System.Private.CoreLib", - "type": "System.Collections.Generic.List", - "typeSimple": "[Volo.Abp.PermissionManagement.Integration.IsGrantedInput]", - "isOptional": false, - "defaultValue": null - } - ], - "returnValue": { - "type": "System.Collections.Generic.List", - "typeSimple": "[Volo.Abp.PermissionManagement.Integration.IsGrantedOutput]" + "type": "System.Collections.Generic.List", + "typeSimple": "[Volo.Abp.PermissionManagement.Integration.PermissionGrantOutput]" } } ] @@ -273,9 +256,9 @@ "parametersOnMethod": [ { "name": "input", - "typeAsString": "Volo.Abp.PermissionManagement.Integration.IsGrantedInput, Volo.Abp.PermissionManagement.Application.Contracts", - "type": "Volo.Abp.PermissionManagement.Integration.IsGrantedInput", - "typeSimple": "Volo.Abp.PermissionManagement.Integration.IsGrantedInput", + "typeAsString": "System.Collections.Generic.List`1[[Volo.Abp.PermissionManagement.Integration.PermissionGrantInput, Volo.Abp.PermissionManagement.Application.Contracts, Version=7.4.0.0, Culture=neutral, PublicKeyToken=null]], System.Private.CoreLib", + "type": "System.Collections.Generic.List", + "typeSimple": "[Volo.Abp.PermissionManagement.Integration.PermissionGrantInput]", "isOptional": false, "defaultValue": null } @@ -285,8 +268,8 @@ "nameOnMethod": "input", "name": "input", "jsonName": null, - "type": "Volo.Abp.PermissionManagement.Integration.IsGrantedInput", - "typeSimple": "Volo.Abp.PermissionManagement.Integration.IsGrantedInput", + "type": "System.Collections.Generic.List", + "typeSimple": "[Volo.Abp.PermissionManagement.Integration.PermissionGrantInput]", "isOptional": false, "defaultValue": null, "constraintTypes": null, @@ -295,8 +278,8 @@ } ], "returnValue": { - "type": "Volo.Abp.PermissionManagement.Integration.IsGrantedOutput", - "typeSimple": "Volo.Abp.PermissionManagement.Integration.IsGrantedOutput" + "type": "System.Collections.Generic.List", + "typeSimple": "[Volo.Abp.PermissionManagement.Integration.PermissionGrantOutput]" }, "allowAnonymous": null, "implementFrom": "Volo.Abp.PermissionManagement.Integration.IPermissionIntegrationService" diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationController.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationController.cs index c5b88fe3bf..4f989c8941 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationController.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi/Volo/Abp/PermissionManagement/Integration/PermissionIntegrationController.cs @@ -1,4 +1,3 @@ -using System; using System.Collections.Generic; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; @@ -21,14 +20,7 @@ public class PermissionIntegrationController: AbpControllerBase, IPermissionInte [HttpPost] [Route("is-granted")] - public virtual Task IsGrantedAsync(IsGrantedInput input) - { - return PermissionIntegrationService.IsGrantedAsync(input); - } - - [HttpPost] - [Route("is-granted/multiple")] - public virtual Task> IsGrantedAsync(List input) + public virtual Task> IsGrantedAsync(List input) { return PermissionIntegrationService.IsGrantedAsync(input); }