Acabado cambios de estética del módulo de

impresión
This commit is contained in:
2025-09-03 13:46:01 +02:00
parent 9e4c01309b
commit 666ea2caad
10 changed files with 394 additions and 247 deletions

View File

@@ -12,7 +12,7 @@
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css" rel="stylesheet" />
<link href="_content/Blazor.Bootstrap/blazor.bootstrap.css" rel="stylesheet" />
<link href="_content/Blazor.Bootstrap/Blazor.Bootstrap.bundle.scp.css" rel="stylesheet" />
<link href="Content/Site.css?v=0.45" rel="stylesheet" />
<link href="Content/Site.css?v=0.49" rel="stylesheet" />
<link href="Content/all.min.css" rel="stylesheet" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
<script src="Scripts/jquery.min.js"></script>

View File

@@ -326,8 +326,8 @@
Format = PuppeteerSharp.Media.PaperFormat.A4,
MarginOptions = new PuppeteerSharp.Media.MarginOptions
{
Top = "15mm",
Bottom = "10mm",
Top = "17mm",
Bottom = "9mm",
},
DisplayHeaderFooter=true,
HeaderTemplate = @"
@@ -337,7 +337,7 @@
}
#header, #footer { padding: 0 !important; }
</style>
<div style='width:100%; font-size:12px; color:#078b98; font-weight:bold; padding:5px 10px;background-color: #D7ECEF;'>
<div style='height:55px; width:100%; font-size:12px; color:#078b98; font-weight:bold; padding:5px 10px;background-color: #D7ECEF;'>
<table style='width:100%; border:0; border-collapse:collapse;'>
<tr>
<td style='text-align:left; width:50%;'>

View File

