pull/8074/head
Mladen Macanovic 5 years ago
parent ae4550c969
commit 0acd1b2a74

@ -11,7 +11,7 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
[Inject] private IPermissionAppService PermissionAppService { get; set; } [Inject] private IPermissionAppService PermissionAppService { get; set; }
private Modal _modal; private Modal _modal;
private string _providerName; private string _providerName;
private string _providerKey; private string _providerKey;
@ -24,7 +24,7 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
private int _grantedPermissionCount = 0; private int _grantedPermissionCount = 0;
private int _notGrantedPermissionCount = 0; private int _notGrantedPermissionCount = 0;
private bool GrantAll private bool GrantAll
{ {
get get
@ -42,16 +42,16 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
{ {
return; return;
} }
_grantedPermissionCount = 0; _grantedPermissionCount = 0;
_notGrantedPermissionCount = 0; _notGrantedPermissionCount = 0;
foreach (var permission in _groups.SelectMany(x => x.Permissions)) foreach (var permission in _groups.SelectMany(x => x.Permissions))
{ {
if (!IsDisabledPermission(permission)) if (!IsDisabledPermission(permission))
{ {
permission.IsGranted = value; permission.IsGranted = value;
if (value) if (value)
{ {
_grantedPermissionCount++; _grantedPermissionCount++;
@ -64,7 +64,7 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
} }
} }
} }
public async Task OpenAsync(string providerName, string providerKey, string entityDisplayName = null) public async Task OpenAsync(string providerName, string providerKey, string entityDisplayName = null)
{ {
_providerName = providerName; _providerName = providerName;
@ -94,7 +94,7 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
_notGrantedPermissionCount++; _notGrantedPermissionCount++;
} }
} }
_selectedTabName = GetNormalizedGroupName(_groups.First().Name); _selectedTabName = GetNormalizedGroupName(_groups.First().Name);
await InvokeAsync(_modal.Show); await InvokeAsync(_modal.Show);
@ -111,13 +111,13 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
{ {
Permissions = _groups Permissions = _groups
.SelectMany(g => g.Permissions) .SelectMany(g => g.Permissions)
.Select(p => new UpdatePermissionDto {IsGranted = p.IsGranted, Name = p.Name}) .Select(p => new UpdatePermissionDto { IsGranted = p.IsGranted, Name = p.Name })
.ToArray() .ToArray()
}; };
await PermissionAppService.UpdateAsync(_providerName, _providerKey, updateDto); await PermissionAppService.UpdateAsync(_providerName, _providerKey, updateDto);
await InvokeAsync(_modal.Hide); await InvokeAsync(_modal.Hide);
} }
private string GetNormalizedGroupName(string name) private string GetNormalizedGroupName(string name)
@ -139,17 +139,17 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
private void PermissionChanged(bool value, PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) private void PermissionChanged(bool value, PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission)
{ {
SetPermissionGrant(permission, value); SetPermissionGrant(permission, value);
if (value && permission.ParentName != null) if (value && permission.ParentName != null)
{ {
var parentPermission = GetParentPermission(permissionGroup, permission); var parentPermission = GetParentPermission(permissionGroup, permission);
SetPermissionGrant(parentPermission, true); SetPermissionGrant(parentPermission, true);
} }
else if(value == false) else if (value == false)
{ {
var childPermissions = GetChildPermissions(permissionGroup, permission); var childPermissions = GetChildPermissions(permissionGroup, permission);
foreach (var childPermission in childPermissions) foreach (var childPermission in childPermissions)
{ {
SetPermissionGrant(childPermission, false); SetPermissionGrant(childPermission, false);
@ -163,7 +163,7 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
{ {
return; return;
} }
if (value) if (value)
{ {
_grantedPermissionCount++; _grantedPermissionCount++;
@ -174,20 +174,20 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components
_grantedPermissionCount--; _grantedPermissionCount--;
_notGrantedPermissionCount++; _notGrantedPermissionCount++;
} }
permission.IsGranted = value; permission.IsGranted = value;
} }
private PermissionGrantInfoDto GetParentPermission(PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) private PermissionGrantInfoDto GetParentPermission(PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission)
{ {
return permissionGroup.Permissions.First(x => x.Name == permission.ParentName); return permissionGroup.Permissions.First(x => x.Name == permission.ParentName);
} }
private List<PermissionGrantInfoDto> GetChildPermissions(PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) private List<PermissionGrantInfoDto> GetChildPermissions(PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission)
{ {
return permissionGroup.Permissions.Where(x => x.Name.StartsWith(permission.Name)).ToList(); return permissionGroup.Permissions.Where(x => x.Name.StartsWith(permission.Name)).ToList();
} }
private bool IsDisabledPermission(PermissionGrantInfoDto permissionGrantInfo) private bool IsDisabledPermission(PermissionGrantInfoDto permissionGrantInfo)
{ {
return _disabledPermissions.Any(x => x == permissionGrantInfo); return _disabledPermissions.Any(x => x == permissionGrantInfo);

Loading…
Cancel
Save