diff --git a/EnvelopeGenerator.Application/EnvelopeReceivers/Queries/ReadEnvelopeReceiverQuery.cs b/EnvelopeGenerator.Application/EnvelopeReceivers/Queries/ReadEnvelopeReceiverQuery.cs index 0c758c27..6a1145de 100644 --- a/EnvelopeGenerator.Application/EnvelopeReceivers/Queries/ReadEnvelopeReceiverQuery.cs +++ b/EnvelopeGenerator.Application/EnvelopeReceivers/Queries/ReadEnvelopeReceiverQuery.cs @@ -1,10 +1,9 @@ using EnvelopeGenerator.Application.Dto.EnvelopeReceiver; using EnvelopeGenerator.Application.Envelopes.Queries; -using DigitalData.Core.Exceptions; using EnvelopeGenerator.Application.Extensions; using EnvelopeGenerator.Application.Receivers.Queries; -using EnvelopeGenerator.Extensions; using MediatR; +using EnvelopeGenerator.Application.Model; namespace EnvelopeGenerator.Application.EnvelopeReceivers.Queries; @@ -43,47 +42,7 @@ namespace EnvelopeGenerator.Application.EnvelopeReceivers.Queries; /// Die Antwort enthält Details wie den Include, die Zuordnung zwischen Umschlag und Empfänger /// sowie zusätzliche Metadaten. /// -public record ReadEnvelopeReceiverQuery : IRequest> -{ - /// - /// - /// - public string? Key - { - get => Envelope?.Uuid is string uuid && Receiver?.Signature is string signature - ? (uuid, signature).EncodeEnvelopeReceiverId() - : null; - init - { - if (value is null) - return; - - (string? EnvelopeUuid, string? ReceiverSignature) = value.DecodeEnvelopeReceiverId(); - if(string.IsNullOrEmpty(EnvelopeUuid) || string.IsNullOrEmpty(ReceiverSignature)) - { - throw new BadRequestException("Der EnvelopeReceiverKey muss ein gültiger Base64-kodierter String sein, der die EnvelopeUuid und die ReceiverSignature enthält."); - } - Envelope = new ReadEnvelopeQuery() - { - Uuid = EnvelopeUuid - }; - Receiver = new ReadReceiverQuery() - { - Signature = ReceiverSignature - }; - } - } - - /// - /// Der Umschlag, der mit dem Empfänger verknüpft ist. - /// - public ReadEnvelopeQuery? Envelope { get; set; } - - /// - /// Der Empfänger, der mit dem Umschlag verknüpft ist. - /// - public ReadReceiverQuery? Receiver { get; set; } -}; +public record ReadEnvelopeReceiverQuery : EnvelopeReceiverQueryBase, IRequest>; /// /// diff --git a/EnvelopeGenerator.Application/Envelopes/Queries/ReadEnvelopeQuery.cs b/EnvelopeGenerator.Application/Envelopes/Queries/ReadEnvelopeQuery.cs index 5f37344f..b9946199 100644 --- a/EnvelopeGenerator.Application/Envelopes/Queries/ReadEnvelopeQuery.cs +++ b/EnvelopeGenerator.Application/Envelopes/Queries/ReadEnvelopeQuery.cs @@ -1,23 +1,14 @@ using MediatR; using EnvelopeGenerator.Domain; +using EnvelopeGenerator.Application.Model; namespace EnvelopeGenerator.Application.Envelopes.Queries; /// /// Repräsentiert eine Abfrage für Umschläge. /// -public class ReadEnvelopeQuery : IRequest +public record ReadEnvelopeQuery : EnvelopeQueryBase, IRequest { - /// - /// Die eindeutige Kennung des Umschlags. - /// - public int? Id { get; init; } - - /// - /// Die universell eindeutige Kennung des Umschlags. - /// - public string? Uuid { get; init; } - /// /// Abfrage des Include des Umschlags /// @@ -52,6 +43,7 @@ public class ReadEnvelopeQuery : IRequest /// MessageDeletionSent (3004): Löschbenachrichtigung wurde gesendet. /// MessageCompletionSent (3005): Abschlussbenachrichtigung wurde gesendet. /// + public record EnvelopeStatus { /// diff --git a/EnvelopeGenerator.Application/Model/EnvelopeQueryBase.cs b/EnvelopeGenerator.Application/Model/EnvelopeQueryBase.cs index 7e6edaa4..53ec08de 100644 --- a/EnvelopeGenerator.Application/Model/EnvelopeQueryBase.cs +++ b/EnvelopeGenerator.Application/Model/EnvelopeQueryBase.cs @@ -13,5 +13,5 @@ public record EnvelopeQueryBase /// /// Die universell eindeutige Kennung des Umschlags. /// - public virtual string? Uuid { get; set; } + public virtual string? Uuid { get; init; } } \ No newline at end of file diff --git a/EnvelopeGenerator.Application/Receivers/Queries/ReadReceiverQuery.cs b/EnvelopeGenerator.Application/Receivers/Queries/ReadReceiverQuery.cs index 949dd78f..9ff996c2 100644 --- a/EnvelopeGenerator.Application/Receivers/Queries/ReadReceiverQuery.cs +++ b/EnvelopeGenerator.Application/Receivers/Queries/ReadReceiverQuery.cs @@ -1,23 +1,9 @@ -namespace EnvelopeGenerator.Application.Receivers.Queries; +using EnvelopeGenerator.Application.Model; + +namespace EnvelopeGenerator.Application.Receivers.Queries; /// /// Stellt eine Abfrage dar, um die Details eines Empfängers zu lesen. /// um spezifische Informationen über einen Empfänger abzurufen. /// -public record ReadReceiverQuery -{ - /// - /// ID des Empfängers - /// - public int? Id { get; init; } - - /// - /// E-Mail Adresse des Empfängers - /// - public string? EmailAddress { get; init; } - - /// - /// Eindeutige Signatur des Empfängers - /// - public string? Signature { get; init; } -} \ No newline at end of file +public record ReadReceiverQuery : ReceiverQueryBase; \ No newline at end of file