157 lines
3.6 KiB
C#
157 lines
3.6 KiB
C#
namespace ChessCubing.Server.Admin;
|
|
|
|
public sealed class AdminUserSummaryResponse
|
|
{
|
|
public string Subject { get; init; } = string.Empty;
|
|
|
|
public string Username { get; init; } = string.Empty;
|
|
|
|
public string? Email { get; init; }
|
|
|
|
public string IdentityDisplayName { get; init; } = string.Empty;
|
|
|
|
public string? SiteDisplayName { get; init; }
|
|
|
|
public bool IsEnabled { get; init; }
|
|
|
|
public bool IsEmailVerified { get; init; }
|
|
|
|
public bool HasSiteProfile { get; init; }
|
|
|
|
public string? Club { get; init; }
|
|
|
|
public string? City { get; init; }
|
|
|
|
public string? PreferredFormat { get; init; }
|
|
|
|
public DateTime? AccountCreatedUtc { get; init; }
|
|
|
|
public DateTime? SiteProfileUpdatedUtc { get; init; }
|
|
}
|
|
|
|
public sealed class AdminUserDetailResponse
|
|
{
|
|
public string Subject { get; init; } = string.Empty;
|
|
|
|
public string Username { get; init; } = string.Empty;
|
|
|
|
public string? Email { get; init; }
|
|
|
|
public string? FirstName { get; init; }
|
|
|
|
public string? LastName { get; init; }
|
|
|
|
public string IdentityDisplayName { get; init; } = string.Empty;
|
|
|
|
public bool IsEnabled { get; init; }
|
|
|
|
public bool IsEmailVerified { get; init; }
|
|
|
|
public DateTime? AccountCreatedUtc { get; init; }
|
|
|
|
public bool HasSiteProfile { get; init; }
|
|
|
|
public string DisplayName { get; init; } = string.Empty;
|
|
|
|
public string? Club { get; init; }
|
|
|
|
public string? City { get; init; }
|
|
|
|
public string? PreferredFormat { get; init; }
|
|
|
|
public string? FavoriteCube { get; init; }
|
|
|
|
public string? Bio { get; init; }
|
|
|
|
public DateTime? SiteProfileCreatedUtc { get; init; }
|
|
|
|
public DateTime? SiteProfileUpdatedUtc { get; init; }
|
|
}
|
|
|
|
public sealed class AdminUpdateUserRequest
|
|
{
|
|
public string Username { get; init; } = string.Empty;
|
|
|
|
public string? Email { get; init; }
|
|
|
|
public string? FirstName { get; init; }
|
|
|
|
public string? LastName { get; init; }
|
|
|
|
public bool IsEnabled { get; init; }
|
|
|
|
public bool IsEmailVerified { get; init; }
|
|
|
|
public string? DisplayName { get; init; }
|
|
|
|
public string? Club { get; init; }
|
|
|
|
public string? City { get; init; }
|
|
|
|
public string? PreferredFormat { get; init; }
|
|
|
|
public string? FavoriteCube { get; init; }
|
|
|
|
public string? Bio { get; init; }
|
|
}
|
|
|
|
public sealed class AdminCreateUserRequest
|
|
{
|
|
public string Username { get; init; } = string.Empty;
|
|
|
|
public string? Email { get; init; }
|
|
|
|
public string Password { get; init; } = string.Empty;
|
|
|
|
public string ConfirmPassword { get; init; } = string.Empty;
|
|
|
|
public string? FirstName { get; init; }
|
|
|
|
public string? LastName { get; init; }
|
|
|
|
public bool IsEnabled { get; init; } = true;
|
|
|
|
public bool IsEmailVerified { get; init; }
|
|
|
|
public string? DisplayName { get; init; }
|
|
|
|
public string? Club { get; init; }
|
|
|
|
public string? City { get; init; }
|
|
|
|
public string? PreferredFormat { get; init; }
|
|
|
|
public string? FavoriteCube { get; init; }
|
|
|
|
public string? Bio { get; init; }
|
|
}
|
|
|
|
public sealed record AdminIdentityUser(
|
|
string Subject,
|
|
string Username,
|
|
string? Email,
|
|
string? FirstName,
|
|
string? LastName,
|
|
bool IsEnabled,
|
|
bool IsEmailVerified,
|
|
DateTime? CreatedUtc);
|
|
|
|
public sealed record AdminIdentityUserUpdateRequest(
|
|
string Username,
|
|
string? Email,
|
|
string? FirstName,
|
|
string? LastName,
|
|
bool IsEnabled,
|
|
bool IsEmailVerified);
|
|
|
|
public sealed record AdminIdentityUserCreateRequest(
|
|
string Username,
|
|
string? Email,
|
|
string Password,
|
|
string? FirstName,
|
|
string? LastName,
|
|
bool IsEnabled,
|
|
bool IsEmailVerified);
|
|
|
|
public sealed class AdminUserValidationException(string message) : Exception(message);
|