Add Related property to ReadHistoryQuery and update controller
The `ReadHistoryQuery` record now includes a computed `Related` property that determines the context of the record based on the `Status` value. The constructor has been updated to remove the `Related` parameter. Additionally, the `GetAllAsync` method in `HistoryController` has been modified to handle the `Related` property, setting the `withReceiver` boolean when the value is `ReferenceType.Receiver`.
This commit is contained in:
@@ -8,10 +8,28 @@ namespace EnvelopeGenerator.Application.Histories.Queries.Read;
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="EnvelopeId">Die eindeutige Kennung des Umschlags.</param>
|
/// <param name="EnvelopeId">Die eindeutige Kennung des Umschlags.</param>
|
||||||
/// <param name="Status">Der Status des Umschlags, der abgefragt werden soll. Kann optional angegeben werden, um die Ergebnisse zu filtern.</param>
|
/// <param name="Status">Der Status des Umschlags, der abgefragt werden soll. Kann optional angegeben werden, um die Ergebnisse zu filtern.</param>
|
||||||
/// <param name="Related">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.</param>
|
|
||||||
/// <param name="OnlyLast">Abfrage zur Steuerung, ob nur der aktuelle Status oder der gesamte Datensatz zurückgegeben wird.</param>
|
/// <param name="OnlyLast">Abfrage zur Steuerung, ob nur der aktuelle Status oder der gesamte Datensatz zurückgegeben wird.</param>
|
||||||
public record ReadHistoryQuery(
|
public record ReadHistoryQuery(
|
||||||
int EnvelopeId,
|
int EnvelopeId,
|
||||||
Constants.EnvelopeStatus? Status = null,
|
Constants.EnvelopeStatus? Status = null,
|
||||||
Constants.ReferenceType? Related = null,
|
bool? OnlyLast = true)
|
||||||
bool? OnlyLast = true);
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 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.
|
||||||
|
/// </summary>
|
||||||
|
public Constants.ReferenceType? Related
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (Status is null)
|
||||||
|
return null;
|
||||||
|
var statusCode = ((int)Status).ToString();
|
||||||
|
return statusCode.FirstOrDefault() switch
|
||||||
|
{
|
||||||
|
'1' => (Constants.ReferenceType?)Constants.ReferenceType.Sender,
|
||||||
|
'2' => (Constants.ReferenceType?)Constants.ReferenceType.Receiver,
|
||||||
|
_ => (Constants.ReferenceType?)Constants.ReferenceType.System,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -110,6 +110,8 @@ public class HistoryController : ControllerBase
|
|||||||
bool withReceiver = false;
|
bool withReceiver = false;
|
||||||
bool withSender = false;
|
bool withSender = false;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
switch (history.Related)
|
switch (history.Related)
|
||||||
{
|
{
|
||||||
case ReferenceType.Receiver:
|
case ReferenceType.Receiver:
|
||||||
|
|||||||
Reference in New Issue
Block a user