LSFE/LSFE.Infrastructure/Entities/Auth/RoleModulePermission.cs
2026-07-30 10:31:04 +08:00

40 lines
1.0 KiB
C#

using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace LSFE.Infrastructure.Entities.Auth
{
[Table("RoleModulePermissions")]
public class RoleModulePermission
{
[Key]
public int PermissionId { get; set; }
[Required]
public string RoleId { get; set; } = default!;
[Required]
public int ModuleId { get; set; }
public bool CanView { get; set; } = false;
public bool CanCreate { get; set; } = false;
public bool CanEdit { get; set; } = false;
public bool CanDelete { get; set; } = false;
[MaxLength(500)]
public string? BadgeQuery { get; set; }
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
public DateTime UpdatedAt { get; set; } = DateTime.UtcNow;
// Navigation Properties
[ForeignKey("RoleId")]
public virtual Role? Role { get; set; }
[ForeignKey("ModuleId")]
public virtual Module? Module { get; set; }
}
}