Files
2025-11-12 19:15:28 +01:00

303 lines
13 KiB
Plaintext

<div class="card shadow">
<div class="card-header bg-info bg-opacity-50 bg-gradient">
<div class="d-flex justify-content-between mb-2">
<div class="px-1 fs-3">
<b>Simulazione</b> Costing
</div>
<div class="px-1">
@if (isEditing)
{
<button class="btn btn-warning" @onclick="DoCancel">Cancel <i class="fa-solid fa-ban"></i></button>
}
else
{
<button class="btn btn-primary" @onclick="DoEdit">Edit <i class="fa-solid fa-pencil"></i></button>
}
</div>
</div>
<div class="d-flex justify-content-between">
<div class="px-1">
<div class="input-group">
<span class="input-group-text" title="@CurrRecord.DriverNav.Descript">Driver</span>
<input placeholder="Qty Driver" @bind="@DriverQty" class="form-control form-control-sm text-end w-auto" type="number" step="0.001" style="width:5rem;" />
<span class="input-group-text" title="@CurrRecord.DriverNav.Descript"><b>@CurrRecord.DriverNav.Name</b> (@CurrRecord.DriverNav.Unit)</span>
</div>
<small class="small text-secondary" title="Prezzo">@CurrRecord.DriverNav.Descript</small>
</div>
<div class="px-1 fs-3">
<div class="fw-bold" title="Prezzo">
@($"{PriceCalc:C2}")
</div>
<div class="small text-secondary" title="Prezzo">(@($"{CostCalc:C2}"))</div>
</div>
</div>
</div>
<div class="card-body p-1">
<ul class="list-group">
<li class="list-group-item d-flex justify-content-between">
<div>
<div>Cod</div>
<small class="small text-secondary">
Codifica per ordine/gruppo
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@CurrRecord.CodResource</b>
}
else
{
<div class="input-group">
<input class="form-control form-control-lg text-end w-auto" @bind="@CurrRecord.CodResource" type="text" />
<span class="input-group-text">#</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>Nome</div>
<small class="small text-secondary">
Denominazione Risorsa
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@CurrRecord.Name</b>
}
else
{
<div class="input-group">
<input class="form-control form-control-lg text-end w-auto" @bind="@CurrRecord.Name" type="text" />
<span class="input-group-text">#</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>Driver Impiegato</div>
<small class="small text-secondary">
Driver di Costing
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<span><b>@CurrRecord.DriverNav.Name</b> (@CurrRecord.DriverNav.Unit)</span>
}
else
{
<select @bind="@CurrRecord.CostDriverID" class="form-select form-select-lg">
@foreach (var itemAlt in CostDriverList)
{
<option value="@itemAlt.CostDriverID">@itemAlt.Name (@itemAlt.Unit)</option>
}
</select>
}
</div>
<small class="small text-secondary">
@CurrRecord.DriverNav.Descript
</small>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>Budget Value Driver</div>
<small class="small text-secondary">
Base unità di calcolo (es ore/periodo)
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@($"{CurrRecord.CostDriverBudget:N2}")</b>
}
else
{
<div class="input-group">
<InputDecimal Decimals="3" Step="0.001M" CssClass="form-control form-control-lg text-end w-auto" @bind-Value="@CurrRecord.CostDriverBudget"></InputDecimal>
<span class="input-group-text">#</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>Costi Fissi</div>
<small class="small text-secondary">
Costi Fissi nell'unità di riferimento (affitti, ammortamenti)
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@($"{CurrRecord.FixedCost:C2}")</b>
}
else
{
<div class="input-group">
<InputDecimal Decimals="3" Step="0.001M" CssClass="form-control form-control-lg text-end w-auto" @bind-Value="@CurrRecord.FixedCost"></InputDecimal>
<span class="input-group-text">€</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>Costi Variabili</div>
<small class="small text-secondary">
Costi Variabili nell'unità di riferimento (energia, consumabili, no materie prime)
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@($"{CurrRecord.VariableCost:C2}")</b>
}
else
{
<div class="input-group">
<InputDecimal Decimals="3" Step="0.001M" CssClass="form-control form-control-lg text-end w-auto" @bind-Value="@CurrRecord.VariableCost"></InputDecimal>
<span class="input-group-text">€</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>Costo Lavoro</div>
<small class="small text-secondary">
Costi HR nell'unità di riferimento (diretti)
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@($"{CurrRecord.LaborCost:C2}")</b>
}
else
{
<div class="input-group">
<InputDecimal Decimals="3" Step="0.001M" CssClass="form-control form-control-lg text-end w-auto" @bind-Value="@CurrRecord.LaborCost"></InputDecimal>
<span class="input-group-text">€</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>OverHead</div>
<small class="small text-secondary">
Costi OH nell'unità di riferimento (indiretti)
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@($"{CurrRecord.OverHeadCost:C2}")</b>
}
else
{
<div class="input-group">
<InputDecimal Decimals="3" Step="0.001M" CssClass="form-control form-control-lg text-end w-auto" @bind-Value="@CurrRecord.OverHeadCost"></InputDecimal>
<span class="input-group-text">€</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>OverHead +%</div>
<small class="small text-secondary">
Maggiorazione Costi OH nell'unità di riferimento (indiretti)
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@($"{CurrRecord.OverHeadPerc:P2}")</b>
}
else
{
<div class="input-group">
<InputPercent CssClass="form-control form-control-lg text-end" @bind-Value="@CurrRecord.OverHeadPerc"></InputPercent>
<span class="input-group-text">+</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>EBT +%</div>
<small class="small text-secondary">
Maggiorazione Utili nell'unità di riferimento (indiretti)
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@($"{CurrRecord.EBTPerc:P2}")</b>
}
else
{
<div class="input-group">
<InputPercent CssClass="form-control form-control-lg text-end" @bind-Value="@CurrRecord.EBTPerc"></InputPercent>
<span class="input-group-text">+</span>
</div>
}
</div>
</div>
</li>
<li class="list-group-item d-flex justify-content-between">
<div>
<div>Margine +%</div>
<small class="small text-secondary">
Margine Prezzo (scontabile) nell'unità di riferimento (indiretti)
</small>
</div>
<div class="text-end">
<div class="fs-3">
@if (!isEditing)
{
<b>@($"{CurrRecord.PriceMargin:P2}")</b>
}
else
{
<div class="input-group">
<InputPercent CssClass="form-control form-control-lg text-end" @bind-Value="@CurrRecord.PriceMargin"></InputPercent>
<span class="input-group-text">+</span>
</div>
}
</div>
</div>
</li>
@if (isEditing)
{
<li class="list-group-item d-flex justify-content-between">
<button class="btn btn-lg btn-success w-100" @onclick="DoSave">Save <i class="fa-solid fa-floppy-disk"></i></button>
</li>
}
</ul>
</div>
</div>