@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); } }