namespace LehrerApp.Core.Models;
///
/// Papierkorb-Eintrag (14.3): ein gelöschter Datensatz, als vollständiger JSON-Schnappschuss
/// aufbewahrt, damit er wiederhergestellt werden kann. Deckt bewusst nur Löschvorgänge OHNE
/// Kaskade ab (z.B. eine einzelne Note, keine ganze Lerngruppe) — Details siehe
/// LiteDbContext.MoveToTrash/RestoreFromTrash und TODO.md 14.3.
///
public class TrashedItem
{
public Guid Id { get; set; } = Guid.NewGuid();
/// Modellname (nameof(Grade) etc.) — bestimmt, wie der Schnappschuss beim
/// Wiederherstellen deserialisiert und welche Repository-Methode aufgerufen wird.
public string EntityType { get; set; } = "";
public Guid EntityId { get; set; }
/// Vollständiger JSON-Schnappschuss der gelöschten Entität.
public string Snapshot { get; set; } = "";
/// Kurze, für die Papierkorb-Liste lesbare Beschreibung (z.B. "Note 2 (12.09.2026)").
public string Summary { get; set; } = "";
public DateTime DeletedAt { get; set; } = DateTime.UtcNow;
}