28 lines
1.2 KiB
C#
28 lines
1.2 KiB
C#
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 TenantSubjectRelationInternalAuthorityRelationEntity : TenantSubjectRelationInternalAuthorityRelationData<long>, IMappingEntity, IVersionableEntity
|
|
{
|
|
public TenantSubjectRelationEntity? TenantSubjectRelation { get; set; }
|
|
public AuthorityEntity? InternalAuthority { get; set; }
|
|
}
|
|
|
|
public class TenantSubjectRelationInternalAuthorityRelationVersionEntity : TenantSubjectRelationInternalAuthorityRelationData<long>, IVersionEntity<TenantSubjectRelationInternalAuthorityRelationEntity>
|
|
{
|
|
public SubjectEntity? Suspect { get; set; }
|
|
public long SuspectId { get; set; }
|
|
public VersionAction Action { get; set; }
|
|
public DateTimeOffset At { get; set; }
|
|
public TenantSubjectRelationInternalAuthorityRelationEntity? Reference { get; set; }
|
|
}
|
|
|
|
public class TenantSubjectRelationInternalAuthorityRelationData<T> where T : IConvertible
|
|
{
|
|
public required T TenantId { get; set; }
|
|
public required T SubjectId { get; set; }
|
|
public required T InternalAuthorityId { get; set; }
|
|
} |