@using System.Globalization
@using bdHerramientaCACOA.HerramientaURBAN
<div id="DespachoURBANImprimir" class="d-flex flex-column align-items-center">
    @* DESPACHO URBAN*@
    <div class="col-12 mx-auto mb-5">
        <div class="mb-4 col-8 mx-auto justify-content-center d-flex">
            <label style="color: #078b98 !important"><b>Despacho Profesional</b></label>
        </div>
        <div class="col-8 mx-auto" style="align-items: flex-end;">
            <div style="height: 49px;">
                <b>Coste hora Despacho Profesional</b>
            </div>

            <div class="table-responsive">

                <table class="table tablaCACOA tablaCACOA2 mb-0">

                    <thead>
                        <tr>
                            <th class="colorB fw-bold">Tipo de costes</th>
                            <th class="colorB fw-bold">Coste/hora</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td class="colorB w4">Costes directos</td>
                            <td class="text-end">@objetoURBAN.DespachoProfesional.CostesDirectos.MilesYDecimales() €/hora</td>
                        </tr>

                        <tr>
                            <td class="colorB ">Costes indirectos</td>
                            <td class="text-end">@objetoURBAN.DespachoProfesional.TasaCostesIndirectos.MilesYDecimales() €/hora</td>
                        </tr>
                        <tr>
                            <td class="colorB ">Costes variables</td>
                            <td class="text-end">@objetoURBAN.CostesProduccion.CostesVariables.MilesYDecimales() €/hora</td>
                        </tr>
                    </tbody>
                    <tfoot>
                        <tr>
                            <td colspan="2" class="text-end fw-bold colorC TotalesTabla">
                                <div style="height:28px; align-content:center;">
                                    Total Coste hora Despacho Profesional: <span>  @objetoURBAN.CostesProduccion.TotalCostes.MilesYDecimales() €/hora</span>
                                </div>
                            </td>
                        </tr>
                    </tfoot>
                </table>
            </div>

        </div>
        <div class="col-8 mx-auto">

            <div style="height: 49px;">
                <b>Coste hora Externalización</b>
            </div>
            <div class="table-responsive">
                <table class="table tablaCACOA tablaCACOA2 mb-0">
                    <thead>
                        <tr>
                            <th class="colorB fw-bold">Externalización</th>
                            <th class="colorB fw-bold">Porcentaje</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td class="colorFilasIntro  w4">Incremento por externalización</td>
                            <td class="text-end">
                                <span>
                                    @objetoURBAN.CostesProduccion.CoeficienteCostesExternalizacion %
                                </span>
                            </td>
                        </tr>
                    </tbody>
                    <tfoot>
                        <tr>
                            <td colspan="2" class="text-end fw-bold colorC TotalesTabla">
                                Coste hora Externalización: <span>  @objetoURBAN.CostesProduccion.CosteHoraExternalizacion.MilesYDecimales() €/hora</span>
                            </td>
                        </tr>
                    </tfoot>
                </table>
            </div>

        </div>
    </div>

    @* TRABAJAO PROFESIONAL *@
    <div class="col-12 mx-auto mb-5">
        <div class="mb-4 col-8 mx-auto justify-content-center d-flex">
            <label style="color: #078b98 !important"><b>Trabajo Profesional</b></label>
        </div>
        <div class="col-12 d-flex justify-content-center" style="gap:20px;">
            <div class="formatoCampos pt-2">
                <label class="tituloLbl">Tipo de Documento:</label>
                @if (objetoURBAN.TrabajoProfesional.idTipoDocumentacion != 0)
                {
                    <label>@CultureInfo.CurrentCulture.TextInfo.ToTitleCase(@objetoURBAN.Enumerados.TiposDeDocumentos.First(x => x.idEnumeracion == objetoURBAN.TrabajoProfesional.idTipoDocumentacion).Descripcion.ToLower())</label>
                }
                else
                {
                <label>No Seleccionado</label>    
                }
            </div>
            <div class="formatoCampos pt-2">
                <label class="tituloLbl">Documento:</label>
                @if (objetoURBAN.TrabajoProfesional.idTipoDocumentacion != 0)
                {
                    <label>@objetoURBAN.Enumerados.ProyectosPorTipo(objetoURBAN.TrabajoProfesional.idTipoDocumentacion).First(x => x.idtipoproyectos == objetoURBAN.TrabajoProfesional.idTipoProyecto).Descripcion</label>
                }
                else
                {
                    <label>No Seleccionado</label>
                }
            </div>
        </div>
        @* TABLAS DE DATOS MINIMOS Y OPCIONALES *@
        <div class="col-11 mx-auto">
            @* TABLA DE DATOS MINIMOS *@

            <div style="height: 49px; margin-top:50px;">
                <b>Documentación Mínima:</b>
            </div>
            <div class="table-responsive">
                <table class="table tablaCACOA tablaCACOA2 mb-0">
                    <thead>
                        <tr>
                            <th class="colorB fw-bold">Descripción</th>
                        </tr>
                    </thead>
                    <tbody>
                        @if (objetoURBAN.TrabajoProfesional.DocumentacionMinima.Count > 0)
                        {
                            @foreach (var item in objetoURBAN.TrabajoProfesional.DocumentacionMinima)
                            {
                                <tr>
                                    <td class="colorB w4">@item.Descripcion</td>
                                </tr>
                            }

                        }
                        else
                        {
                            <tr>
                                <td class="colorB w4 text-center">No hay registros</td>
                            </tr>
                        }
                    </tbody>
                </table>
            </div>

            @* TABLA DE DATOS OPCIONALES *@

            <div style="height: 49px; margin-top:50px;">
                <b>Documentación Opcional:</b>
            </div>
            <div class="table-responsive">
                <table class="table tablaCACOA tablaCACOA2 mb-0">
                    <thead>
                        <tr>
                            <th class="colorB fw-bold">Descripción</th>
                            <th class="colorB fw-bold">Añadida</th>
                        </tr>
                    </thead>
                    <tbody>
                        @if (objetoURBAN.TrabajoProfesional.DocumentacionOpcional.Count != 0)
                        {

                            @foreach (var item in objetoURBAN.TrabajoProfesional.DocumentacionOpcional)
                            {
                                <tr>
                                    <td class="colorB w4">@item.Descripcion</td>
                                    <td class="colorB w4 text-end">

                                        @if (@item.Checkeada)
                                        {
                                            <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-check-square" viewBox="0 0 16 16">
                                                <path d="M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z" />
                                                <path d="M10.97 4.97a.75.75 0 0 1 1.071 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425z" />
                                            </svg>
                                        }
                                        else
                                        {
                                            <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-square" viewBox="0 0 16 16">
                                                <path d="M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z" />
                                            </svg>
                                        }

                                    </td>
                                </tr>
                            }
                        }
                        else
                        {
                            <tr>
                                <td colspan="2" class="colorB text-center">No hay registros</td>
                            </tr>
                        }
                    </tbody>
                </table>
                </div>
        </div>
        @* TABLA DE DATOS NECESARIOS *@
        <div class="col-11 mx-auto">
            <div style="height: 49px; margin-top:50px;">
                <b>Datos Necesarios:</b>
            </div>
            <div class="table-responsive">
                <table class="table tablaCACOA tablaCACOA2 mb-0">
                    <thead>
                        <tr>
                            <th class="colorB fw-bold">Descripción</th>
                            <th class="colorB fw-bold">Valor</th>
                        </tr>
                    </thead>
                    <tbody>
                        @if (objetoURBAN.TrabajoProfesional.DatosNecesarios.Count != 0)
                        {
                            @foreach (var item in objetoURBAN.TrabajoProfesional.DatosNecesarios)
                            {
                                <tr>
                                    <td class="colorB w4">@item.Descripcion</td>
                                    <td class="colorB w4 text-end">@item.ValorNecesario</td>
                                </tr>
                            }
                        }
                        else
                        {
                            <tr>
                                <td colspan="2" class="colorB text-center">No hay registros</td>
                            </tr>
                        }

                    </tbody>
                </table>
            </div>
        </div>
        <div class="col-11 mx-auto">
            <div style="height: 49px; margin-top:50px;">
                <b>Fases:</b>
            </div>
            <div class="table-responsive">
                <table class="table tablaCACOA tablaCACOA2 mb-0">
                    <thead>
                        <tr>
                            <th class="colorB fw-bold">Descripción</th>
                            <th class="colorB fw-bold"></th>
                        </tr>
                    </thead>
                    <tbody>
                        @foreach (var item in objetoURBAN.TrabajoProfesional.FasesTrabajoProfesional)
                        {
                            <tr>
                                <td class="colorB w4">@item.Denominacion</td>
                                <td class="colorB w4 text-end">@item.Porcentaje %</td>
                            </tr>
                        }
                    </tbody>

                    <tfoot>
                        <tr>
                            <td colspan="2" class="text-end fw-bold colorC TotalesTabla">

                                <div class="d-flex justify-content-end">
                                    <div style="align-self: center;">
                                        @if (objetoURBAN.TrabajoProfesional.FasesTrabajoProfesional.Sum(x => x.Porcentaje) != 100)
                                        {
                                            <div>
                                                Trabajo en misión parcial: <span> @objetoURBAN.TrabajoProfesional.FasesTrabajoProfesional.Sum(x => x.Porcentaje) %</span>
                                            </div>
                                        }
                                        else
                                        {
                                            <div>
                                                Total: <span> @objetoURBAN.TrabajoProfesional.FasesTrabajoProfesional.Sum(x => x.Porcentaje) %</span>
                                            </div>
                                        }
                                    </div>
                                </div>

                            </td>
                        </tr>
                    </tfoot>
                </table>
            </div>
        </div>

    </div>

    @* INNOVACIÓN INSTRUMENTOS*@
    <div class="col-11 mx-auto mb-5">
        <div>
            <div class="mt-3 mb-3"><b>Innovacion de los instrumentos</b></div>
            <p class="col-6">
                <label>@objetoURBAN.TrabajoProfesional.valorInstrumentos %</label>
            </p>

            @foreach (var enu in objetoURBAN.Enumerados.ListaInstrumentos)
            {
                <div class="form-check" style="gap:10px;">
                    @if (enu.Seleccionado)
                    {
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-circle-fill" viewBox="0 0 16 16">
                            <circle cx="8" cy="8" r="8" />
                        </svg>
                    }
                    else
                    {
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-circle" viewBox="0 0 16 16">
                            <path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16" />
                        </svg>

                    }
                    <label style="margin-left:10px;" class="form-check-label" for="@enu.idEnumeracion">@enu.Descripcion</label>
                </div>
            }
            <table class="tablaAlter mt-4" style="width: 100%;">
                <tr>
                    <td class="tdAlter TotalesTabla" style="width: 320px;">HORAS TRABAJO PROFESIONAL URBANISMO: </td>
                    <td class="tdAlter TotalesTabla tdAlineadoDerecha">@objetoURBAN.TrabajoProfesional.horasTrabProfesional.MilesYDecimales() h</td>
                </tr>
            </table>

        </div>


    </div>

    @* PLAZOS Y HORAS *@
    <div class="col-11 mx-auto mb-5">
        <div class="row justify-content-center align-content-center align-items-center">
            <div class="col-9 mb-5 align-items-center">
                <table class="table tablaCACOA tablaCACOA2 mb-0">
                    <tr>
                        <td style="width:60%" class="colorFilasIntro fw-bold w4">Plazo de presentación de la documentación:</td>
                        <td class="text-end">
                            <div class="justify-content-end d-flex" style="gap:3px;">
                                <span class="text-end">@objetoURBAN.CostesProduccion.PlazoPresentacionDocumentos</span>meses
                            </div>
                        </td>
                    </tr>
                </table>

            </div>
            <div class="col-9 mb-5 ">
                <div style="height: 49px;">
                    <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 ">Horas en despacho profesional</td>
                            <td class="text-end">@objetoURBAN.CostesProduccion.HorasEnPlazo.MilesYDecimales() h</td>
                        </tr>

                        <tr>
                            <td class="colorB ">Horas mediante externalización</td>
                            <td class="text-end">@objetoURBAN.CostesProduccion.NumHorasMinimoExt.MilesYDecimales() h</td>
                        </tr>
                    </tbody>
                    <tfoot>
                        <tr>
                            <td colspan="2" class="text-end colorC fw-bold w4 TotalesTabla">
                                Total horas del trabajo profesional:  <span>@((objetoURBAN.CostesProduccion.HorasEnPlazo + objetoURBAN.CostesProduccion.NumHorasMinimoExt).MilesYDecimales()) h </span>
                            </td>
                        </tr>
                    </tfoot>
                </table>
            </div>
        </div>
        
    </div>

    @* COSTE DE PRODUCCIÓN *@
    <div class="col-12 mx-auto mb-5">
        <div class="mb-4 col-8 mx-auto justify-content-center d-flex">
            <label style="color: #078b98 !important"><b>Coste de producción</b></label>
        </div>
        <div class="col-8 mx-auto">
            <div style="height: 49px;">
                <b>Costes Asociados a los Servicios de Arquitectura</b>
            </div>
            <table class="table tablaCACOA tablaCACOA2 mb-0">

                <thead>
                    <tr>
                        <th class="colorB fw-bold">Concepto</th>
                        <th class="colorB fw-bold text-end"></th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td class="tdAlter TotalesTabla fw-bold ">COSTES  DE PRODUCCIÓN DEL TRABAJO PROFESIONAL</td>
                        <td class=" tdAlter TotalesTabla text-end"><span> @objetoURBAN.CostesProduccion.CostesProduccionTrabProf.MilesYDecimales() €</span></td>
                    </tr>

                    <tr>
                        <td class="TotalesTabla colorFilasIntro "><b>Beneficio</b> (antes de impuestos)</td>
                        <td class="TotalesTabla text-end">
                            <div class="text-end align-items-end" style="gap:3px;">
                                <label>@objetoURBAN.CostesProduccion.Beneficio</label> %
                            </div>
                        </td>
                    </tr>
                </tbody>
                <tfoot>
                    <tr>
                        <td colspan="2" class="TotalesTabla text-end fw-bold">
                            Precio del trabajo profesional:  <span>@objetoURBAN.CostesProduccion.PrecioTrabajoProfesional.MilesYDecimales() € </span>
                        </td>
                    </tr>
                </tfoot>
            </table>
        </div>
        </div>

</div>



@code {
    [Parameter]
    public URBAN objetoURBAN { get; set; } = new URBAN();

    public tsHerramientasCACOA bd;

    protected override async Task OnInitializedAsync()
    {
        bd = tsHerramientasCACOA.NuevoContexto(SoloLectura: false);
    }
    public void RefreshState()
    {
        this.StateHasChanged();
    }
}
