@using System.Globalization
<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="double"
                                         @bind-Value="objetoCASA.CostesProduccion.PlazoPresentacionDocumentos"
                                         step="any"
                                         @oninput="e => controlarMeses(e.Value?.ToString())"
                                         class="inputForm formatoMoneda inputTabla text-end" />

                        </div>
                    </td>
                </tr>
            @*     @if (objetoCASA.CostesProduccion.IncrementoUrgencia > 0)
                {
                    <tr>
                        <td colspan="2" style="color:red">
                            Incremento por urgencia del @objetoCASA.CostesProduccion.IncrementoUrgencia% en el coste de producción de la documentación
                        </td>
                    </tr>
                } *@

            </table>
            <div class="mb-3" style="height:20px;">
                @if (objetoCASA.CostesProduccion.IncrementoUrgencia > 0)
                {
                    <label style="font-size:10px;">Incremento del @objetoCASA.CostesProduccion.IncrementoUrgencia% en los costes de producción de la documentación por plazo de presentación reducido</label>
                }
            </div>
    </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 elaboración documentación</td>
                    <td class="text-end">@objetoCASA.TrabajoProfesional.HorasTPEDocumentacion.MilesYDecimales() h</td>
                </tr>

                <tr>
                    <td class="colorB fw-bold">HORAS ANUALES DE PRODUCCIÓN</td>
                    <td class="text-end">@objetoCASA.DespachoProfesional.HorasTotalesProduccion.MilesYDecimales() h</td>
                </tr>

                <tr>
                    <td class="colorB fw-bold">Nº Horas a completar mediante externalización</td>
                    <td class="text-end">@objetoCASA.CostesProduccion.NumHorasMinimoExt.MilesYDecimales() h</td>
                </tr>

                <tr>
                    <td class="colorB fw-bold">Horas de dirección de obra</td>
                    <td class="text-end">@objetoCASA.TrabajoProfesional.HorasTPEDireccion.MilesYDecimales() h</td>
                </tr>

                <tr>
                    <td class="colorB fw-bold">Horas de producción en este plazo</td>
                    <td class="text-end">@objetoCASA.CostesProduccion.HorasProduccionDespachoElabDocumentacion.MilesYDecimales() h</td>
                </tr>

                <tr>
                    <td class="colorC fw-bold w4">HORAS TRABAJO PROFESIONAL (fases encargadas)</td>
                    <td class="text-end">@objetoCASA.TrabajoProfesional.HorasTPE.MilesYDecimales() h</td>
                </tr>
                </tbody>
            </table> *@
            <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 elaboración documentación</td>
                        <td class="text-end">@objetoCASA.TrabajoProfesional.HorasTPEDocumentacion.MilesYDecimales() h</td>
                    </tr>

                    <tr>
                        <td class="colorB text-end">Horas de documentación en Despacho Profesional</td>
                        <td class="text-start">@objetoCASA.CostesProduccion.HorasProduccionDespachoElabDocumentacion.MilesYDecimales() h</td>
                    </tr>

                    <tr>
                        <td class="colorB text-end">Horas de documentación mediante externalización</td>
                        <td class="text-start">@objetoCASA.CostesProduccion.NumHorasMinimoExt.MilesYDecimales() h</td>
                    </tr>

                    <tr>
                        <td class="colorB fw-bold">Horas de dirección de obra</td>
                        <td class="text-end">@objetoCASA.TrabajoProfesional.HorasTPEDireccion.MilesYDecimales() h</td>
                    </tr>

                    <tr>
                        <td class="colorC fw-bold w4">HORAS TRABAJO PROFESIONAL</td>
                        <td class="text-end">@objetoCASA.TrabajoProfesional.HorasTPE.MilesYDecimales() h</td>
                    </tr>
                </tbody>
            </table>
        </div>

    </div>
</div>

@code {
    [Parameter]
    public CASA objetoCASA { get; set; } = new CASA();

    [CascadingParameter]
    public CostesProduccion _Parent { get; set; }

    protected override async Task OnInitializedAsync()
    {

    }
    private async void PlazoPresentacionDocumentosCambiado(double e)
    {
        objetoCASA.CostesProduccion.PlazoPresentacionDocumentos = e;

        objetoCASA.CalcularCostesProduccion();

        await InvokeAsync(StateHasChanged);
        _Parent.RefreshState();
    }

    private void controlarMeses(string meses)
    {


        if (double.TryParse(meses, out var valor))
        {
            string parseado = meses.ToString().Replace(",", ".");
            objetoCASA.CostesProduccion.PlazoPresentacionDocumentos = double.Parse(parseado, CultureInfo.InvariantCulture);
        }

        PlazoPresentacionDocumentosCambiado(objetoCASA.CostesProduccion.PlazoPresentacionDocumentos);
    }
}
