using System.Collections.Generic; using Abp.Authorization; using Abp.MultiTenancy; namespace IwbZero.Zero.Configuration { public class StaticRoleDefinition { public string RoleName { get; } public bool GrantAllPermissionsByDefault { get; set; } public List GrantedPermissions { get; } public MultiTenancySides Side { get; } public StaticRoleDefinition(string roleName, MultiTenancySides side, bool grantAllPermissionsByDefault = false) { RoleName = roleName; Side = side; GrantAllPermissionsByDefault = grantAllPermissionsByDefault; GrantedPermissions = new List(); } public virtual bool IsGrantedByDefault(Permission permission) { return GrantAllPermissionsByDefault || GrantedPermissions.Contains(permission.Name); } } }