Only keep one method of `IPermissionIntegrationService`.

pull/17337/head
maliming 2 years ago
parent 39879ba929
commit ad510cead1
No known key found for this signature in database
GPG Key ID: A646B9CB645ECEA4

@ -7,7 +7,5 @@ namespace Volo.Abp.PermissionManagement.Integration;
[IntegrationService]
public interface IPermissionIntegrationService : IApplicationService
{
Task<IsGrantedOutput> IsGrantedAsync(IsGrantedInput input);
Task<List<IsGrantedOutput>> IsGrantedAsync(List<IsGrantedInput> input);
Task<List<PermissionGrantOutput> > IsGrantedAsync(List<PermissionGrantInput> input);
}

@ -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<string> GrantedPermissionNames { get; set; }
public Dictionary<string, bool> Permissions { get; set; }
}

@ -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<IsGrantedOutput> IsGrantedAsync(IsGrantedInput input)
public virtual async Task<List<PermissionGrantOutput>> IsGrantedAsync(List<PermissionGrantInput> 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<List<IsGrantedOutput>> IsGrantedAsync(List<IsGrantedInput> input)
{
var result = new List<IsGrantedOutput>();
var result = new List<PermissionGrantOutput>();
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)
});
}

@ -18,19 +18,11 @@ namespace Volo.Abp.PermissionManagement.Integration;
[IntegrationService]
public partial class PermissionIntegrationClientProxy : ClientProxyBase<IPermissionIntegrationService>, IPermissionIntegrationService
{
public virtual async Task<IsGrantedOutput> IsGrantedAsync(IsGrantedInput input)
public virtual async Task<List<PermissionGrantOutput>> IsGrantedAsync(List<PermissionGrantInput> input)
{
return await RequestAsync<IsGrantedOutput>(nameof(IsGrantedAsync), new ClientProxyRequestTypeValue
return await RequestAsync<List<PermissionGrantOutput>>(nameof(IsGrantedAsync), new ClientProxyRequestTypeValue
{
{ typeof(IsGrantedInput), input }
});
}
public async Task<List<IsGrantedOutput>> IsGrantedAsync(List<IsGrantedInput> input)
{
return await RequestAsync<List<IsGrantedOutput>>(nameof(IsGrantedAsync), new ClientProxyRequestTypeValue
{
{ typeof(IsGrantedInput), input }
{ typeof(List<PermissionGrantInput>), input }
});
}
}

@ -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<Volo.Abp.PermissionManagement.Integration.PermissionGrantInput>",
"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<Volo.Abp.PermissionManagement.Integration.IsGrantedInput>",
"typeSimple": "[Volo.Abp.PermissionManagement.Integration.IsGrantedInput]",
"isOptional": false,
"defaultValue": null
}
],
"returnValue": {
"type": "System.Collections.Generic.List<Volo.Abp.PermissionManagement.Integration.IsGrantedOutput>",
"typeSimple": "[Volo.Abp.PermissionManagement.Integration.IsGrantedOutput]"
"type": "System.Collections.Generic.List<Volo.Abp.PermissionManagement.Integration.PermissionGrantOutput>",
"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<Volo.Abp.PermissionManagement.Integration.PermissionGrantInput>",
"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<Volo.Abp.PermissionManagement.Integration.PermissionGrantInput>",
"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<Volo.Abp.PermissionManagement.Integration.PermissionGrantOutput>",
"typeSimple": "[Volo.Abp.PermissionManagement.Integration.PermissionGrantOutput]"
},
"allowAnonymous": null,
"implementFrom": "Volo.Abp.PermissionManagement.Integration.IPermissionIntegrationService"

@ -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<IsGrantedOutput> IsGrantedAsync(IsGrantedInput input)
{
return PermissionIntegrationService.IsGrantedAsync(input);
}
[HttpPost]
[Route("is-granted/multiple")]
public virtual Task<List<IsGrantedOutput>> IsGrantedAsync(List<IsGrantedInput> input)
public virtual Task<List<PermissionGrantOutput>> IsGrantedAsync(List<PermissionGrantInput> input)
{
return PermissionIntegrationService.IsGrantedAsync(input);
}

Loading…
Cancel
Save