feat(ReadHistoryQuery): enhance ReadHistoryQuery to support Envelope object and UUID

- Replace nullable `OnlyLast` with non-nullable default `true`
- Support filtering by Envelope object (Id or Uuid) in addition to deprecated EnvelopeId
- Throw `BadRequestException` if no valid Envelope reference is provided
- Preserve status filtering and ordering for latest history entries
This commit is contained in:
2025-11-14 13:19:56 +01:00
parent 629b02863b
commit e5a061d5b5
3 changed files with 29 additions and 5 deletions

View File

@@ -1,4 +1,5 @@
using EnvelopeGenerator.Domain.Constants;
using EnvelopeGenerator.Application.Common.Query;
using EnvelopeGenerator.Domain.Constants;
using System.ComponentModel.DataAnnotations;
namespace EnvelopeGenerator.Application.Histories.Queries;
@@ -12,11 +13,16 @@ public record HistoryQueryBase
/// <summary>
/// Die eindeutige Kennung des Umschlags.
/// </summary>
[Required]
public int EnvelopeId { get; set; }
[Obsolete("Use Envelope property")]
public int? EnvelopeId { get; set; }
/// <summary>
/// Der Include des Umschlags, der abgefragt werden soll. Kann optional angegeben werden, um die Ergebnisse zu filtern.
/// </summary>
public EnvelopeStatus? Status { get; set; }
/// <summary>
///
/// </summary>
public EnvelopeQueryBase? Envelope { get; set; }
}