@@ -29,7 +29,7 @@ Responsive="true">
<CurrencyInput HideCurrencySymbol="true" TValue="double" Locale="es-ES" Min="0" class="inputForm formatoMoneda inputTabla" Value="@context.importe" ValueExpression="() => context.importe" ValueChanged="(value) => valorCambiado(value,context)"></CurrencyInput> €
</div>
</GridColumn>
<GridColumn Class="text-end columna20Ancho" TItem="CASA.CosteIndirecto" HeaderText="Periocidad">
<GridColumn Class="text-end columna20Ancho" TItem="CASA.CosteIndirecto" HeaderText="Periodicidad">
@* @if (context != itemSeleccionado)
{
<span>@listadoPeriodos.FirstOrDefault(p => p.idEnumeracion == context.idPeriodicidad)?.ValorAlfabetico1</span>

View File

@@ -29,7 +29,7 @@
<CurrencyInput HideCurrencySymbol="true" TValue="double" Locale="es-ES" Min="0" class="inputForm formatoMoneda inputTabla" Value="@context.importe" ValueExpression="() => context.importe" ValueChanged="(value) => valorCambiado(value,context)"></CurrencyInput> €
</div>
</GridColumn>
<GridColumn Class="text-end columna20Ancho" HeaderTextAlignment="Alignment.Center" TItem="CASA.CosteIndirecto" HeaderText="Periocidad">
<GridColumn Class="text-end columna20Ancho" HeaderTextAlignment="Alignment.Center" TItem="CASA.CosteIndirecto" HeaderText="Periodicidad">
@* @if (context != itemSeleccionado)
{
<span>@listadoPeriodos.FirstOrDefault(p => p.idEnumeracion == context.idPeriodicidad)?.ValorAlfabetico1</span>

View File

@@ -1,21 +1,33 @@
<div id="DespachoImprimir" class="d-flex flex-column align-items-center">
<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>
@* ENCABEZADO DE LA PAGINA *@
<div class="EncabezadoImprimir">
<p>
Documento impreso del módulo de Servicios de Arquitectura Edificación con los datos y
estimación de Costes de Producción resultado de la simulación.
</p>
<div class="d-flex flex-column mt-3">
<label>Simulación: <span class="NombreSimulacionImprimir">@objetoCASA.NombreSimulacion</span></label>
<label>Fecha de creación: <span class="NombreSimulacionImprimir">poner aqui la fecha de creacion</span></label>
</div>
</div>
<div class="col-8 mx-auto" style="align-items: flex-end;">
<div style="height: 49px;">
@* TABLA COSTE HORA DESPACHO PROFESIONAL *@
<div class="col-8 mx-auto" style="align-items: flex-end; margin-bottom:30px;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Coste hora Despacho Profesional</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Tipo de costes</th>
<th class="colorB fw-bold">Coste/hora</th>
<th>Tipo de costes</th>
<th>Coste/hora</th>
</tr>
</thead>
<tbody>
@@ -37,7 +49,7 @@
<tr>
<td colspan="2" class="text-end fw-bold colorC TotalesTabla">
<div style="height:28px; align-content:center;">
Total Coste hora Despacho Profesional: <span> @objetoCASA.CostesProduccion.TotalCostes.MilesYDecimales() €/hora</span>
Coste hora Despacho Profesional: <span> @objetoCASA.CostesProduccion.TotalCostes.MilesYDecimales() €/hora</span>
</div>
</td>
</tr>
@@ -46,17 +58,20 @@
</div>
</div>
@* TABLA COSTE HORA EXTERNALIZACION *@
<div class="col-8 mx-auto">
<div style="height: 49px;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Coste hora Externalización</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Externalización</th>
<th class="colorB fw-bold">Porcentaje</th>
<th width="75%">Externalización</th>
<th>Porcentaje</th>
</tr>
</thead>
<tbody>
@@ -65,7 +80,7 @@
<td class="text-end">
<span>
@objetoCASA.CostesProduccion.CoeficienteCostesExternalizacion %
</span>
</span>
</td>
</tr>
</tbody>
@@ -81,30 +96,31 @@
</div>
</div>
<div class="col-12 mx-auto mb-5">
<div class="mb-4 col-11 mx-auto justify-content-center d-flex">
<label style="color: #078b98 !important"><b>Trabajo Profesional</b></label>
</div>
<div class="col-11 mx-auto" style="align-items: flex-end;">
<div style="height: 49px;">
<b>Usos/Tipologías</b>
</div>
<div class="table-responsive">
@* TABLA USOS/TIPOLOGIAS *@
<table class="table tablaCACOA tablaCACOA2 mb-0">
<thead>
<tr>
<th class="colorB fw-bold">Superficie</th>
<th class="colorB fw-bold">Usos</th>
<th class="colorB fw-bold">Tipología</th>
<th class="colorB fw-bold">Intervención</th>
</tr>
</thead>
<tbody>
<div class="col-11 mx-auto" style="align-items: flex-end;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Usos/Tipologías</b>
</div>
<div class="table-responsive">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th width="15%">Superficie (m²)</th>
<th width="20%">Usos</th>
<th width="35%">Tipología</th>
<th width="30%">Intervención</th>
</tr>
</thead>
<tbody>
@if (objetoCASA.TrabajoProfesional.Usos.Count != 0)
{
@foreach(var uso in objetoCASA.TrabajoProfesional.Usos){
@foreach (var uso in objetoCASA.TrabajoProfesional.Usos)
{
<tr>
<td class="text-end">@uso.superficie.MilesYDecimales()</td>
<td>@objetoCASA.Enumerados.GruposTipologias?.FirstOrDefault(x => x.idEnumeracion == uso.idGrupoTipologia)?.ValorAlfabetico1</td>
@@ -117,81 +133,69 @@
{
<tr>
<td colspan="4" class="text-center">No hay registros</td>
</tr>
</tr>
}
</tbody>
<tfoot>
<tr>
<td rowspan="4" class="text-end fw-bold colorC TotalesTabla">
<div style="height:28px; align-content:center;">
Total superficie: <span> @objetoCASA.TrabajoProfesional.Usos.Sum(x=>x.superficie).MilesYDecimales()</span>
</div>
</td>
</tr>
</tfoot>
</table>
</div>
</div>
<div class="col-10 mx-auto" style="align-items: flex-end;">
<div class="d-flex justify-content-center">
<div class="col-md-10">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<tfoot>
<tr>
<td class="colorFilasIntro fw-bold">Plazo de presentación de la documentación:</td>
<td class="text-end">
<span class="inputForm formatoMoneda text-end">@objetoCASA.CostesProduccion.PlazoPresentacionDocumentos meses</span>
<td colspan="4" class="fw-bold colorC TotalesTabla">
<div style="height:28px;">
Total superficie: <span> @objetoCASA.TrabajoProfesional.Usos.Sum(x => x.superficie).MilesYDecimales() m²</span>
</div>
</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>
</tfoot>
</table>
</div>
</div>
<div class="col-10 mx-auto d-flex justify-content-center" style="align-items: flex-end;">
<div class="col-10 mx-auto d-flex justify-content-center" style="align-items: flex-end; margin-top:100px;">
<div class="col-md-10 row ">
<div style="height: 49px;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Trabajo profesional</b>
</div>
<table class="table tablaCACOA tablaCACOA2 mb-0">
@* PLAZO DE PRESENTACION *@
<div style="font-size:9pt;" class="fw-bold">
<label>Plazo de presentación de la documentación: <span>@objetoCASA.CostesProduccion.PlazoPresentacionDocumentos meses</span></label>
</div>
<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>
@* TABLA TRABAJO/HORA *@
<table class="TablaImprimir mb-0">
<thead>
<tr>
<th class="colorB fw-bold">Trabajos</th>
<th class="colorB fw-bold">Horas</th>
<th>Trabajos</th>
<th>Horas</th>
</tr>
</thead>
<tbody>
<tr>
<td class="colorB fw-bold">Horas elaboración documentación</td>
<td class="text-start">@objetoCASA.TrabajoProfesional.HorasTPEDocumentacion.MilesYDecimales() h</td>
<td>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-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-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>Horas de dirección de obra</td>
<td class="text-end">@objetoCASA.TrabajoProfesional.HorasTPEDireccion.MilesYDecimales() h</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="2" class="TotalesTabla text-end fw-bold">Horas trabajo profesional @objetoCASA.TrabajoProfesional.TotalHorasTPE.MilesYDecimales() h</td>
@@ -205,94 +209,114 @@
</div>
<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>Costes de Producción</b></label>
</div>
@* TABLA COSTES ASOCIADOS A LOS SEVICIOS DE ARQUITECTURA *@
<div class="col-8 mx-auto mb-4">
<div style="height: 49px;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Costes Asociados a los Servicios de Arquitectura</b>
</div>
<table class="tablaAlter" style="width:100%">
<tr>
<td class="tdAlter TotalesTabla" style="font-size:12px;"> COSTES DE PRODUCCIÓN DEL TRABAJO PROFESIONAL: </td>
<tbody style="font-size:9pt;">
<tr>
<td class="TotalesTabla" > COSTES DE PRODUCCIÓN DEL TRABAJO PROFESIONAL: </td>
<td class="tdAlter TotalesTabla tdAlineadoDerecha" style="width: 30%; font-weight:bold;font-size:12px;">
@objetoCASA.CostesProduccion.CostesProduccionTrabProf.MilesYDecimales() €
</td>
</tr>
<tr>
<td class="TotalesTabla" style="font-size:12px;"><b>Beneficio</b> (antes de impuestos) </td>
<td class="tdAlineadoDerecha TotalesTabla" style="font-size:12px;">
<div class="justify-content-end" style="gap:3px;">
<span>@objetoCASA.CostesProduccion.Beneficio %</span>
</div>
</td>
</tr>
<tr>
<td colspan="2" class="text-end fw-bold TotalesTabla tablaCACOA">
Precio del trabajo profesional: <span>@objetoCASA.CostesProduccion.PrecioTrabProf.MilesYDecimales() € </span>
</td>
</tr>
<td class=" TotalesTabla tdAlineadoDerecha" style="width: 30%;">
@objetoCASA.CostesProduccion.CostesProduccionTrabProf.MilesYDecimales() €
</td>
</tr>
<tr>
<td class="TotalesTabla">Beneficio <span style="font-size:7pt;">(antes de impuestos)</span> </td>
<td class="tdAlineadoDerecha TotalesTabla">
<div class="justify-content-end" style="gap:3px;">
<span>@objetoCASA.CostesProduccion.Beneficio %</span>
</div>
</td>
</tr>
</tbody>
<tfoot style=" border-top: 1px solid black;">
<tr>
<td colspan="2" class="text-end fw-bold TotalesTabla tablaCACOA">
Precio del trabajo profesional: <span>@objetoCASA.CostesProduccion.PrecioTrabProf.MilesYDecimales() € </span>
</td>
</tr>
</tfoot>
</table>
</div>
@* TABLA OTROS TRABAJOS INCLUIDOS EN EL ENCARGO *@
@if (objetoCASA.CostesProduccion.OtrosTrabajos.Count != 0)
{
<div class="col-8 mx-auto">
<div style="height: 49px;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Otros trabajos incluidos en el Encargo</b>
</div>
<div class="table-responsive">
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<thead>
<tr>
<th class="colorB fw-bold">Encargo</th>
<th class="colorB fw-bold">Precio</th>
</tr>
</thead>
<tbody>
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th>Encargo</th>
<th >Precio</th>
</tr>
</thead>
<tbody>
@foreach (var otroTrabajo in objetoCASA.CostesProduccion.OtrosTrabajos)
{
<tr>
{
<tr>
<td>@otroTrabajo.Denominacion</td>
<td class="text-end">@otroTrabajo.Coste.MilesYDecimales() €</td>
</tr>
}
</tbody>
<tfoot>
</tr>
}
</tbody>
<tfoot style=" border-top: 1px solid black;">
<tr>
<td colspan="2" class="text-end fw-bold colorC TotalesTabla">
<div class="d-flex justify-content-end">
<div style="align-self: center;">
Total Otros trabajos:
<span> @objetoCASA.CostesProduccion.TotalOtrosTrabajos.MilesYDecimales() €</span>
<span> @objetoCASA.CostesProduccion.TotalOtrosTrabajos.MilesYDecimales() €</span>
</div>
</div>
</td>
</tr>
<tr>
<td colspan="2" class="text-end fw-bold TotalesTabla">
<tr style=" border-bottom: 1px solid black;">
<td colspan="2" style="font-size:10pt;" class="text-end fw-bold TotalesTabla">
Precio del encargo: <span>@objetoCASA.CostesProduccion.PrecioDelEncargo.MilesYDecimales() € </span>
</td>
</tr>
</tfoot>
</table>
</div>
</table>
</div>
</div>
}
</div>
<div class="FooterImprimir">
<p>
Los resultados de esta simulación son una mera estimación del tiempo necesario en la realización del trabajo
profesional, que siempre estará supeditado a su determinación concreta por parte del autor de este estudio económico,
teniendo presente factores propios de eficiencia como la estandarización de procesos, eficiencia en el trabajo,
aprovechamiento de estudios y trabajos anteriores y mejoras en la productividad de su propio despacho profesional.
</p>
<p>
El presente documento no tiene validez contractual. Los datos obtenidos son meramente estimativos y generados por la
aplicación en función de los datos que posee y que el usuario ha introducido. En nigún caso tiene por qué corresponder
con la realidad ni el CACOA garantiza la veracidad de los mismos, pro lo que no es responsable de su veracidad en sí ni
sobre terceros.
</p>
</div>
</div>

View File

@@ -3,22 +3,32 @@
<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>
@* ENCABEZADO DE LA PAGINA *@
<div class="EncabezadoImprimir">
<p>
Documento impreso del módulo de Servicios de Arquitectura Edificación con los datos y
estimación de Costes de Producción resultado de la simulación.
</p>
<div class="d-flex flex-column mt-3">
<label>Simulación: <span class="NombreSimulacionImprimir">@objetoURBAN.NombreSimulacion</span></label>
<label>Fecha de creación: <span class="NombreSimulacionImprimir">poner aqui la fecha de creacion</span></label>
</div>
</div>
<div class="col-8 mx-auto" style="align-items: flex-end;">
<div style="height: 49px;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Coste hora Despacho Profesional</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Tipo de costes</th>
<th class="colorB fw-bold">Coste/hora</th>
<th>Tipo de costes</th>
<th>Coste/hora</th>
</tr>
</thead>
<tbody>
@@ -49,13 +59,13 @@
</div>
</div>
<div class="col-8 mx-auto">
<div class="col-8 mx-auto" style="margin-top:50px;">
<div style="height: 49px;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Coste hora Externalización</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Externalización</th>
@@ -87,11 +97,8 @@
@* 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">
<div class="formatoCampos pt-2" style="font-size:9pt;">
<label class="tituloLbl">Tipo de Documento:</label>
@if (objetoURBAN.TrabajoProfesional.idTipoDocumentacion != 0)
{
@@ -102,7 +109,7 @@
<label>No Seleccionado</label>
}
</div>
<div class="formatoCampos pt-2">
<div class="formatoCampos pt-2" style="font-size:9pt;">
<label class="tituloLbl">Documento:</label>
@if (objetoURBAN.TrabajoProfesional.idTipoDocumentacion != 0)
{
@@ -118,11 +125,11 @@
<div class="col-11 mx-auto">
@* TABLA DE DATOS MINIMOS *@
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Documentación Mínima:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Descripción</th>
@@ -151,11 +158,11 @@
@* TABLA DE DATOS OPCIONALES *@
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Documentación Opcional:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Descripción</th>
@@ -202,11 +209,11 @@
</div>
@* TABLA DE DATOS NECESARIOS *@
<div class="col-11 mx-auto">
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Datos Necesarios:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Descripción</th>
@@ -235,12 +242,14 @@
</table>
</div>
</div>
@* TABLA FASES *@
<div class="col-11 mx-auto">
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Fases:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Descripción</th>
@@ -290,14 +299,14 @@
@* 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">
<div class="mt-3 mb-3 TituloTablaImprimir"><b>Innovacion de los instrumentos</b></div>
<p style="font-size:9pt;" class="col-6">
<label>@objetoURBAN.TrabajoProfesional.valorInstrumentos %</label>
</p>
@foreach (var enu in objetoURBAN.Enumerados.ListaInstrumentos)
{
<div class="form-check" style="gap:10px;">
<div class="form-check" style="gap:10px; font-size:9pt;">
@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">
@@ -314,39 +323,34 @@
<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 style="font-size:9pt;" class="fw-bold">
<label>HORAS TRABAJO PROFESIONAL URBANISMO: <span>@objetoURBAN.TrabajoProfesional.horasTrabProfesional.MilesYDecimales() h</span></label>
</div>
</div>
</div>
@* PLAZOS Y HORAS *@
<div class="col-11 mx-auto mb-5">
<div class="col-11 mx-auto mb-5" style="margin-top:250px;">
<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;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Trabajo profesional</b>
</div>
<table class="table tablaCACOA tablaCACOA2 mb-0">
<div class="col-9 mb-5 align-items-center">
@* PLAZO DE PRESENTACION *@
<div style="font-size:9pt;" class="fw-bold">
<label>Plazo de presentación de la documentación: <span>@objetoURBAN.CostesProduccion.PlazoPresentacionDocumentos meses</span></label>
</div>
</div>
@* HORAS TRABAJO *@
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Trabajos</th>
@@ -379,14 +383,11 @@
@* 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;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Costes Asociados a los Servicios de Arquitectura</b>
</div>
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
@@ -396,12 +397,12 @@
</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>
<td class=" TotalesTabla ">COSTES DE PRODUCCIÓN DEL TRABAJO PROFESIONAL</td>
<td class=" 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 colorFilasIntro ">Beneficio <span style="font-size:7pt;" > (antes de impuestos) </span> </td>
<td class="TotalesTabla text-end">
<div class="text-end align-items-end" style="gap:3px;">
<label>@objetoURBAN.CostesProduccion.Beneficio</label> %
@@ -420,6 +421,23 @@
</div>
</div>
<div class="FooterImprimir">
<p>
Los resultados de esta simulación son una mera estimación del tiempo necesario en la realización del trabajo
profesional, que siempre estará supeditado a su determinación concreta por parte del autor de este estudio económico,
teniendo presente factores propios de eficiencia como la estandarización de procesos, eficiencia en el trabajo,
aprovechamiento de estudios y trabajos anteriores y mejoras en la productividad de su propio despacho profesional.
</p>
<p>
El presente documento no tiene validez contractual. Los datos obtenidos son meramente estimativos y generados por la
aplicación en función de los datos que posee y que el usuario ha introducido. En nigún caso tiene por qué corresponder
con la realidad ni el CACOA garantiza la veracidad de los mismos, pro lo que no es responsable de su veracidad en sí ni
sobre terceros.
</p>
</div>
</div>

View File

@@ -1,23 +1,34 @@

<div id="LicitacionesCASAImprimir" class="d-flex flex-column align-items-center">
<div class="col-12 mx-auto mb-5">
<div class="mt-4 mb-4 col-11 mx-auto justify-content-center d-flex">
<label style="color: #078b98 !important"><b>Licitaciones Edificación</b></label>
@* ENCABEZADO DE LA PAGINA *@
<div class="EncabezadoImprimir">
<p>
Documento impreso del módulo de Servicios de Arquitectura Edificación con los datos y
estimación de Costes de Producción resultado de la simulación.
</p>
<div class="d-flex flex-column mt-3">
<label>Simulación: <span class="NombreSimulacionImprimir">@objetoLicitaciones.Descripcion</span></label>
<label>Fecha de creación: <span class="NombreSimulacionImprimir">poner aqui la fecha de creacion</span></label>
</div>
</div>
<div class="col-11 mx-auto" style="align-items: flex-end;">
<div style="height: 49px;">
@* TABLA USOS TIPOLOGIAS *@
<div class="col-11 mx-auto mb-5" style="align-items: flex-end;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Usos/Tipologías</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Superficie</th>
<th class="colorB fw-bold">Usos</th>
<th class="colorB fw-bold">Tipología</th>
<th class="colorB fw-bold">Intervención</th>
<th width="15%">Superficie (m²)</th>
<th width="20%">Usos</th>
<th width="35%">Tipología</th>
<th width="30%">Intervención</th>
</tr>
</thead>
<tbody>
@@ -42,9 +53,9 @@
</tbody>
<tfoot>
<tr>
<td colspan="4" class="text-end fw-bold colorC TotalesTabla">
<td colspan="4" class="text-start fw-bold colorC TotalesTabla">
<div style="height:28px; align-content:center;">
Total superficie: <span> @objetoLicitaciones.Usos.Sum(x => x.superficie).MilesYDecimales()</span>
Total superficie: <span> @objetoLicitaciones.Usos.Sum(x => x.superficie).MilesYDecimales()</span>
</div>
</td>
</tr>
@@ -53,18 +64,19 @@
</div>
</div>
<div class="col-11 mx-auto" style="align-items: flex-end;">
<div style="height: 49px;">
@* TABLA FASES *@
<div class="col-8 mx-auto" style="align-items: flex-end;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Fases</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Fases</th>
<th class="colorB fw-bold"></th>
<th class="text-start" >Fases</th>
<th ></th>
</tr>
</thead>
<tbody>
@@ -126,14 +138,14 @@
</div>
</div>
<div class="col-11 mx-auto" style="align-items: flex-end;">
<div style="height: 49px;">
@* TABLA COSTES DE PRODUCCION *@
<div class="col-8 mx-auto" style="align-items: flex-end; margin-top:200px;">
<div class="TituloTablaImprimir" style="height: 49px;">
<b>Costes de producción</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0">
<thead>
<tr>
<th class="colorB fw-bold" style="width:60%">Concepto</th>
@@ -157,14 +169,14 @@
</tr>
<tr>
<td class="tdAlter fw-bold w4">COSTE DE PRODUCCIÓN DEL TRABAJO PROFESIONAL</td>
<td>COSTE DE PRODUCCIÓN DEL TRABAJO PROFESIONAL</td>
<td class="text-end"><span> @objetoLicitaciones.CostesProduccionTrabProf.MilesYDecimales() €</span></td>
</tr>
<tr>
<td class="TotalesTabla colorB w4">
G.G. + B.I.
<span class="fw-normal" style="font-size:10px;">(40/19 Junta Consultiva de Contratación Pública del Estado)</span>
<span class="fw-normal" style="font-size:7pt;">(40/19 Junta Consultiva de Contratación Pública del Estado)</span>
</td>
<td class="TotalesTabla text-end" style="align-content:center;">
<div class="d-flex" style="justify-content: end; gap:3px;">
@@ -184,6 +196,21 @@
</div>
</div>
<div class="FooterImprimir">
<p>
Los resultados de esta simulación son una mera estimación del tiempo necesario en la realización del trabajo
profesional, que siempre estará supeditado a su determinación concreta por parte del autor de este estudio económico,
teniendo presente factores propios de eficiencia como la estandarización de procesos, eficiencia en el trabajo,
aprovechamiento de estudios y trabajos anteriores y mejoras en la productividad de su propio despacho profesional.
</p>
<p>
El presente documento no tiene validez contractual. Los datos obtenidos son meramente estimativos y generados por la
aplicación en función de los datos que posee y que el usuario ha introducido. En nigún caso tiene por qué corresponder
con la realidad ni el CACOA garantiza la veracidad de los mismos, pro lo que no es responsable de su veracidad en sí ni
sobre terceros.
</p>
</div>
</div>
</div>

View File

@@ -2,11 +2,23 @@
<div id="LiciURBANImprimir" class="d-flex flex-column align-items-center">
@* 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>
@* ENCABEZADO DE LA PAGINA *@
<div class="EncabezadoImprimir">
<p>
Documento impreso del módulo de Servicios de Arquitectura Edificación con los datos y
estimación de Costes de Producción resultado de la simulación.
</p>
<div class="d-flex flex-column mt-3">
<label>Simulación: <span class="NombreSimulacionImprimir">@objetoLicitacionUrban.NombreSimulacion</span></label>
<label>Fecha de creación: <span class="NombreSimulacionImprimir">poner aqui la fecha de creacion</span></label>
</div>
</div>
<div class="col-12 d-flex justify-content-center" style="gap:20px;">
<div class="formatoCampos pt-2">
<div class="formatoCampos pt-2" style="font-size:9pt;">
<label class="tituloLbl">Tipo de Documento:</label>
@if (objetoLicitacionUrban.TrabajoProfesional.idTipoDocumentacion != 0)
{
@@ -17,7 +29,7 @@
<label>No Seleccionado</label>
}
</div>
<div class="formatoCampos pt-2">
<div class="formatoCampos pt-2" style="font-size:9pt;">
<label class="tituloLbl">Documento:</label>
@if (objetoLicitacionUrban.TrabajoProfesional.idTipoDocumentacion != 0)
{
@@ -33,11 +45,11 @@
<div class="col-11 mx-auto">
@* TABLA DE DATOS MINIMOS *@
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Documentación Mínima:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Descripción</th>
@@ -64,11 +76,11 @@
@* TABLA DE DATOS OPCIONALES *@
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Documentación Opcional:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Descripción</th>
@@ -109,16 +121,15 @@
</table>
</div>
</div>
@* TABLA DE DATOS NECESARIOS Y FASES *@
<div class="col-12 d-flex justify-content-center" >
@* DATOS NECESARIOS *@
<div class="col-6" style="padding-left:20px;">
<div class="col-8 mx-auto" >
<div class="col-11 mx-auto">
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Datos Necesarios:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th style="width:70%;" class="colorB fw-bold">Descripción</th>
@@ -146,13 +157,12 @@
</div>
</div>
@* FASES *@
<div class="col-6" style="padding-right:20px;">
<div class="col-11 mx-auto">
<div class="col-8 mx-auto" style="margin-top:250px;" >
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Fases:</b>
</div>
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th style="width:70%;" class="colorB fw-bold">Fases</th>
@@ -193,21 +203,20 @@
</tr>
</tfoot>
</table>
</div>
</div>
</div>
@* INNOVACION INSTRUMENTOS *@
@* 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">
<div class="mt-3 mb-3 TituloTablaImprimir"><b>Innovacion de los instrumentos</b></div>
<p style="font-size:9pt;" class="col-6">
<label>@objetoLicitacionUrban.TrabajoProfesional.valorInstrumentos %</label>
</p>
@foreach (var enu in objetoLicitacionUrban.Enumerados.ListaInstrumentos)
{
<div class="form-check" style="gap:10px;">
<div class="form-check" style="gap:10px; font-size:9pt;">
@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">
@@ -219,31 +228,30 @@
<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>
}
<div style="font-size:9pt;" class="fw-bold">
<label>HORAS TRABAJO PROFESIONAL URBANISMO: <span>@objetoLicitacionUrban.TrabajoProfesional.horasTrabProfesional.MilesYDecimales() h</span></label>
</div>
</div>
</div>
</div>
@* Costes 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>Costes de producción</b></label>
</div>
<div class="col-8 mx-auto mb-5">
@* Solvencia tecnica *@
<div class="col-11 mx-auto">
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Solvencia técnica:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Trabajadores</th>
@@ -279,17 +287,15 @@
</tr>
</tfoot>
</table>
</div>
</div>
@* costes asociados *@
<div class="col-11 mx-auto">
<div style="height: 49px; margin-top:50px;">
<div class="TituloTablaImprimir" style="height: 49px; margin-top:50px;">
<b>Costes Asociados a los Servicios de Arquitectura:</b>
</div>
<div class="table-responsive">
<table class="table tablaCACOA tablaCACOA2 mb-0">
<table class="TablaImprimir mb-0" style="width:100%;">
<thead>
<tr>
<th class="colorB fw-bold">Concepto</th>
@@ -325,7 +331,7 @@
<tr>
<td class="colorB fw-bold w4">
G.G. + B.I. <br />
<span class="fw-normal" style="font-size:10px;">(40/19 Junta Consultiva de Contratación Pública del Estado)</span>
<span class="fw-normal" style="font-size:7pt;">(40/19 Junta Consultiva de Contratación Pública del Estado)</span>
</td>
<td class="text-end columna40Ancho" style="align-content:center;">
<div class="d-flex" style="justify-content: end; gap:3px;">
@@ -342,11 +348,28 @@
</tr>
</tfoot>
</table>
</div>
</div>
</div>
<div class="FooterImprimir">
<p>
Los resultados de esta simulación son una mera estimación del tiempo necesario en la realización del trabajo
profesional, que siempre estará supeditado a su determinación concreta por parte del autor de este estudio económico,
teniendo presente factores propios de eficiencia como la estandarización de procesos, eficiencia en el trabajo,
aprovechamiento de estudios y trabajos anteriores y mejoras en la productividad de su propio despacho profesional.
</p>
<p>
El presente documento no tiene validez contractual. Los datos obtenidos son meramente estimativos y generados por la
aplicación en función de los datos que posee y que el usuario ha introducido. En nigún caso tiene por qué corresponder
con la realidad ni el CACOA garantiza la veracidad de los mismos, pro lo que no es responsable de su veracidad en sí ni
sobre terceros.
</p>
</div>
</div>
@code {

View File

@@ -435,8 +435,8 @@
Format = PuppeteerSharp.Media.PaperFormat.A4,
MarginOptions = new PuppeteerSharp.Media.MarginOptions
{
Top = "0mm",
Bottom = "0mm"
Top = "17mm",
Bottom = "9mm",
},
DisplayHeaderFooter = true,
HeaderTemplate = @"
@@ -446,7 +446,7 @@
}
#header, #footer { padding: 0 !important; }
</style>
<div style='width:100%; font-size:12px; color:#078b98; font-weight:bold; padding:5px 10px;background-color: #D7ECEF;'>
<div style='height:55px; width:100%; font-size:12px; color:#078b98; font-weight:bold; padding:5px 10px;background-color: #D7ECEF;'>
<table style='width:100%; border:0; border-collapse:collapse;'>
<tr>
<td style='text-align:left; width:50%;'>

View File

@@ -793,4 +793,59 @@ div.content {
.TotalesTabla{
border:0px !important;
}
.TablaImprimir table {
border-collapse: collapse;
width: 100%;
font-size: 9pt;
}
.TablaImprimir thead tr th {
text-align: center;
font-style: normal;
font-size: 9pt;
}
.TablaImprimir tbody {
border-top: 1px solid black;
border-bottom: 1px solid black;
font-size: 9pt;
}
.TablaImprimir tbody tr {
border: none;
}
.TablaImprimir td, th {
padding: 8px;
text-align: left;
}
.TablaImprimir tfoot {
font-size: 9pt;
}
.TituloTablaImprimir {
color: #078b98 !important;
font-size: 11pt;
}
.NombreSimulacionImprimir{
font-style:italic;
}
.EncabezadoImprimir{
padding-left:20px;
padding-right:20px;
margin-bottom:100px;
font-size:11pt;
}
.FooterImprimir {
padding-left: 20px;
padding-right: 20px;
margin-top: 100px;
font-size: 9pt;
}