TourIAm/TIAM.Entities/Permissions/PermissionContextMapping.cs

31 lines
1.1 KiB
C#

using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using AyCode.Interfaces.Entities;
using AyCode.Interfaces.TimeStampInfo;
namespace TIAM.Entities.Permissions;
[Table("PermissionContextMapping")]
public class PermissionContextMapping : IEntityGuid, ITimeStampInfo
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
public Guid Id { get; set; }
public Guid SubjectId { get; set; } //group or user
public short SubjectType { get; set; } //1 for user, 2 for group
public int Permissions { get; set; }
public bool IsBuiltin { get; set; }
public DateTime Created { get; set; }
public DateTime Modified { get; set; }
public PermissionContextMapping(Guid subjectId, short subjectType, int permissions, bool isBuiltin) : this(Guid.NewGuid(), subjectId, subjectType, permissions, isBuiltin) { }
public PermissionContextMapping(Guid id, Guid subjectId, short subjectType, int permissions, bool isBuiltin)
{
Id = id;
SubjectId = subjectId;
SubjectType = subjectType;
Permissions = permissions;
IsBuiltin = isBuiltin;
}
}