File: /var/www/gestor-horarios.bradford/app/views/reportes/report_pdf_view.php
<!doctype html>
<html lang="es">
<head>
<!-- Etiquetas <meta> obligatorias para Bootstrap -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Enlazando el CSS de Bootstrap -->
<link rel="stylesheet" href="<?= ASSETS ?>/css/bootstrap.min.css">
<title><?= APP_NAME ?> <?= isset($title) ? ' - ' . $title : '' ?></title>
</head>
<body style="width: 95%;">
<div class="header pb-6">
<div class="container-fluid">
<div class="header-body">
<br>
</div>
</div>
</div>
<style>
.page-break {
page-break-after: always;
}
</style>
<!-- Page content -->
<div class="container-fluid bg-white" style="margin-top: -20px; background: #fff">
<div class="row" style="padding: 20px;">
<div class="col-11">
<!-- Card header -->
<div class="col-12">
<div class="row">
<div class="col-md-4 text-left">
<?php /* TODO: descargar imagen y guardarla en local */ ?>
<img src="https://assets.isu.pub/document-structure/230405124850-854c439bb6dfbf72007c0f2dc5579651/v1/5a9dd7fc7c3c66ac44b9dcd2e0572489.jpeg" alt="Logo" width="40" style="object-fit: contain;margin-right: 25px;">
</div>
<div class="col-md-4 text-center">
<div class="mb-0" style="margin-top: -10px; font-size: 18px;">
<p style="margin-bottom: -5px;"><strong style="font-weight: bold;">REGISTRO DE INCIDENCIAS DEL MES <?= (isset($month) && !empty($month)) ? strUpper($month) : 'MMMM' ?> <?= (isset($year) && !empty($year)) ? $year : 'YYYY' ?></strong></p>
<span style="font-size: 17px;">(Atrasos, salidas tempranas y/o ausencias)</span>
</div>
</div>
</div>
<div class="row" style="margin-top: 30px;">
<div class="col-12">
<!-- Light table -->
<table class=" border-0" border="0">
<thead class="text-left">
<tr>
<td scope="col" width="28%" style="font-size: 12.5px;padding: 2px">Nombre Colaborador (a):</td>
<th class="text-left" style="font-size: 13px; padding: 2px;margin-left: 10px;"><?= !empty($employee) ? (strUpper($employee->nombres . ' ' . $employee->apellido_p . ' ' . $employee->apellido_m)) : 'Sin información' ?> </th>
</tr>
<tr>
<td scope="col" width="28%" style="font-size: 12.5px;padding: 2px;" class=" text-left">Rut Colaborador (a):</td>
<th class="text-left" style="font-size: 13px; padding: 2px;margin-left: 10px;"><?= !empty($employee) ? (formateaRut($employee->rut)) : 'Sin información' ?></th>
</tr>
</thead>
</table>
</div>
<div class="col-12" style="margin-top: 20px;">
<!-- Light table -->
<table class=" border-0" border="0">
<thead class="text-left">
<tr>
<td class="text-justify" style="font-size: 13px; padding: 2px;">
Junto con saludar a continuación se presenta un resumen detallado de su asistencia así como información relativa a atrasos, salidas tempranas, registros parciales (no registrar entrada o salida) e inasistencias del mes de <?= (isset($month) && !empty($month)) ? $month : 'MMMM' ?> del <?= (isset($year) && !empty($year)) ? $year : 'YYYY' ?>
</td>
</tr>
</thead>
</table>
</div>
<div class="col-12" style="margin-top: 10px;">
<!-- Light table -->
<table id="cabeceraTable" class="table align-items-center table-flush table-bordered table-striped">
<thead class="thead-blue">
<tr>
<td colspan="2" scope="col" style="font-size: 13px;padding: 2px;" class="text-center text-dark ">Detalle de Incidencias</td>
</tr>
</thead>
<tbody>
<?php
$count = count($dias_entradas_salidas_arr);
for ($i = 0; $i < $count; $i += 2) : ?>
<tr>
<td class="text-left bg-white" style="font-size: 11px; padding: 1px 5px;">
<?= isset($dias_entradas_salidas_arr[$i]) ? $dias_entradas_salidas_arr[$i] : '-' ?>
</td>
<td class="text-left bg-white" style="font-size: 11px; padding: 1px 5px;">
<?= isset($dias_entradas_salidas_arr[$i + 1]) ? $dias_entradas_salidas_arr[$i + 1] : '-' ?>
</td>
</tr>
<?php endfor; ?>
</tbody>
</table>
</div>
<img src="<?= isset($image_base64) ? $image_base64 : '' ?>" alt="Gráfico de Barras" style="margin-top: 0px;">
<div class="col-12" style="margin-top: -30px;">
<!-- Light table -->
<table id="cabeceraTable" class="table align-items-center table-flush table-bordered table-striped mt-2">
<tbody>
<tr>
<th class="text-center bg-white" style="font-size: 12px; padding: 1px 5px;"><?= $dias_sin_asistencia > 0 ? $dias_sin_asistencia : 0 ?> día(s)</th>
<th class="text-center bg-white" style="font-size: 12px; padding: 1px 5px;"><?= $dias_sin_entrada > 0 ? $dias_sin_entrada : 0 ?> día(s)</th>
<th class="text-center bg-white" style="font-size: 12px; padding: 1px 5px;"><?= $dias_sin_salida > 0 ? $dias_sin_salida : 0 ?> día(s)</th>
<th class="text-center bg-white" style="font-size: 12px; padding: 1px 5px;"><?= $dias_con_atrasos > 0 ? $dias_con_atrasos : 0 ?> día(s)</th>
<th class="text-center bg-white" style="font-size: 12px; padding: 1px 5px;"><?= $dias_salida_temprana > 0 ? $dias_salida_temprana : 0 ?> día(s)</th>
</tr>
<tr>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">Sin asistencia </td>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">No registra entrada</td>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">No registra salida</td>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">Registra ingreso atrasado </td>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">Registra salida temprana </td>
</tr>
</tbody>
</table>
</div>
<div class="col-12" style="margin-top: 10px;">
<!-- Light table -->
<table id="cabeceraTable" class="table align-items-center table-flush table-bordered table-striped mt-2 text-nowrap">
<tbody>
<tr>
<th class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">Jornada Colaborador</th>
<th class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">Jornada Efectiva</th>
<th class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">Incidencias (ausencias)</th>
<th class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">% Horas trabajadas</th>
<th class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;">% Horas no trabajadas</th>
</tr>
<tr>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;"><?= !empty($total_jornada_real) ? $total_jornada_real : '' ?></td>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;"><?= !empty($total_jornada_efectiva) ? $total_jornada_efectiva : '' ?></td>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;"><?= !empty($total_ausencia) ? $total_ausencia : '' ?></td>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;"><?= !empty($porcentaje_horas_trabajadas) ? $porcentaje_horas_trabajadas : '' ?>%</td>
<td class="text-center bg-white" style="font-size: 11px; padding: 1px 5px;"><?= !empty($porcentaje_horas_no_trabajadas) ? $porcentaje_horas_no_trabajadas : '' ?>%</td>
</tr>
</tbody>
</table>
</div>
<div class="col-12">
<!-- Light table -->
<table class=" border-0" border="0">
<thead class="text-left">
<tr>
<td class="text-justify" style="font-size: 13px; padding: 2px;">
En base a la información del sistema usted registra <?= !empty($total_ausencia) ? $total_ausencia : '' ?>, sin prestar servicios a Bradford School, lo que representa un <?= !empty($porcentaje_horas_no_trabajadas) ? $porcentaje_horas_no_trabajadas : '' ?>% del total de horas mensuales.
</td>
</tr>
</thead>
</table>
</div>
<div class="col-12" style="margin-top: 10px;">
<!-- Light table -->
<table class=" border-0" border="0">
<thead class="text-left">
<tr>
<td class="text-justify" style="font-size: 13px; padding: 2px;">
De existir alguna justificación no informada oportunamente y/o inconsistencia de algún registro, le agradeceremos tomar contacto con el área de recursos humanos, de tal manera regularizar y/o actualizar tal información.
</td>
</tr>
</thead>
</table>
</div>
<div class="col-12" style="margin-top: 10px;">
<!-- Light table -->
<table class=" border-0" border="0">
<thead class="text-left">
<tr>
<td class="text-justify" style="font-size: 13px; padding: 2px;">
Saludos cordiales<br>
Bradford School
</td>
</tr>
</thead>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-12" style="position: fixed; bottom:-10px; text-align: center; align-items: center; margin: 0 auto; width: 100%;">
<small class="text-muted " style="font-size:10px; ">Este documento ha sido generado automáticamente. </small>
</div>
<!-- Opcional: enlazando el JavaScript de Bootstrap -->
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous">
</script>
</body>
</html>