using System.Text.Json.Serialization; using Microsoft.EntityFrameworkCore; namespace comissions.app.database.Entities; [PrimaryKey(nameof(Id))] public record User { public string Id { get; set; } public string DisplayName { get; set; } = null!; public string Biography { get; set; } = null!; public string Email { get; set; } = null!; public int? UserArtistId { get; set; } public bool Banned { get; set; } = false; public DateTime? BannedDate { get; set; } public DateTime? UnbanDate { get; set; } public string? BannedReason { get; set; } public string? BanAdminId { get; set; } public bool Suspended { get; set; } = false; public DateTime? SuspendedDate { get; set; } public DateTime? UnsuspendDate { get; set; } public string? SuspendedReason { get; set; } public string? SuspendAdminId { get; set; } [JsonIgnore] public virtual UserArtist? UserArtist { get; set; } }