Files
lux/Lux.UI/Components/Compo/Stats/OfferStats.razor
T
2026-07-16 11:24:21 +02:00

138 lines
7.9 KiB
Plaintext

@if (isLoading)
{
<LoadingData></LoadingData>
}
else
{
<div class="row">
<div class="col-2 px-2">
<div class="pb-2">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-2 rounded">
<div class="d-flex align-items-center justify-content-center">
<span class="fw-bold text-dark fs-5">Stato offerte</span>
</div>
</div>
</div>
</div>
<PieChart CanvasId="pieOfferCount" PieDict="@DatasetCount" DictColorFill="@FillColors" DictColorBorder="@BorderColors" Label="# Offerte" />
</div>
<div class="col-2 px-2">
<div class="pb-2">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-2 rounded">
<div class="d-flex align-items-center justify-content-center">
<span class="fw-bold text-dark fs-5">Venditori</span>
</div>
</div>
</div>
</div>
<PieChart CanvasId="pieDealerCount" PieDict="@DatasetDealerCount" DictColorFill="@FillDealerColors" DictColorBorder="@BorderDealerColors" Label="# Offerte" />
</div>
<div class="col-8 ps-4">
<div class="row">
<div class="col-12">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-3 rounded">
<div class="d-flex align-items-center justify-content-center gap-2">
<span class="fw-bold text-dark fs-5 ps-1">Offerte confermate</span>
</div>
</div>
</div>
</div>
</div>
<div class="row pt-3">
<div class="col-4">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-3 rounded">
<div class="d-flex align-items-center gap-2">
<span class="text-primary"><i class="fa-solid fa-coins fa-2x"></i></span>
<span class="fw-bold text-dark fs-5 ps-1">Margine medio:</span>
<span class="text-primary fs-5 fw-semibold">@MargineMedio() %</span>
</div>
</div>
</div>
</div>
<div class="col-4">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-3 rounded">
<div class="d-flex align-items-center gap-2">
<span class="text-primary"><i class="fa-solid fa-coins fa-2x"></i></span>
<span class="fw-bold text-dark fs-6 ps-1">Margine min:</span>
<span class="text-primary fs-6 fw-semibold">@MargineMin() %</span>
</div>
</div>
</div>
</div>
<div class="col-4">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-3 rounded">
<div class="d-flex align-items-center gap-2">
<span class="text-primary"><i class="fa-solid fa-coins fa-2x"></i></span>
<span class="fw-bold text-dark fs-6 ps-1">Margine max:</span>
<span class="text-primary fs-6 fw-semibold">@MargineMax() %</span>
</div>
</div>
</div>
</div>
</div>
<div class="row pt-3">
<div class="col-4">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-3 rounded">
<div class="d-flex align-items-center gap-2">
<span class="text-primary"><i class="fa-solid fa-home fa-2x"></i></span>
@if (AllRecords.FirstOrDefault() != null && AllRecords.FirstOrDefault()!.Envir == EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW)
{
<span class="fw-bold text-dark fs-5 ps-1">N° Finestre medio:</span>
}
else if (AllRecords.FirstOrDefault() != null && AllRecords.FirstOrDefault()!.Envir == EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.BEAM)
{
<span class="fw-bold text-dark fs-5 ps-1">N° pezzi medio:</span>
}
<span class="text-primary fs-5 fw-semibold">@NumElemMedio()</span>
</div>
</div>
</div>
</div>
<div class="col-4">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-3 rounded">
<div class="d-flex align-items-center gap-2">
<span class="text-primary"><i class="fa-solid fa-home fa-2x"></i></span>
@if (AllRecords.FirstOrDefault() != null && AllRecords.FirstOrDefault()!.Envir == EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW)
{
<span class="fw-bold text-dark fs-6 ps-1">N° Finestre min:</span>
}
else if (AllRecords.FirstOrDefault() != null && AllRecords.FirstOrDefault()!.Envir == EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.BEAM)
{
<span class="fw-bold text-dark fs-6 ps-1">N° Pezzi min:</span>
}
<span class="text-primary fs-6 fw-semibold">@NumElemMin()</span>
</div>
</div>
</div>
</div>
<div class="col-4">
<div class="card border-0 rounded-3 shadow">
<div class="card-header bg-primary bg-gradient bg-opacity-25 p-3 rounded">
<div class="d-flex align-items-center gap-2">
<span class="text-primary"><i class="fa-solid fa-home fa-2x"></i></span>
@if (AllRecords.FirstOrDefault() != null && AllRecords.FirstOrDefault()!.Envir == EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW)
{
<span class="fw-bold text-dark fs-6 ps-1">N° Finestre max:</span>
}
else if (AllRecords.FirstOrDefault() != null && AllRecords.FirstOrDefault()!.Envir == EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.BEAM)
{
<span class="fw-bold text-dark fs-6 ps-1">N° pezzi max:</span>
}
<span class="text-primary fs-6 fw-semibold">@NumElemMax()</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
}