Files
HerramientaCASA/HerramientaCASA/Components/Pages/HerramientaURBANTabs/CostesProducURBAN/HorasCostesURBAN.razor
2025-07-25 12:56:07 +02:00

108 lines
4.4 KiB
Plaintext

@using System.Globalization
@using bdHerramientaCACOA.HerramientaURBAN
<div class="d-flex flex-column">
<div class="d-flex justify-content-center">
<div class="col-md-6 row">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<tr>
<td class="colorFilasIntro fw-bold w4">Plazo de presentación de la documentación:</td>
<td class="text-end">
<div class="d-flex" style="gap:3px;">
@* <InputNumber TValue="int" Locale="es-ES" Min="0" class="inputForm formatoMoneda inputTabla" Value="@objetoURBAN.CostesProduccion.PlazoPresentacionDocumentos" ValueExpression="() => objetoURBAN.CostesProduccion.PlazoPresentacionDocumentos" ValueChanged="(value) => PlazoPresentacionDocumentosCambiado(value)"></InputNumber> meses *@
<InputNumber TValue="double" @bind-Value="objetoURBAN.CostesProduccion.PlazoPresentacionDocumentos"
step="any"
@oninput="e => controlarMeses(e.Value?.ToString())"
class="inputForm formatoMoneda inputTabla text-end" /> meses
</div>
</td>
</tr>
</table>
</div>
</div>
<div class="d-flex mt-3 justify-content-center">
<div class="col-md-6 row">
<div style="height: 24px;">
<b>Trabajo profesional</b>
</div>
<table class="table tablaCACOA tablaCACOA2 mb-0">
<thead>
<tr>
<th class="colorB fw-bold">Trabajos</th>
<th class="colorB fw-bold">Horas</th>
</tr>
</thead>
<tbody>
<tr>
<td class="colorB fw-bold">Horas en despacho profesional</td>
<td class="text-end">@objetoURBAN.CostesProduccion.HorasEnPlazo.MilesYDecimales() h</td>
</tr>
<tr>
<td class="colorB fw-bold">Horas mediante externalización</td>
<td class="text-end">@objetoURBAN.CostesProduccion.NumHorasMinimoExt.MilesYDecimales() h</td>
</tr>
@* <tr>
<td class="colorB fw-bold">Horas de producción en este plazo</td>
<td class="text-end">@objetoURBAN.CostesProduccion.HorasEnPlazo.MilesYDecimales() h</td>
</tr> *@
</tbody>
<tfoot>
<tr>
<td colspan="2" class="text-end colorC fw-bold w4">
Total horas del trabajo profesional: <span>@objetoURBAN.CostesProduccion.HorasTrabajoProfesional.MilesYDecimales() h </span>
</td>
</tr>
</tfoot>
</table>
</div>
@* <div class="col-md-6">
<p>Horas Trabajo profesional: @objetoURBAN.CostesProduccion.HorasTrabajoProfesional </p>
<p>Horas Anuales de produccion del desapacho profesional: @objetoURBAN.DespachoProfesional.HorasTotalesProduccion</p>
<p>Horas de produccion del despacho en ese plazo: @objetoURBAN.CostesProduccion.HorasEnPlazo</p>
<p>nº horas mínimo de externalizacion: @objetoURBAN.CostesProduccion.NumHorasMinimoExt</p>
</div> *@
</div>
</div>
@code {
[Parameter]
public URBAN objetoURBAN { get; set; } = new URBAN();
[CascadingParameter]
public CostesProduccionURBAN _Parent { get; set; }
protected override async Task OnInitializedAsync()
{
}
private async void PlazoPresentacionDocumentosCambiado(double e)
{
objetoURBAN.CostesProduccion.PlazoPresentacionDocumentos = e;
objetoURBAN.CalcularCostesProduccion();
await InvokeAsync(StateHasChanged);
_Parent.RefreshState();
}
private void controlarMeses(string meses)
{
if (double.TryParse(meses, out var valor))
{
string parseado = meses.ToString().Replace(",", ".");
objetoURBAN.CostesProduccion.PlazoPresentacionDocumentos = double.Parse(parseado, CultureInfo.InvariantCulture);
}
PlazoPresentacionDocumentosCambiado(objetoURBAN.CostesProduccion.PlazoPresentacionDocumentos);
}
}