@page "/mrb/all"
@using System.Globalization
@inject IMRBService mrbService
@inject ISnackbar snackbar
@inject IMemoryCache cache
@inject NavigationManager navigationManager
MRB
MRB List
@if (allMrbs is not null && allMrbs.Count() > 0) {
MRB#
Title
Originator
Submitted Date
Approval Date
Closed Date
@context.MRBNumber
@context.Title
@context.OriginatorName
@DateTimeUtilities.GetDateAsStringMinDefault(context.SubmittedDate)
@DateTimeUtilities.GetDateAsStringMaxDefault(context.ApprovalDate)
@DateTimeUtilities.GetDateAsStringMaxDefault(context.CloseDate)
}
@code {
private bool inProcess = false;
private string searchString = "";
private IEnumerable allMrbs = new List();
protected override async Task OnParametersSetAsync() {
inProcess = true;
try {
if (mrbService is null) {
throw new Exception("MRB service not injected!");
} else {
allMrbs = await mrbService.GetAllMRBs(false);
}
} catch (Exception ex) {
snackbar.Add(ex.Message, Severity.Error);
}
inProcess = false;
}
private bool FilterFuncForTable(MRB mrb) => FilterFunc(mrb, searchString);
private bool FilterFunc(MRB mrb, string searchString) {
if (string.IsNullOrWhiteSpace(searchString))
return true;
if (mrb.Title.ToLower().Contains(searchString.Trim().ToLower()))
return true;
if (mrb.OriginatorName.ToLower().Contains(searchString.Trim().ToLower()))
return true;
if (mrb.MRBNumber.ToString().Contains(searchString.Trim()))
return true;
return false;
}
private void GoTo(string page) {
cache.Set("redirectUrl", page);
navigationManager.NavigateTo(page);
}
}