diff --git a/EnvelopeGenerator.Application/Envelopes/EnvelopeQuery.cs b/EnvelopeGenerator.Application/Envelopes/EnvelopeQuery.cs
index fcf6de9d..6c30fab4 100644
--- a/EnvelopeGenerator.Application/Envelopes/EnvelopeQuery.cs
+++ b/EnvelopeGenerator.Application/Envelopes/EnvelopeQuery.cs
@@ -6,27 +6,11 @@ namespace EnvelopeGenerator.Application.Envelopes;
/// Repräsentiert eine Abfrage für Umschläge.
///
/// Die eindeutige Kennung des Umschlags.
-/// Absender des Schreibens
/// Der Status des Umschlags.
/// Die universell eindeutige Kennung des Umschlags.
public record EnvelopeQuery(
int? Id = null,
- SenderQuery? Sender = null,
int? Status = null,
string? Uuid = null) : IRequest
{
- ///
- /// Die eindeutige Kennung des Benutzers.
- ///
- public int? SenderId => Sender?.Id;
-
- ///
- /// Der Benutzername des Absenders.
- ///
- public string? SenderUsername => Sender?.Username;
-
- ///
- /// Die E-Mail-Adresse des Benutzers.
- ///
- public string? SenderEmail => Sender?.Username;
};
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/Envelopes/SenderQuery.cs b/EnvelopeGenerator.Application/Envelopes/SenderQuery.cs
deleted file mode 100644
index ca0c70a1..00000000
--- a/EnvelopeGenerator.Application/Envelopes/SenderQuery.cs
+++ /dev/null
@@ -1,11 +0,0 @@
-namespace EnvelopeGenerator.Application.Envelopes;
-
-///
-/// Repräsentiert eine Abfrage für einen Absender.
-///
-/// Die eindeutige Kennung des Absenders.
-/// Der Benutzername des Absenders.
-/// Die E-Mail-Adresse des Absenders.
-public record SenderQuery(int? Id = null, string? Username = null, string? Email = null)
-{
-}
diff --git a/EnvelopeGenerator.Application/Histories/HistoryQuery.cs b/EnvelopeGenerator.Application/Histories/HistoryQuery.cs
deleted file mode 100644
index 3b164539..00000000
--- a/EnvelopeGenerator.Application/Histories/HistoryQuery.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-using EnvelopeGenerator.Application.Envelopes;
-using EnvelopeGenerator.Application.Receivers;
-using static EnvelopeGenerator.Common.Constants;
-
-namespace EnvelopeGenerator.Application.Histories;
-
-///
-/// Repräsentiert eine Abfrage für die Verlaufshistorie eines Umschlags.
-///
-/// Die eindeutige Kennung des Umschlags.
-/// Die Abfrage, die den Umschlag beschreibt.
-/// Die Abfrage, die den Empfänger beschreibt.
-/// Abfrage zur Steuerung, ob nur der aktuelle Status oder der gesamte Datensatz zurückgegeben wird.
-public record HistoryQuery(int EnvelopeId, TEnvelopeQuery? Envelope, TReceiverQuery? Receiver = null, bool? OnlyLast = null)
- where TEnvelopeQuery : EnvelopeQuery
- where TReceiverQuery : ReceiverQuery
-{
- ///
- /// Gibt den Referenztyp des Umschlags an.
- /// Wenn der Benutzer des Umschlags definiert ist, wird der Referenztyp als Empfänger betrachtet.
- /// Andernfalls, wenn ein Empfänger definiert ist, wird der Referenztyp ebenfalls als Empfänger betrachtet.
- /// Ist keiner von beiden definiert, wird der Referenztyp als System betrachtet.
- ///
- public ReferenceType ReferenceType =>
- Envelope?.Sender is not null
- ? ReferenceType.Receiver
- : Receiver is not null
- ? ReferenceType.Receiver
- : ReferenceType.System;
-}
diff --git a/EnvelopeGenerator.Application/Histories/Queries/Read/ReadHistoryQuery.cs b/EnvelopeGenerator.Application/Histories/Queries/Read/ReadHistoryQuery.cs
index 83189eee..2f8ba313 100644
--- a/EnvelopeGenerator.Application/Histories/Queries/Read/ReadHistoryQuery.cs
+++ b/EnvelopeGenerator.Application/Histories/Queries/Read/ReadHistoryQuery.cs
@@ -1,5 +1,6 @@
using EnvelopeGenerator.Application.Envelopes.Queries.Read;
using EnvelopeGenerator.Application.Receivers.Queries.Read;
+using EnvelopeGenerator.Common;
namespace EnvelopeGenerator.Application.Histories.Queries.Read;
@@ -9,10 +10,11 @@ namespace EnvelopeGenerator.Application.Histories.Queries.Read;
/// Die eindeutige Kennung des Umschlags.
/// Die Abfrage, die den Umschlag beschreibt.
/// Die Abfrage, die den Empfänger beschreibt.
+/// Abfrage, die angibt, worauf sich der Datensatz bezieht. Ob er sich auf den Empfänger, den Sender oder das System bezieht, wird durch 0, 1 bzw. 2 dargestellt.
/// Abfrage zur Steuerung, ob nur der aktuelle Status oder der gesamte Datensatz zurückgegeben wird.
public record ReadHistoryQuery(
int EnvelopeId,
ReadEnvelopeQuery? Envelope = null,
ReadReceiverQuery? Receiver = null,
- bool? OnlyLast = true)
- : HistoryQuery(EnvelopeId, Envelope, Receiver, OnlyLast);
+ Constants.ReferenceType? Related = null,
+ bool? OnlyLast = true);
\ No newline at end of file
diff --git a/EnvelopeGenerator.Common/Constants.vb b/EnvelopeGenerator.Common/Constants.vb
index 4b3d7a33..04905cc6 100644
--- a/EnvelopeGenerator.Common/Constants.vb
+++ b/EnvelopeGenerator.Common/Constants.vb
@@ -32,7 +32,7 @@
'TODO: standardize in xwiki
Public Enum ReferenceType
- Receiver
+ Receiver = 0
Sender
System
Unknown
diff --git a/EnvelopeGenerator.GeneratorAPI/Controllers/HistoryController.cs b/EnvelopeGenerator.GeneratorAPI/Controllers/HistoryController.cs
index 3372a6e1..63716b05 100644
--- a/EnvelopeGenerator.GeneratorAPI/Controllers/HistoryController.cs
+++ b/EnvelopeGenerator.GeneratorAPI/Controllers/HistoryController.cs
@@ -70,11 +70,10 @@ public class HistoryController : ControllerBase
[Authorize]
public async Task GetAllAsync([FromQuery] ReadHistoryQuery history)
{
- ReferenceType? refTypEnum = history.ReferenceType;
bool withReceiver = false;
bool withSender = false;
- switch (refTypEnum)
+ switch (history.Related)
{
case ReferenceType.Receiver:
withReceiver = true;
@@ -86,7 +85,7 @@ public class HistoryController : ControllerBase
var histories = await _service.ReadAsync(
envelopeId: history.EnvelopeId,
- referenceType: refTypEnum,
+ referenceType: history.Related,
withSender: withSender,
withReceiver: withReceiver);