namespace ROLAC.API.Entities; /// /// One row per (Role × Module). Stores what the role may do on that module. /// The effective permission for a user is the boolean OR of these flags across /// all of the user's roles. super_admin is never stored here — it bypasses /// permission checks entirely (see PermissionAuthorizationHandler). /// public class RolePermission { public int Id { get; set; } /// FK to AspNetRoles.Id. public string RoleId { get; set; } = null!; /// Module constant name (see ). public string Module { get; set; } = null!; public bool CanRead { get; set; } public bool CanWrite { get; set; } public bool CanDelete { get; set; } public bool CanApprove { get; set; } public AppRole Role { get; set; } = null!; }