diff --git a/ClientHub/Pages/AwaitingDisposition.razor b/ClientHub/Pages/AwaitingDisposition.razor
index 922cf54..81dbbaa 100644
--- a/ClientHub/Pages/AwaitingDisposition.razor
+++ b/ClientHub/Pages/AwaitingDisposition.razor
@@ -12,15 +12,59 @@
+
Open
- Refresh
+ Refresh
+
+
+ View
+@if (_Records == null)
+{
+
+}
+else if (_Records.Any())
+{
+
+
+
+
+
+
+
+
+
+
+
+ ToolType
+ Tool
+ Reactor
+ RDS
+ PSN
+ Layer
+ Zone
+ InsertDate
+ Expiration
+
+
+ @context.ToolType
+ @context.Tool
+ @context.Reactor
+ @context.RDS
+ @context.PSN
+ @context.Layer
+ @context.Zone
+ @context.InsertDate
+ @context.Expiration
+
+
+}
+
\ No newline at end of file
diff --git a/ClientHub/Pages/AwaitingDisposition.razor.cs b/ClientHub/Pages/AwaitingDisposition.razor.cs
index 42b7690..b74e18d 100644
--- a/ClientHub/Pages/AwaitingDisposition.razor.cs
+++ b/ClientHub/Pages/AwaitingDisposition.razor.cs
@@ -1,5 +1,7 @@
using Microsoft.AspNetCore.Components;
using Microsoft.JSInterop;
+using OI.Metrology.ClientHub.Models;
+using OI.Metrology.Shared.Models.Stateless;
namespace OI.Metrology.ClientHub.Pages;
@@ -7,7 +9,20 @@ public partial class AwaitingDisposition
{
[Inject] protected IJSRuntime? JSRuntime { get; set; }
- [Inject] protected Models.AppSettings? AppSettings { get; set; }
+ [Inject] protected HttpClient? HttpClient { get; set; }
+ [Inject] protected AppSettings? AppSettings { get; set; }
+ [Inject] protected ILogger
? Logger { get; set; }
+
+ private string? _ToolTypeFilter;
+ private string? _ToolFilter;
+ private string? _ReactorFilter;
+ private string? _RdsFilter;
+ private string? _PSNFilter;
+ private string? _LayerFilter;
+ private string? _ZoneFilter;
+ private readonly List _Records;
+
+ public AwaitingDisposition() => _Records = new();
protected override Task OnAfterRenderAsync(bool firstRender)
{
@@ -22,4 +37,46 @@ public partial class AwaitingDisposition
return Task.CompletedTask;
}
+ private bool FilterRecords(Metrology.Shared.DataModels.AwaitingDisposition? record)
+ {
+ bool? result = _ToolTypeFilter is not null ? record?.ToolType?.Contains(_ToolTypeFilter, StringComparison.CurrentCultureIgnoreCase) : null;
+ if (result is null || result.Value)
+ result = _ToolFilter is not null ? record?.Tool?.Contains(_ToolFilter, StringComparison.CurrentCultureIgnoreCase) : null;
+ if (result is null || result.Value)
+ result = _ReactorFilter is not null ? record?.Reactor?.Contains(_ReactorFilter, StringComparison.CurrentCultureIgnoreCase) : null;
+ if (result is null || result.Value)
+ result = _RdsFilter is not null ? record?.RDS?.Contains(_RdsFilter, StringComparison.CurrentCultureIgnoreCase) : null;
+ if (result is null || result.Value)
+ result = _PSNFilter is not null ? record?.PSN?.Contains(_PSNFilter, StringComparison.CurrentCultureIgnoreCase) : null;
+ if (result is null || result.Value)
+ result = _LayerFilter is not null ? record?.Layer?.Contains(_LayerFilter, StringComparison.CurrentCultureIgnoreCase) : null;
+ if (result is null || result.Value)
+ result = _ZoneFilter is not null ? record?.Zone?.Contains(_ZoneFilter, StringComparison.CurrentCultureIgnoreCase) : null;
+ result ??= true;
+ return result.Value;
+ }
+
+ private void RefreshClick() => _Records.Clear();
+
+ private async Task LoadClickAsync()
+ {
+ if (Logger is null)
+ throw new NullReferenceException(nameof(Logger));
+ if (HttpClient is null)
+ throw new NullReferenceException(nameof(HttpClient));
+ _Records.Clear();
+ string controllerName = IAwaitingDispoController