102 lines
4.9 KiB
Plaintext
102 lines
4.9 KiB
Plaintext
@page "/callstats"
|
|
|
|
<div class="card shadow">
|
|
<div class="card-header">
|
|
<h3>Current Call Stats (24h)</h3>
|
|
</div>
|
|
<div class="card-body px-1 py-0">
|
|
<div class="row mb-2">
|
|
<div class="col-3">
|
|
<div class="card shadow">
|
|
<div class="card-header py-1">
|
|
<div class="d-flex justify-content-between">
|
|
<div class="px-0 fw-bold">Avail Data</div>
|
|
<div class="px-0">
|
|
<button class="btn btn-sm btn-info" @onclick="() => DoReset()">
|
|
<i class="fa-solid fa-arrow-rotate-right"></i>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="card-body p-1">
|
|
<ul class="list-group shadow">
|
|
@foreach (var item in ParetoDay)
|
|
{
|
|
<li class="list-group-item @CheckSelect(item.Title) d-flex justify-content-between align-items-start small py-1">
|
|
<span class="align-items-center">@item.Title</span>
|
|
<button class="btn btn-sm btn-info" @onclick="() => DoSelect(item)">
|
|
<i class="fa-solid fa-magnifying-glass"></i>
|
|
</button>
|
|
</li>
|
|
}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@if (string.IsNullOrEmpty(currHistId))
|
|
{
|
|
<div class="col-9">
|
|
<div class="alert alert-info">selezionare la metrica</div>
|
|
</div>
|
|
}
|
|
else
|
|
{
|
|
<div class="col-9">
|
|
<div class="card shadow">
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<div class="col-9">
|
|
<BarPlot Id="@currHistId" AspRatio="3" Data="@DatiPareto" Labels="@LabelPareto" Legenda="@currTitle" lineColor="@lineColors" backColor="@bgColors"></BarPlot>
|
|
</div>
|
|
<div class="col-3">
|
|
<PieChart Id="@currPieId" AspRatio="1" LegendPos="none" Data="@DatiPareto" Labels="@LabelPareto" lineColor="@lineColors" backColor="@bgColors" Title="@currTitle"></PieChart>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
}
|
|
</div>
|
|
@if (!string.IsNullOrEmpty(currHistId))
|
|
{
|
|
<div class="row mb-2">
|
|
<div class="col-3 small">
|
|
<ParetoDetail Title="@currHistId" ParetoList="@currData" EC_Selected="ShowDetail"></ParetoDetail>
|
|
</div>
|
|
<div class="col-9">
|
|
@if (string.IsNullOrEmpty(currDetail))
|
|
{
|
|
<div class="alert alert-info">← selezionare valore</div>
|
|
}
|
|
else
|
|
{
|
|
if (tsDataDetail.Count == 0)
|
|
{
|
|
<div class="alert alert-info">← No data found</div>
|
|
}
|
|
else
|
|
{
|
|
<div class="card shadow">
|
|
<div class="card-header d-flex justify-content-between">
|
|
<div class="px-0">
|
|
History <b>@currDetail</b>
|
|
</div>
|
|
<div class="px-0">
|
|
<div class="input-group">
|
|
<span class="input-group-text"># giorni</span>
|
|
<input type="number" class="form-control form-control-sm" @bind="numDays" @bind:after="OnDaysChangedAsync">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="card-body">
|
|
<MultiLine Id="@currTsId" AspRatio="3" DataTSList="@TSDataMulti" Labels="@LabelPlot" lineColor="@lineColorsMLine" backColor="@bgColorsMLine" lTens="0" Titles="@lineTitles" Stepped="false" yScale="logarithmic"></MultiLine>
|
|
</div>
|
|
</div>
|
|
}
|
|
}
|
|
</div>
|
|
</div>
|
|
}
|
|
</div>
|
|
</div>
|