153 lines
8.8 KiB
Plaintext
153 lines
8.8 KiB
Plaintext
@page "/Parameters"
|
|
|
|
@inject MP.MONO.UI.Data.CurrentDataService MMDataService
|
|
|
|
<div class="card" style="box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;">
|
|
<div class="card-header">
|
|
<div class="row">
|
|
<div class="d-flex justify-content-between">
|
|
<div class="col-6 d-flex">
|
|
<div class="mx-0 pt-1">
|
|
<h5><i class="bi bi-list-check pe-2" aria-hidden="true"></i><b> PARAMETERS</b></h5>
|
|
</div>
|
|
<div class="d-flex justify-content-between mx-2">
|
|
<div class="me-3">
|
|
<button @onclick="() => resetSel()" class="btn btn-dark @btnResetCss" title="Reset Selection"><i class="fa-solid fa-repeat" title="reset selection"></i></button>
|
|
</div>
|
|
<div class="me-3">
|
|
<button @onclick="() => selAll()" class="btn btn-dark" title="Reset Selection"><i class="fa-regular fa-square-check" title="Select all"></i></button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-6 d-flex justify-content-between">
|
|
<div class="px-0">
|
|
<ToggleModes FilterChanged="updateFilter"></ToggleModes>
|
|
</div>
|
|
<div class="px-0">
|
|
<div class="d-flex flex-row-reverse">
|
|
<div class="p-0">
|
|
<div class="d-flex justify-content-between pt-0">
|
|
@if (isRT)
|
|
{
|
|
|
|
<button class="btn btn-outline-primary btn-sm mx-2"><i class="fa-solid fa-list-ol"></i>   @maxRecord</button>
|
|
<button class="btn btn-outline-primary btn-sm mx-2"><i class="fa-regular fa-clock"></i>   @sampleSecMin <sub>s</sub></button>
|
|
<button class="btn btn-outline-primary btn-sm mx-2"><i class="fa-solid fa-chart-line"></i>   @maxDisplay</button>
|
|
}
|
|
else
|
|
{
|
|
<button class="btn btn-outline-primary btn-sm mx-2"><i class="fa-solid fa-calendar"></i>   @DateFrom</button>
|
|
<button class="btn btn-outline-primary btn-sm mx-2"><i class="fa-solid fa-calendar"></i>   @DateTo</button>
|
|
}
|
|
<a class="py-1 text-dark" data-bs-toggle="offcanvas" data-bs-target="#offcanvasRight" aria-controls="offcanvasRight"><i class="fa-solid fa-bars" title="Toggle Filters"></i></a>
|
|
<div class="offcanvas offcanvas-end" tabindex="-1" id="offcanvasRight" aria-labelledby="offcanvasRightLabel">
|
|
<div class="offcanvas-header">
|
|
<h3 class="offcanvas-title" id="paramsFilterExampleLabel"><b>FILTERS</b></h3>
|
|
<button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
|
</div>
|
|
<div class="offcanvas-body">
|
|
<div>
|
|
Filter by:
|
|
</div>
|
|
@if (isRT)
|
|
{
|
|
<div class="small mt-2">
|
|
<label class="px-2" for="" title="Max number of record to retrieve">Max record number</label>
|
|
</div>
|
|
<div class="input-group input-group-sm d-flex justify-content-between pt-0">
|
|
<input class="form-control" @bind="@maxRecord" />
|
|
</div>
|
|
<div class="small mt-2">
|
|
<label class="px-2" for="" title="Choose time to sample data">Sample Sec Time</label>
|
|
</div>
|
|
<div class="input-group input-group-sm d-flex justify-content-between pt-0">
|
|
<input class="form-control" @bind="@sampleSecMin" />
|
|
</div>
|
|
}
|
|
else
|
|
{
|
|
<div class="small mt-2">
|
|
<label class="px-2" title="Display data from specified date">From date:</label>
|
|
</div>
|
|
<div class="input-group input-group-sm d-flex justify-content-between pt-0">
|
|
<input type="date" class="form-control" placeholder="From" @bind-value="@DateFrom">
|
|
</div>
|
|
<div class="small mt-2">
|
|
<label class="px-2" title="Display until from specified date">To date;</label>
|
|
</div>
|
|
<div class="input-group input-group-sm d-flex justify-content-between pt-0">
|
|
<input type="date" class="form-control" placeholder="To" @bind-value="@DateTo">
|
|
</div>
|
|
|
|
}
|
|
<div class="small mt-2">
|
|
<label class="px-2" for="" title="Set Max number of items to plot">Max number of items to plot</label>
|
|
</div>
|
|
<div class="input-group input-group-sm d-flex justify-content-between pt-0">
|
|
<select class="form-control" @bind="@maxDisplay">
|
|
@if (ListRecords != null)
|
|
{
|
|
@for (int i = 1; i <= ListRecords.Count; i++)
|
|
{
|
|
<option value="@i">@i</option>
|
|
}
|
|
}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<div class="col-3">
|
|
<ParamOverview SelVal="@selParams" EC_AddValue="paramAdded" EC_RemValue="paramRemoved" selectAll="@selectAll" sampleSecMin="@sampleSecMin"></ParamOverview>
|
|
</div>
|
|
<div class="col-9">
|
|
@if (selParams == null || selParams.Count == 0)
|
|
{
|
|
<div class="alert alert-info text-center">
|
|
<h3>← please select an item to plot graph (max @maxDisplay)</h3>
|
|
</div>
|
|
}
|
|
else
|
|
{
|
|
<div class="row">
|
|
|
|
@if (isRT)
|
|
{
|
|
@foreach (var item in selParams)
|
|
{
|
|
<div class="@pcss">
|
|
<div class="flex-fill">
|
|
<ParamPlotRT SelectedParam="@item" maxRecord="@maxRecord" sampleSecMin="@sampleSecMin"></ParamPlotRT>
|
|
</div>
|
|
</div>
|
|
}
|
|
}
|
|
else
|
|
{
|
|
<MultiParamPlot SelectedParams="@selParams" SelFilter="@SelFilter"></MultiParamPlot>
|
|
}
|
|
</div>
|
|
}
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|