42 lines
1.6 KiB
C#
42 lines
1.6 KiB
C#
using Microsoft.AspNetCore.Components;
|
|
using OI.Metrology.Shared.DataModels;
|
|
using OI.Metrology.Shared.Models.Stateless;
|
|
using System.Net.Http.Json;
|
|
|
|
namespace OI.Metrology.Client.Pages;
|
|
|
|
public partial class RunHeaders
|
|
{
|
|
|
|
[Inject] protected HttpClient? HttpClient { get; set; }
|
|
[Inject] protected ILogger<RunHeaders>? Logger { get; set; }
|
|
|
|
private List<ToolTypeNameId>? _ToolTypeNameIdCollection;
|
|
private Metrology.Shared.DataModels.AwaitingDisposition[]? _Records;
|
|
|
|
protected override async Task OnInitializedAsync()
|
|
{
|
|
if (Logger is null)
|
|
throw new NullReferenceException(nameof(Logger));
|
|
if (HttpClient is null)
|
|
throw new NullReferenceException(nameof(HttpClient));
|
|
_ToolTypeNameIdCollection = new();
|
|
string toolTypeController = IToolTypesController<object>.GetRouteName();
|
|
// string controllerName = IMetrologyRepository<object>.GetRouteName();
|
|
try
|
|
{
|
|
Result<ToolTypeNameId[]>? result = await HttpClient.GetFromJsonAsync<Result<ToolTypeNameId[]>>($"api/{toolTypeController}");
|
|
if (result?.Results is not null)
|
|
{
|
|
_ToolTypeNameIdCollection.AddRange(result.Results);
|
|
if (_ToolTypeNameIdCollection is not null && _ToolTypeNameIdCollection.Any())
|
|
_Records = await HttpClient.GetFromJsonAsync<Metrology.Shared.DataModels.AwaitingDisposition[]>($"api/controllerName");
|
|
}
|
|
}
|
|
catch (Exception)
|
|
{
|
|
string json = await HttpClient.GetStringAsync($"api/{toolTypeController}");
|
|
Logger.LogInformation(message: json);
|
|
}
|
|
}
|
|
} |