From 0b5723b77759190cda3a06531ba3ab9e3ba9e1d9 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Thu, 21 May 2026 18:38:02 -0400 Subject: [PATCH] feat(centralui): ParentExecutionId column, filter and parent drill-in on the Audit Log page --- .../Audit/AuditExportEndpoints.cs | 8 ++ .../Audit/AuditDrilldownDrawer.razor | 11 +++ .../Audit/AuditDrilldownDrawer.razor.cs | 20 ++++- .../Components/Audit/AuditFilterBar.razor | 10 +++ .../Components/Audit/AuditFilterBar.razor.cs | 1 + .../Components/Audit/AuditQueryModel.cs | 15 ++++ .../Components/Audit/AuditResultsGrid.razor | 12 +++ .../Audit/AuditResultsGrid.razor.cs | 4 +- .../Pages/Audit/AuditLogPage.razor.cs | 23 +++++- .../Audit/AuditDataSeeder.cs | 6 +- .../Audit/AuditLogPageTests.cs | 79 +++++++++++++++++++ .../Audit/AuditExportEndpointsTests.cs | 23 ++++++ .../Audit/AuditDrilldownDrawerTests.cs | 45 +++++++++++ .../Components/Audit/AuditFilterBarTests.cs | 37 +++++++++ .../Components/Audit/AuditResultsGridTests.cs | 49 +++++++++++- .../Pages/AuditLogPageExportUrlTests.cs | 14 ++++ .../Pages/AuditLogPageScaffoldTests.cs | 39 +++++++++ 17 files changed, 387 insertions(+), 9 deletions(-) diff --git a/src/ScadaLink.CentralUI/Audit/AuditExportEndpoints.cs b/src/ScadaLink.CentralUI/Audit/AuditExportEndpoints.cs index 70b2bc3..a497dcb 100644 --- a/src/ScadaLink.CentralUI/Audit/AuditExportEndpoints.cs +++ b/src/ScadaLink.CentralUI/Audit/AuditExportEndpoints.cs @@ -112,6 +112,13 @@ public static class AuditExportEndpoints executionId = parsedExec; } + Guid? parentExecutionId = null; + if (query.TryGetValue("parentExecutionId", out var parentExecValues) + && Guid.TryParse(parentExecValues.ToString(), out var parsedParentExec)) + { + parentExecutionId = parsedParentExec; + } + DateTime? fromUtc = ParseUtcDate(query, "from"); DateTime? toUtc = ParseUtcDate(query, "to"); @@ -124,6 +131,7 @@ public static class AuditExportEndpoints Actor: actor, CorrelationId: correlationId, ExecutionId: executionId, + ParentExecutionId: parentExecutionId, FromUtc: fromUtc, ToUtc: toUtc); } diff --git a/src/ScadaLink.CentralUI/Components/Audit/AuditDrilldownDrawer.razor b/src/ScadaLink.CentralUI/Components/Audit/AuditDrilldownDrawer.razor index ff31789..1c3ea16 100644 --- a/src/ScadaLink.CentralUI/Components/Audit/AuditDrilldownDrawer.razor +++ b/src/ScadaLink.CentralUI/Components/Audit/AuditDrilldownDrawer.razor @@ -58,6 +58,9 @@
ExecutionId
@(Event.ExecutionId?.ToString() ?? "—")
+
ParentExecutionId
+
@(Event.ParentExecutionId?.ToString() ?? "—")
+
OccurredAtUtc
@FormatTimestamp(Event.OccurredAtUtc)
@@ -162,6 +165,14 @@ View this execution } + @if (Event.ParentExecutionId is not null) + { + + }