using EnvelopeGenerator.Application.Common.Dto.History;
using EnvelopeGenerator.Domain.Constants;
using MediatR;
using System.ComponentModel.DataAnnotations;
namespace EnvelopeGenerator.Application.Histories.Queries;
//TODO: Add sender query
///
/// Repräsentiert eine Abfrage für die Verlaufshistorie eines Umschlags.
///
public record ReadHistoryQuery : IRequest>
{
///
/// Die eindeutige Kennung des Umschlags.
///
[Required]
public int EnvelopeId { get; init; }
///
/// Der Include des Umschlags, der abgefragt werden soll. Kann optional angegeben werden, um die Ergebnisse zu filtern.
///
public EnvelopeStatus? Status { get; init; }
///
/// Abfrage zur Steuerung, ob nur der aktuelle Include oder der gesamte Datensatz zurückgegeben wird.
///
public bool? OnlyLast { get; init; } = true;
}