feat: ajustar estilos en las plantillas de constancia, formulario y verificación

This commit is contained in:
Juan Felipe Zapata Moreno 2025-12-10 21:52:50 -06:00
parent 685ad3d3a8
commit c4643c60d4
4 changed files with 279 additions and 256 deletions

View File

@ -12,7 +12,7 @@
body { body {
font-family: Arial, Helvetica, sans-serif; font-family: Arial, Helvetica, sans-serif;
font-size: 11pt; font-size: 10.5pt;
margin: 0; margin: 0;
padding: 0; padding: 0;
} }

View File

@ -23,56 +23,46 @@
margin: 0 auto; margin: 0 auto;
} }
.header { /* NUEVO ENCABEZADO TIPO TABLA */
width: 100%;
border-bottom: 1px solid #000;
padding-bottom: 10px;
margin-bottom: 15px;
}
.header-table { .header-table {
width: 100%; width: 100%;
border-collapse: collapse; border-collapse: collapse;
margin-bottom: 40px;
} }
.header-left { /* Columna Izquierda: Logo y Texto */
width: 40%; .col-left {
width: 45%;
vertical-align: middle; vertical-align: middle;
border-right: 1px solid #666;
/* LÍNEA VERTICAL SEPARADORA */
padding-right: 15px;
} }
.header-center { /* Columna Derecha: Fecha */
width: 20%; .col-right {
vertical-align: middle; width: 55%;
} vertical-align: bottom;
.header-right {
width: 40%;
text-align: right; text-align: right;
vertical-align: middle; padding-left: 15px;
font-size: 9pt; padding-bottom: 30px;
} }
.header-right strong { /* Estructura interna del Logo */
font-size: 11pt; .logo-wrapper {
display: block; width: 100%;
} }
.logo { .logo-img {
max-height: 50px; height: 80px;
width: auto; width: auto;
vertical-align: middle;
margin-right: 10px;
} }
.date-line { .date-text {
text-align: right; font-size: 11pt;
font-size: 10pt; color: #000;
margin-bottom: 15px;
}
.date-blank {
display: inline-block;
border-bottom: 1px solid #000;
min-width: 50px;
text-align: center;
} }
.title { .title {
@ -159,36 +149,29 @@
<body> <body>
<div class="container"> <div class="container">
<!-- Header --> <!-- Header Reemplazado -->
<div class="header"> <table class="header-table">
<table class="header-table"> <tr>
<tr> <td class="col-left">
<td class="header-left"> <div class="logo-wrapper">
<?php <?php
$imagePath = resource_path('images/logo-seguridad.png'); $imagePath = resource_path('images/logo-seguridad.png');
$imageData = base64_encode(file_get_contents($imagePath)); $imageData = base64_encode(file_get_contents($imagePath));
$imageSrc = 'data:image/png;base64,' . $imageData; $imageSrc = 'data:image/png;base64,' . $imageData;
?> ?>
<img src="{{ $imageSrc }}" alt="Logo" class="logo"> <img src="{{ $imageSrc }}" alt="Logo" class="logo-img">
</td> </div>
<td class="header-center"></td> </td>
<td class="header-right"> <td class="col-right">
<strong>SEGURIDAD</strong> <div class="date-text">
SECRETARÍA DE SEGURIDAD<br>Y PROTECCIÓN CIUDADANA Villahermosa, Tabasco {{ \Carbon\Carbon::now()->locale('es')->isoFormat('D [de] MMMM [del] YYYY') }}
</td> </div>
</tr> </td>
</table> </tr>
</div> </table>
<!-- Fecha -->
<div class="date-line">
{{ $fecha }} de {{ $mes }} del {{ $anio }}
</div>
<!-- Título --> <!-- Título -->
<div class="title"> <div class="title">Solicitud de Sustitución de Constancia de Inscripción</div>
Solicitud de Sustitución de Constancia de Inscripción
</div>
<!-- Destinatario --> <!-- Destinatario -->
<div class="department"> <div class="department">
@ -206,19 +189,19 @@
<!-- Datos del vehículo --> <!-- Datos del vehículo -->
<div class="data-row"> <div class="data-row">
<span class="data-label">Marca: </span><span >{{ strtoupper($marca ?? '') }}</span> <span class="data-label">Marca: </span><span>{{ strtoupper($marca ?? '') }}</span>
</div> </div>
<div class="data-row"> <div class="data-row">
<span class="data-label">Modelo: </span><span >{{ strtoupper($linea ?? '') }}</span> <span class="data-label">Modelo: </span><span>{{ strtoupper($linea ?? '') }}</span>
</div> </div>
<div class="data-row"> <div class="data-row">
<span class="data-label">Año Modelo: </span><span >{{ $modelo ?? '' }}</span> <span class="data-label">Año Modelo: </span><span>{{ $modelo ?? '' }}</span>
</div> </div>
<div class="data-row"> <div class="data-row">
<span class="data-label">Número de Identificación (NIV): </span><span>{{ strtoupper($niv ?? '') }}</span> <span class="data-label">Número de Identificación (VIN): </span><span>{{ strtoupper($niv ?? '') }}</span>
</div> </div>
<div class="data-row"> <div class="data-row">
@ -226,11 +209,11 @@
</div> </div>
<div class="data-row"> <div class="data-row">
<span class="data-label">Placas: </span><span >{{ strtoupper($placa ?? '') }}</span> <span class="data-label">Placas: </span><span>{{ strtoupper($placa ?? '') }}</span>
</div> </div>
<div class="data-row"> <div class="data-row">
<span class="data-label">Folio de Constancia de Inscripción: </span><span >{{ strtoupper($folio ?? '') }}</span> <span class="data-label">Folio de Constancia de Inscripción: </span><span>{{ strtoupper($folio ?? '') }}</span>
</div> </div>
<!-- Sección MOTIVO --> <!-- Sección MOTIVO -->
@ -260,7 +243,7 @@
<!-- Teléfono --> <!-- Teléfono -->
<div class="telefono-row"> <div class="telefono-row">
<span class="telefono-label">Teléfono:</span><span>{{ $telefono ?? '' }}</span> <span class="telefono-label">Teléfono: </span><span>{{ $telefono ?? '' }}</span>
</div> </div>
</div> </div>
</body> </body>

View File

@ -145,7 +145,7 @@
.footer-registro { .footer-registro {
text-align: center; text-align: center;
margin-top: 120px; margin-top: 90px;
color: red; color: red;
font-weight: bold; font-weight: bold;
font-size: 9pt; font-size: 9pt;
@ -287,10 +287,12 @@
<tr> <tr>
<td class="signature-cell"> <td class="signature-cell">
<div class="signature-line"></div> <div class="signature-line"></div>
<p class="signature-role">{{ $record->vehicle->owner->full_name ?? '' }}</p>
<p class="signature-role">PROPIETARIO</p> <p class="signature-role">PROPIETARIO</p>
</td> </td>
<td class="signature-cell"> <td class="signature-cell">
<div class="signature-line"></div> <div class="signature-line"></div>
<p class="signature-role">{{ $record->user->full_name ?? '' }}</p>
<p class="signature-role">OPERADOR</p> <p class="signature-role">OPERADOR</p>
</td> </td>
</tr> </tr>

View File

@ -1,310 +1,348 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="es"> <html lang="es">
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>Hoja de Verificación Vehicular</title> <title>Hoja de Verificación Vehicular</title>
<style> <style>
@page { @page {
margin: 0.8cm; margin: 0.5cm;
size: landscape; size: landscape;
} }
body { body {
font-family: Arial, Helvetica, sans-serif; font-family: Arial, Helvetica, sans-serif;
font-size: 8pt; font-size: 8pt;
line-height: 1.0; line-height: 1.1;
color: #000; color: #000;
margin: 0;
padding: 0;
} }
.container { .container {
width: 100%; width: 100%;
margin: 0 auto; position: relative;
} }
/* Encabezado */
.header { .header {
text-align: center; text-align: center;
margin-bottom: 6px; margin-bottom: 110px;
position: relative;
height: 50px;
} }
.header h1 { .header h1 {
font-size: 20pt; font-size: 18pt;
font-weight: bold; font-weight: bold;
margin: 0; margin: 0;
padding: 2px 0; padding-top: 5px;
text-transform: uppercase;
} }
/* Texto en esquina superior derecha */
.signature-section { .operator-box {
position: absolute; position: absolute;
right: 0; right: 10px;
top: 0; top: 100px;
width: 180px; width: 220px;
text-align: center; text-align: center;
padding: 1px;
margin-bottom: 50px;
} }
.signature-line { .operator-line {
border-top: 1px solid #000; border-top: 2px solid #000;
margin: 60px 10px 5px 10px; margin: 0 auto 5px auto;
width: 180px;
} }
.signature-text { .operator-name {
margin: 5px 0; margin: 0 0 2px 0;
font-weight: bold; font-weight: bold;
font-size: 9pt; font-size: 9pt;
} }
table { .operator-label {
width: 100%; margin: 0;
border-collapse: collapse; padding-top: 3px;
margin-top: 150px;
}
table th {
background-color: #c00040;
color: white;
font-weight: bold; font-weight: bold;
padding: 4.5px 5px;
text-align: center;
border: 1px solid #000;
}
table td {
background-color: #f5deb3;
padding: 4px 5px;
border: 1px solid #000;
font-size: 8pt; font-size: 8pt;
} }
table td.white-bg { /* Tablas */
background-color: #ffffff; table {
width: 100%;
border-collapse: collapse;
margin-bottom: 0;
table-layout: fixed;
margin-top: 0; /* Sin margen superior extra */
} }
table td.gray-bg { table.second-table {
background-color: #e0e0e0; margin-top: 0;
} }
.section-original td:nth-child(1), table th {
.section-original td:nth-child(2) { background-color: #98283e;
background-color: #f5deb3; color: white;
} font-weight: bold;
padding: 2px 3px;
.id-column {
width: 30px;
text-align: center; text-align: center;
border: 1px solid #fff;
font-size: 8pt;
height: 10px;
}
table td {
padding: 2px 5px;
border: 1px solid #666;
vertical-align: middle;
font-size: 7pt;
height: 16px;
}
/* Estilos de Celdas */
.bg-label {
background-color: #e6d6ad;
font-weight: bold; font-weight: bold;
} }
.desc-column { .bg-value {
width: 250px; background-color: #f7ebd9;
} }
.obs-column { .bg-white {
min-width: 150px; background-color: #ffffff;
} }
.correct-column{ .bg-gray {
width: 120px; background-color: #d9d9d9;
}
/* Anchos de columnas - Primera tabla */
.col-label {
width: 12%;
}
.col-value {
width: 38%;
}
.col-correct {
width: 20%;
}
.col-new {
width: 30%;
}
/* Anchos de columnas - Segunda tabla */
.col-id {
width: 4%;
text-align: center;
}
.col-desc {
width: 28%;
}
.col-obs {
width: 32%;
} }
</style> </style>
</head> </head>
<body> <body>
<div class="container"> <div class="container">
<!-- Header -->
<div class="header"> <div class="header">
<h1>HOJA DE VERIFICACIÓN </h1> <h1>HOJA DE VERIFICACIÓN</h1>
</div>
<!-- Firma del operador -->
<div class="signature-section">
<div class="signature-line"></div>
<p class="signature-text">{{ $record->user->full_name }}</p>
<p class="signature-text">OPERADOR</p>
</div> </div>
<!-- Tabla de verificación --> <div class="operator-box">
<div class="operator-line"></div>
<div class="operator-name">{{ $record->user->full_name ?? '' }}</div>
<div class="operator-label">OPERADOR</div>
</div>
<!-- Primera tabla: Datos del vehículo -->
<table> <table>
<thead> <thead>
<tr> <tr>
<th colspan="2">ORIGINAL</th> <th colspan="2" class="col-label col-value">ORIGINAL</th>
<th class="correct-column">CORRECTO</th> <th class="col-correct">CORRECTO</th>
<th>NUEVO</th> <th class="col-new">NUEVO</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr class="section-original"> <tr>
<td class="id-column">COLOR</td> <td class="bg-label col-label">COLOR</td>
<td>{{ strtoupper($record->vehicle->color) }}</td> <td class="bg-value col-value">{{ isset($record->vehicle->color) ? strtoupper($record->vehicle->color) : '' }}</td>
<td class="white-bg"></td> <td class="bg-label col-correct"></td>
<td class="gray-bg"></td> <td class="bg-gray col-new"></td>
</tr> </tr>
<tr class="section-original"> <tr>
<td class="id-column">PLACA</td> <td class="bg-label col-label">PLACA</td>
<td>{{ $record->vehicle->placa }}</td> <td class="bg-value col-value">{{ $record->vehicle->placa ?? '' }}</td>
<td class="white-bg"></td> <td class="bg-label col-correct"></td>
<td class="gray-bg"></td> <td class="bg-gray col-new"></td>
</tr> </tr>
<tr class="section-original"> <tr>
<td class="id-column">VIN</td> <td class="bg-label col-label">VIN</td>
<td>{{ $record->vehicle->niv }}</td> <td class="bg-value col-value">{{ $record->vehicle->niv ?? '' }}</td>
<td class="white-bg"></td> <td class="bg-label col-correct"></td>
<td class="gray-bg"></td> <td class="bg-gray col-new"></td>
</tr> </tr>
<tr class="section-original"> <tr>
<td class="id-column">MARCA</td> <td class="bg-label col-label">MARCA</td>
<td>{{ strtoupper($record->vehicle->marca) }}</td> <td class="bg-value col-value">{{ isset($record->vehicle->marca) ? strtoupper($record->vehicle->marca) : '' }}</td>
<td class="white-bg"></td> <td class="bg-label col-correct"></td>
<td class="gray-bg"></td> <td class="bg-gray col-new"></td>
</tr> </tr>
<tr class="section-original"> <tr>
<td class="id-column">SUBMARCA</td> <td class="bg-label col-label">SUBMARCA</td>
<td>{{ strtoupper($record->vehicle->linea) }}</td> <td class="bg-value col-value">{{ isset($record->vehicle->linea) ? strtoupper($record->vehicle->linea) : '' }}</td>
<td class="white-bg"></td> <td class="bg-label col-correct"></td>
<td class="gray-bg"></td> <td class="bg-gray col-new"></td>
</tr> </tr>
<tr class="section-original"> <tr>
<td class="id-column">MODELO</td> <td class="bg-label col-label">MODELO</td>
<td>{{ $record->vehicle->modelo }}</td> <td class="bg-value col-value">{{ $record->vehicle->modelo ?? '' }}</td>
<td class="white-bg"></td> <td class="bg-label col-correct"></td>
<td class="gray-bg"></td> <td class="bg-gray col-new"></td>
</tr> </tr>
<tr class="section-original"> <tr>
<td class="id-column">TIPO</td> <td class="bg-label col-label">TIPO</td>
<td>{{ strtoupper($record->vehicle->tipo_veh) }}</td> <td class="bg-value col-value">{{ isset($record->vehicle->tipo_veh) ? strtoupper($record->vehicle->tipo_veh) : '' }}</td>
<td class="white-bg"></td> <td class="bg-label col-correct"></td>
<td class="gray-bg"></td> <td class="bg-gray col-new"></td>
</tr> </tr>
<tr class="section-original"> <tr>
<td class="id-column">MOTOR</td> <td class="bg-label col-label">MOTOR</td>
<td>{{ $record->vehicle->numero_motor ?? 'S/N' }}</td> <td class="bg-value col-value">{{ $record->vehicle->numero_motor ?? 'S/N' }}</td>
<td class="white-bg"></td> <td class="bg-label col-correct"></td>
<td class="gray-bg"></td> <td class="bg-gray col-new"></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<!-- Tabla de verificación de partes --> <!-- Segunda tabla: Puntos de verificación -->
<table style="margin-top: 15px;"> <table class="second-table">
<thead> <thead>
<tr> <tr>
<th class="id-column">ID</th> <th class="col-id">ID</th>
<th class="desc-column">DESCRIPCIÓN</th> <th class="col-desc">DESCRIPCIÓN</th>
<th class="id-column">ID</th> <th class="col-id">ID</th>
<th class="desc-column">DESCRIPCIÓN</th> <th class="col-desc">DESCRIPCIÓN</th>
<th class="obs-column">OBSERVACIONES</th> <th class="col-obs">OBSERVACIONES</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td class="id-column">1</td> <td class="col-id bg-label">1</td>
<td>PLACA VIN TABLERO IZQ</td> <td class="bg-label col-desc">PLACA VIN TABLERO IZQ</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">2</td> <td class="col-id bg-label">2</td>
<td>PARED DE FUEGO</td> <td class="bg-label col-desc">PARED DE FUEGO</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">3</td> <td class="col-id bg-label">3</td>
<td>BASE DE AMORTIGUADOR DERECHO</td> <td class="bg-label col-desc">BASE DE AMORTIGUADOR DERECHO</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">4</td> <td class="col-id bg-label">4</td>
<td>PISO ABAJO DEL ASIENTO DEL COPILOTO</td> <td class="bg-label col-desc">PISO ABAJO DEL ASIENTO COPILOTO</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">5</td> <td class="col-id bg-label">5</td>
<td>PISO DE CAJUELA</td> <td class="bg-label col-desc">PISO DE CAJUELA</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">6</td> <td class="col-id bg-label">6</td>
<td>ESTRIBO</td> <td class="bg-label col-desc">ESTRIBO</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">7</td> <td class="col-id bg-label">7</td>
<td>CHASIS DERECHO</td> <td class="bg-label col-desc">CHASIS DERECHO</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">8</td> <td class="col-id bg-label">8</td>
<td>CHASIS IZQUIERDO</td> <td class="bg-label col-desc">CHASIS IZQUIERDO</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">9</td> <td class="col-id bg-label">9</td>
<td>BAZTIDOR IZQUIERDO</td> <td class="bg-label col-desc">BASTIDOR IZQUIERDO</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">10</td> <td class="col-id bg-label">10</td>
<td>BAZTIDOR DERECHO</td> <td class="bg-label col-desc">BASTIDOR DERECHO</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">11</td> <td class="col-id bg-label">11</td>
<td>MARCO RADIADOR</td> <td class="bg-label col-desc">MARCO RADIADOR</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">12</td> <td class="col-id bg-label">12</td>
<td>PISO CARROCERIA</td> <td class="bg-label col-desc">PISO CARROCERÍA</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">13</td> <td class="col-id bg-label">13</td>
<td>TABLERO DE PARTE MEDIA</td> <td class="bg-label col-desc">TABLERO DE PARTE MEDIA</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">14</td> <td class="col-id bg-label">14</td>
<td>MOTOR</td> <td class="bg-label col-desc">MOTOR</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
<tr> <tr>
<td class="id-column">15</td> <td class="col-id bg-label">15</td>
<td>TRANSMISION</td> <td class="bg-label col-desc">TRANSMISIÓN</td>
<td class="id-column white-bg"></td> <td class="col-id bg-gray"></td>
<td class="white-bg"></td> <td class="bg-gray col-desc"></td>
<td class="white-bg"></td> <td class="bg-gray col-obs"></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
</div> </div>
</body> </body>
</html> </html>