2024-12-22 02:15:34 +01:00
|
|
|
using DotBased.AspNet.Authority.Attributes;
|
|
|
|
|
2024-12-21 15:30:17 +01:00
|
|
|
namespace DotBased.AspNet.Authority.Models.Authority;
|
|
|
|
|
2024-12-22 02:15:34 +01:00
|
|
|
public class AuthorityUser : AuthorityUser<Guid>
|
2024-12-21 15:30:17 +01:00
|
|
|
{
|
2024-12-22 02:15:34 +01:00
|
|
|
public AuthorityUser(string userName) : this()
|
|
|
|
{
|
|
|
|
UserName = userName;
|
|
|
|
}
|
|
|
|
|
2024-12-21 15:30:17 +01:00
|
|
|
public AuthorityUser()
|
|
|
|
{
|
|
|
|
Id = Guid.NewGuid();
|
|
|
|
CreatedDate = DateTime.Now;
|
|
|
|
}
|
2024-12-22 02:15:34 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
public abstract class AuthorityUser<TKey> where TKey : IEquatable<TKey>
|
|
|
|
{
|
|
|
|
public TKey Id { get; set; }
|
|
|
|
|
|
|
|
public bool Enabled { get; set; }
|
|
|
|
|
|
|
|
public bool Locked { get; set; }
|
|
|
|
|
|
|
|
public DateTime LockedDate { get; set; }
|
|
|
|
|
|
|
|
public string? UserName { get; set; }
|
|
|
|
|
|
|
|
public string? PasswordHash { get; set; }
|
|
|
|
|
|
|
|
public DateTime CreatedDate { get; set; }
|
|
|
|
|
|
|
|
public bool TwoFactorEnabled { get; set; }
|
|
|
|
|
|
|
|
public long Version { get; set; }
|
|
|
|
|
|
|
|
public long SecurityVersion { get; set; }
|
|
|
|
|
|
|
|
[Protect]
|
|
|
|
public string? EmailAddress { get; set; }
|
|
|
|
|
|
|
|
public bool EmailConfirmed { get; set; }
|
|
|
|
|
|
|
|
[Protect]
|
|
|
|
public string? PhoneNumber { get; set; }
|
|
|
|
|
|
|
|
public bool PhoneNumberConfirmed { get; set; }
|
|
|
|
|
|
|
|
public override string ToString() => UserName ?? EmailAddress ?? string.Empty;
|
2024-12-21 15:30:17 +01:00
|
|
|
}
|