Files
GPW/GPW.CORE.UI/Components/WeekStat.razor
T
2021-12-30 13:14:45 +01:00

125 lines
3.4 KiB
Plaintext

<div class="card text-center">
<div class="card-header p-0">
<button class="btn btn-block @selStyle text-light py-1" @onclick="reportSelect">
<div class="d-flex justify-content-between">
<div class="py-0 px-1">
<sub>@currData?.Inizio.ToString("ddd dd.MM")</sub>
</div>
<div class="py-0 px-1">
W<b>@currData?.WeekNumber</b>
</div>
<div class="py-0 px-1">
<sub>@currData?.Fine.ToString("ddd dd.MM")</sub>
</div>
</div>
</button>
</div>
<div class="card-body p-1">
<div class="row">
<div class="col-6 pr-1">
<div class="input-group input-group-sm">
<div class="input-group-prepend">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<span class="form-control disabled text-dark" title="Ore Lavorate"><b>@currData?.SumOreLav.ToString("N2")</b></span>
</div>
<div class="progress">
<div class="progress-bar bg-dark" style="@styleLav"></div>
</div>
</div>
<div class="col-6 pl-1">
<div class="input-group input-group-sm">
<div class="input-group-prepend">
<span class="input-group-text"><i class="far fa-hourglass"></i></span>
</div>
<span class="form-control disabled text-info" title="Ore Caricate"><b>@currData?.SumOreComm.ToString("N2")</b></span>
</div>
<div class="progress">
<div class="progress-bar bg-info" style="@styleCom"></div>
</div>
</div>
</div>
</div>
</div>
@code {
[Parameter]
public CORE.Data.DTO.WeekStatDTO? currData { get; set; }
[Parameter]
public int WeekSel { get; set; } = 0;
[Parameter]
public EventCallback<int> weekSelected { get; set; }
protected int currWeekNum
{
get
{
int answ = 0;
if (currData != null)
{
answ = currData.WeekNumber;
}
return answ;
}
}
protected void reportSelect()
{
weekSelected.InvokeAsync(currWeekNum);
}
protected string selStyle
{
get
{
string currCss = "bg-secondary";
if (currData != null)
{
currCss = currData.WeekNumber == WeekSel ? "btn-primary" : "btn-secondary";
}
return currCss;
}
}
protected string styleLav
{
get
{
double valPerc = 0;
if (currData != null)
{
try
{
valPerc = currData.SumOreLav / 64;
}
catch
{ }
}
return $"width: {valPerc:P0};";
}
}
protected string styleCom
{
get
{
double valPerc = 0;
if (currData != null)
{
try
{
valPerc = currData.SumOreComm / 64;
}
catch
{ }
}
return $"width: {valPerc:P0};";
}
}
}