using EnvelopeGenerator.Application.Common.Query; using EnvelopeGenerator.Domain.Constants; using System.ComponentModel.DataAnnotations; namespace EnvelopeGenerator.Application.Histories.Queries; //TODO: Add sender query /// /// /// public record HistoryQueryBase { /// /// Die eindeutige Kennung des Umschlags. /// [Obsolete("Use Envelope property")] public int? EnvelopeId { get; set; } /// /// Der Include des Umschlags, der abgefragt werden soll. Kann optional angegeben werden, um die Ergebnisse zu filtern. /// [Obsolete("Use statuses")] public EnvelopeStatus? Status { get; set; } /// /// /// public EnvelopeStatusQuery Statuses { get; set; } = new(); /// /// /// public EnvelopeQueryBase Envelope { get; set; } = new EnvelopeQueryBase(); } /// /// /// public record EnvelopeStatusQuery { /// /// Der minimale Statuswert, der berücksichtigt werden. /// public EnvelopeStatus? Min { get; init; } /// /// Der maximale Statuswert, der berücksichtigt werden. /// public EnvelopeStatus? Max { get; init; } /// /// Eine Liste von Statuswerten, die einbezogen werden. /// public EnvelopeStatus[]? Include { get; init; } /// /// Eine Liste von Statuswerten, die ignoriert werden werden. /// public EnvelopeStatus[]? Ignore { get; init; } }