using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Abp.Domain.Entities; using Abp.Domain.Entities.Auditing; namespace VberZero.BaseSystem; /// /// 用于授予/拒绝角色或用户等的权限。 /// [Table("Sys_Permissions")] public abstract class PermissionSetting : CreationAuditedEntity, IMayHaveTenant { public const int MaxNameLength = 128; public const int MasterValueMaxLength = 100; public const int AccessValueMaxLength = 500; public virtual int? TenantId { get; set; } /// /// 权限的唯一名称 /// [Required] [StringLength(MaxNameLength)] public virtual string Name { get; set; } public int? Master { get; set; } [StringLength(MasterValueMaxLength)] public virtual string MasterValue { get; set; } public int? Access { get; set; } [StringLength(AccessValueMaxLength)] public string AccessValue { get; set; } /// /// 是否授予此权限。 /// 默认值:true /// public virtual bool IsGranted { get; set; } protected PermissionSetting() { IsGranted = true; } public class MasterDefined { public const int User = 1; public const int Role = 2; } }