gandalf-reborn/Data/Entities/Security/AppUserRelationInternalAuthorityRelationEntity.cs
2025-03-02 12:51:02 +01:00

29 lines
1.2 KiB
C#

using W542.GandalfReborn.Data.Entities.App;
using W542.GandalfReborn.Data.Entities.Base;
using W542.GandalfReborn.Data.Entities.Subject;
using W542.GandalfReborn.Data.Entities.Tenant;
using W542.GandalfReborn.Data.Entities.Version;
namespace W542.GandalfReborn.Data.Entities.Security;
public class AppSubjectRelationInternalAuthorityRelationEntity : AppSubjectRelationInternalAuthorityRelationData<long>, IMappingEntity, IVersionableEntity
{
public AppSubjectRelationEntity? AppSubjectRelation { get; set; }
public AuthorityEntity? InternalAuthority { get; set; }
}
public class AppSubjectRelationInternalAuthorityRelationVersionEntity : AppSubjectRelationInternalAuthorityRelationData<long>, IVersionEntity<AppSubjectRelationInternalAuthorityRelationEntity>
{
public SubjectEntity? Suspect { get; set; }
public long SuspectId { get; set; }
public VersionAction Action { get; set; }
public DateTimeOffset At { get; set; }
public AppSubjectRelationInternalAuthorityRelationEntity? Reference { get; set; }
}
public class AppSubjectRelationInternalAuthorityRelationData<T> where T : IConvertible
{
public required T AppId { get; set; }
public required T SubjectId { get; set; }
public required T InternalAuthorityId { get; set; }
}