Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
casos_medicos1
/
controller
:
ReportesControllers.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php require_once __DIR__ . '/../model/ReportesPdf.php'; require_once __DIR__ . '/../tcpdf_min/tcpdf.php'; class ReportesControllers { public function exportar_pdf() { if (!isset($_SESSION['usuario'])) { header('Location: /login/index'); exit; } $cedula = $_GET['cedula'] ?? ''; if (!$cedula) die("No se indicó cédula"); $modelo = new ReportesModel(); $paciente = $modelo->obtenerHojaVida($cedula); $diagnosticos = $modelo->obtenerDiagnosticos($cedula); if (!$paciente) die("Paciente no encontrado"); // Crear PDF $pdf = new TCPDF(); $pdf->SetCreator(PDF_CREATOR); $pdf->SetAuthor('Avicampo'); $pdf->SetTitle('Historia Clínica - ' . $paciente['nombre']); $pdf->SetMargins(15, 20, 15); $pdf->AddPage(); // Logo $logo = $_SERVER['DOCUMENT_ROOT'] . '/casos_medicos1/public/assets/logo_avicampo.png'; if (file_exists($logo)) $pdf->Image($logo, 15, 10, 40); // Foto paciente $foto = $_SERVER['DOCUMENT_ROOT'] . '/casos_medicos1/public/' . $paciente['foto']; if (!empty($paciente['foto']) && file_exists($foto)) $pdf->Image($foto, 150, 10, 40); $pdf->Ln(20); $pdf->SetFont('helvetica', 'B', 16); $pdf->Cell(0, 10, 'Historia Clínica - ' . $paciente['nombre'], 0, 1, 'C'); // Datos Generales y Laborales $pdf->SetFont('helvetica', '', 10); $html = '<h4>Datos Generales</h4> <table cellpadding="4" border="1"> <tr><td><b>Cédula:</b></td><td>' . $paciente['cedula'] . '</td></tr> <tr><td><b>Nombre:</b></td><td>' . $paciente['nombre'] . '</td></tr> <tr><td><b>Fecha Nacimiento:</b></td><td>' . $paciente['fecha_nacimiento'] . '</td></tr> <tr><td><b>Edad:</b></td><td>' . $paciente['edad'] . '</td></tr> <tr><td><b>Sexo:</b></td><td>' . $paciente['sexo'] . '</td></tr> <tr><td><b>Estado:</b></td><td>' . $paciente['estado'] . '</td></tr> </table> <h4>Datos Laborales</h4> <table cellpadding="4" border="1"> <tr><td><b>AFP:</b></td><td>' . $paciente['afp'] . '</td></tr> <tr><td><b>EPS:</b></td><td>' . $paciente['eps'] . '</td></tr> <tr><td><b>ARL:</b></td><td>' . $paciente['arl'] . '</td></tr> <tr><td><b>Tipo Contrato:</b></td><td>' . $paciente['tipo_contrato'] . '</td></tr> <tr><td><b>Empresa:</b></td><td>' . $paciente['empresa'] . '</td></tr> <tr><td><b>Planta:</b></td><td>' . $paciente['planta'] . '</td></tr> <tr><td><b>Regional:</b></td><td>' . $paciente['regional'] . '</td></tr> <tr><td><b>Centro Trabajo:</b></td><td>' . $paciente['centro_trabajo'] . '</td></tr> <tr><td><b>Cargo Inicial:</b></td><td>' . $paciente['cargo_inicial'] . '</td></tr> <tr><td><b>Fecha Inicio:</b></td><td>' . $paciente['fecha_inicio'] . '</td></tr> <tr><td><b>Nuevo Cargo:</b></td><td>' . $paciente['cargo_reubicado'] . '</td></tr> <tr><td><b>Productividad:</b></td><td>' . $paciente['productividad'] . '</td></tr> <tr><td><b>Semanas Cotización:</b></td><td>' . $paciente['semanas_cotizacion'] . '</td></tr> <tr><td><b>Tipo Rehabilitación:</b></td><td>' . $paciente['tipo_rehabilitacion'] . '</td></tr> </table>'; $pdf->writeHTML($html, true, false, true, false, ''); // Diagnósticos $pdf->Ln(5); $pdf->SetFont('helvetica', 'B', 12); $pdf->Cell(0, 6, 'Diagnósticos', 0, 1); $pdf->SetFont('helvetica', '', 10); if (!empty($diagnosticos)) { foreach ($diagnosticos as $d) { $pdf->MultiCell( 0, 5, "Fecha: " . $d['fecha'] . " | Estado: " . ($d['estado'] ?? '-') . " | Diagnóstico: " . ($d['diagnostico_descripcion'] ?? '-') . "\nPeso: " . ($d['peso'] ?? '-') . " | Talla: " . ($d['talla'] ?? '-') . " | IMC: " . ($d['imc'] ?? '-') . "\nOrigen: " . ($d['origen'] ?? '-') . " | Calificación: " . ($d['calificacion_origen'] ?? '-') . "\nTipo Reintegro: " . ($d['tipo_reintegro'] ?? '-') . " | Tiempo Recomendación: " . ($d['tiempo_recomendacion'] ?? '-') . "\nFunciones Iniciales: " . ($d['funciones_iniciales'] ?? '-') . "\nFunciones Actuales: " . ($d['funciones_actuales'] ?? '-') . "\nRecomendaciones: " . ($d['recomendaciones'] ?? '-'), 0, 'J', false, 1 ); $pdf->Ln(2); } } else { $pdf->Cell(0, 5, "No hay diagnósticos registrados", 0, 1); } // Generar PDF $pdf->Output('Historia_Clinica_' . $paciente['cedula'] . '.pdf', 'D'); } }