File "ver_paciente.php.bak"

Full Path: C:/wamp64/www/casos_medicos/ver_paciente.php.bak
File size: 12.15 KB
MIME-type: text/x-php
Charset: utf-8

<?php
include("conexion.php");
session_start();
if(!isset($_SESSION['usuario'])) header('Location: login.php');

$cedula = $_GET['cedula'] ?? '';
if(empty($cedula)){
    echo 'No se indicó cédula. <a href="index.php">Volver</a>';
    exit;
}

// Datos paciente
$sql = "SELECT h.*, 
            afp.nombre AS afp,
            eps.nombre AS eps,
            arl.nombre AS arl,
            emp.nombre AS empresa,
            pl.nombre AS planta,
            e.nombre AS estado
        FROM hoja_vida h
        LEFT JOIN afp afp ON afp.id = h.id_afp
        LEFT JOIN eps eps ON eps.id = h.id_eps
        LEFT JOIN arl arl ON arl.id = h.id_arl
        LEFT JOIN empresa emp ON emp.id = h.id_empresa
        LEFT JOIN planta pl ON pl.id = h.id_planta
        LEFT JOIN estado e ON e.id = h.id_estado
        WHERE h.cedula = '$cedula' LIMIT 1";

$res = $conn->query($sql);
$hoja = $res->fetch_assoc();

if(!$hoja){
    echo "<div class='p-4 alert alert-warning'>
            No se encontró registro para la cédula <strong>$cedula</strong>.
            <br><br>
            <a href='pacientes/nueva_hoja.php?cedula=$cedula' class='btn btn-success btn-sm'>Crear nueva hoja de vida</a>
            <a href='index.php' class='btn btn-secondary btn-sm'>Volver</a>
          </div>";
    exit;
}

// Listas para combos
$afps = $conn->query("SELECT id, nombre FROM afp ORDER BY nombre");
$epss = $conn->query("SELECT id, nombre FROM eps ORDER BY nombre");
$arls = $conn->query("SELECT id, nombre FROM arl ORDER BY nombre");
$empresas = $conn->query("SELECT id, nombre FROM empresa ORDER BY nombre");
$plantas = $conn->query("SELECT id, nombre FROM planta ORDER BY nombre");
$estados = $conn->query("SELECT id, nombre FROM estado ORDER BY nombre");
?>

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<title>Historia Clínica - <?=htmlspecialchars($hoja['nombre'])?></title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<style>
    body { background-color: #f4f6f4; font-family: 'Segoe UI', sans-serif; }
    .card { border-radius: 12px; }
    .nav-tabs .nav-link.active { background-color: #ff7f00 !important; color: #fff !important; border: none; }
    .nav-tabs .nav-link { color: #ff7f00; font-weight: 500; }
    .info-label { font-weight: 600; color: #2d7a2e; }
    .info-value { color: #222; }
    h4 { border-left: 6px solid #ff7f00; padding-left: 10px; color: #333; }
    h6 { color: #2d7a2e; font-weight: bold; }
    .btn-warning { background-color: #ff7f00; border: none; color: #fff; }
    .btn-success { background-color: #2d7a2e; border: none; }
    .btn-secondary { background-color: #95a5a6; border: none; }
    .foto-paciente { max-width: 140px; border-radius: 8px; box-shadow: 0 0 6px rgba(0,0,0,0.2); }
    select.form-select-sm { border: 1px solid #ccc; }

    /* Diagnóstico tabla desplegable */
    .main-row { cursor: pointer; transition: background-color 0.2s; }
    .main-row:hover { background-color: #e9f5ff; }
    .detail-cell { background-color: #f1f5f9; padding: 15px; border-radius: 8px; box-shadow: inset 0 0 5px rgba(0,0,0,0.05); font-size: 0.9rem; }
    .detail-section { margin-bottom: 12px; }
    .detail-title { font-weight: bold; color: #0d6efd; margin-bottom: 4px; border-bottom: 1px solid #dee2e6; padding-bottom: 2px; }
    .detail-cell p { margin: 0; text-align: justify; }
    .toggle-icon { display: inline-block; width: 20px; font-weight: bold; margin-right: 8px; transition: transform 0.2s; }
    .toggle-icon.rotate { transform: rotate(45deg); }
</style>
</head>
<body class="p-4">

<div class="container bg-white p-4 shadow rounded">
  <div class="d-flex justify-content-between align-items-center mb-3">
    <h4>Historia Clínica - <?=htmlspecialchars($hoja['nombre'])?></h4>
    <div>
      <button id="btnEditar" class="btn btn-sm btn-warning">Editar</button>
      <button id="btnGuardar" class="btn btn-sm btn-success d-none">Actualizar</button>
      <button id="btnCancelar" class="btn btn-sm btn-secondary d-none">Cancelar</button>
      <a href="reportes/exportar_pdf.php?cedula=<?=urlencode($cedula)?>" class="btn btn-sm btn-outline-primary" target="_blank">PDF</a>
      <a href="index.php" class="btn btn-sm btn-outline-dark">Volver</a>
    </div>
  </div>

  <!-- Pestañas -->
  <ul class="nav nav-tabs" id="myTab">
    <li class="nav-item"><a class="nav-link active" data-bs-toggle="tab" href="#hoja">Hoja de Vida</a></li>
    <li class="nav-item"><a class="nav-link" data-bs-toggle="tab" href="#diag">Diagnóstico</a></li>
    <li class="nav-item"><a class="nav-link" data-bs-toggle="tab" href="#rec">Recomendaciones</a></li>
    <li class="nav-item"><a class="nav-link" data-bs-toggle="tab" href="#inc">Incapacidades</a></li>
    <li class="nav-item"><a class="nav-link" data-bs-toggle="tab" href="#seg">Seguimiento</a></li>
	 <li class="nav-item"><a class="nav-link" data-bs-toggle="tab" href="#seg">Proceso Calificación</a></li>
  </ul>

  <div class="tab-content mt-3">
    <!-- HOJA DE VIDA -->
    <div class="tab-pane fade show active" id="hoja">
      <div class="row mb-3">
        <div class="col-md-3 text-center">
          <?php if(!empty($hoja['foto']) && file_exists($hoja['foto'])): ?>
            <img src="<?=htmlspecialchars($hoja['foto'])?>" class="foto-paciente" alt="Foto paciente">
          <?php else: ?>
            <img src="assets/default_user.png" class="foto-paciente" alt="Sin foto">
          <?php endif; ?>
        </div>
        <div class="col-md-9">
          <input type="hidden" name="id" value="<?=$hoja['id']?>" id="paciente_id">
          <div class="row">
            <div class="col-md-6 mb-2"><span class="info-label">Cédula:</span> <?=$hoja['cedula']?></div>
            <div class="col-md-6 mb-2"><span class="info-label">Nombre:</span> <span data-editable data-name="nombre"><?=$hoja['nombre']?></span></div>
            <div class="col-md-4 mb-2"><span class="info-label">Fecha nacimiento:</span> <span data-editable data-name="fecha_nacimiento"><?=$hoja['fecha_nacimiento']?></span></div>
            <div class="col-md-4 mb-2"><span class="info-label">Edad:</span> <span data-editable data-name="edad"><?=$hoja['edad']?></span></div>
            <div class="col-md-4 mb-2"><span class="info-label">Estado:</span> 
              <select disabled name="id_estado" class="form-select form-select-sm">
                <?php while($e = $estados->fetch_assoc()): ?>
                  <option value="<?=$e['id']?>" <?=$hoja['id_estado']==$e['id']?'selected':''?>><?=$e['nombre']?></option>
                <?php endwhile; ?>
              </select> 
            </div>
          </div>
        </div>
      </div>

      <h6 class="border-bottom pb-2 mt-3">Datos Laborales</h6>
      <div class="row">
        <div class="col-md-4 mb-2"><span class="info-label">AFP:</span> 
          <select disabled name="id_afp" class="form-select form-select-sm">
            <?php while($a = $afps->fetch_assoc()): ?>
              <option value="<?=$a['id']?>" <?=$hoja['id_afp']==$a['id']?'selected':''?>><?=$a['nombre']?></option>
            <?php endwhile; ?>
          </select>
        </div>
        <div class="col-md-4 mb-2"><span class="info-label">EPS:</span> 
          <select disabled name="id_eps" class="form-select form-select-sm">
            <?php while($ep = $epss->fetch_assoc()): ?>
              <option value="<?=$ep['id']?>" <?=$hoja['id_eps']==$ep['id']?'selected':''?>><?=$ep['nombre']?></option>
            <?php endwhile; ?>
          </select>
        </div>
        <div class="col-md-4 mb-2"><span class="info-label">ARL:</span> 
          <select disabled name="id_arl" class="form-select form-select-sm">
            <?php while($ar = $arls->fetch_assoc()): ?>
              <option value="<?=$ar['id']?>" <?=$hoja['id_arl']==$ar['id']?'selected':''?>><?=$ar['nombre']?></option>
            <?php endwhile; ?>
          </select>
        </div>
        <div class="col-md-4 mb-2"><span class="info-label">Empresa:</span> 
          <select disabled name="id_empresa" class="form-select form-select-sm">
            <?php while($em = $empresas->fetch_assoc()): ?>
              <option value="<?=$em['id']?>" <?=$hoja['id_empresa']==$em['id']?'selected':''?>><?=$em['nombre']?></option>
            <?php endwhile; ?>
          </select>
        </div>
        <div class="col-md-4 mb-2"><span class="info-label">Planta:</span> 
          <select disabled name="id_planta" class="form-select form-select-sm">
            <?php while($pl = $plantas->fetch_assoc()): ?>
              <option value="<?=$pl['id']?>" <?=$hoja['id_planta']==$pl['id']?'selected':''?>><?=$pl['nombre']?></option>
            <?php endwhile; ?>
          </select>
        </div>
        <div class="col-md-4 mb-2"><span class="info-label">Regional:</span><span data-editable data-name="regional"><?=$hoja['regional']?></span></div>
        <div class="col-md-4 mb-2"><span class="info-label">Centro de trabajo:</span> <span data-editable data-name="centro_trabajo"><?=$hoja['centro_trabajo']?></span></div>
        <div class="col-md-4 mb-2"><span class="info-label">Tipo de contrato:</span> <span data-editable data-name="tipo_contrato"><?=$hoja['tipo_contrato']?></span></div>
        <div class="col-md-4 mb-2"><span class="info-label">Fecha inicio:</span> <span data-editable data-name="fecha_inicio"><?=$hoja['fecha_inicio']?></span></div>
        <div class="col-md-4 mb-2"><span class="info-label">Cargo inicial:</span> <span data-editable data-name="cargo_inicial"><?=$hoja['cargo_inicial']?></span></div>
        <div class="col-md-4 mb-2"><span class="info-label">Nuevo cargo:</span> <span data-editable data-name="cargo_reubicado"><?=$hoja['cargo_reubicado']?></span></div>
        <div class="col-md-4 mb-2"><span class="info-label">% Productividad:</span> <span data-editable data-name="productividad"><?=$hoja['productividad']?></span></div>
        <div class="col-md-4 mb-2"><span class="info-label">Semanas cotización:</span> <span data-editable data-name="semanas_cotizacion"><?=$hoja['semanas_cotizacion']?></span></div>
      </div>
    </div>

    <!-- DIAGNÓSTICO -->
    <div class="tab-pane fade" id="diag">
      <?php $cedula_actual = $cedula; include("pacientes/diagnostico.php"); ?>
    </div>

    <!-- RECOMENDACIONES -->
  <div class="tab-pane fade" id="rec"><?php include("pacientes/recomendaciones.php"); ?></div>

    <!-- INCAPACIDADES -->
    <div class="tab-pane fade" id="inc"><?php include("pacientes/incapacidades.php"); ?></div>

    <!-- SEGUIMIENTO -->
    <div class="tab-pane fade" id="seg"><?php include("pacientes/seguimiento.php"); ?></div>
  </div>
</div>

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
<script>
  // Editar Hoja de Vida
  document.addEventListener('DOMContentLoaded', () => {
    const btnEditar = document.getElementById('btnEditar');
    const btnGuardar = document.getElementById('btnGuardar');
    const btnCancelar = document.getElementById('btnCancelar');
    const campos = document.querySelectorAll('[data-editable]');
    const selects = document.querySelectorAll('select[disabled]');

  btnEditar.addEventListener('click', () => {
    campos.forEach(el => {
      const valor = el.innerText.trim();
          const input = document.createElement('input');
          input.className = 'form-control form-control-sm';
          input.name = el.dataset.name;
          input.value = valor;
          el.replaceWith(input);
        });
        selects.forEach(s => s.disabled = false);
        btnEditar.classList.add('d-none');
        btnGuardar.classList.remove('d-none');
        btnCancelar.classList.remove('d-none');
      });

      btnCancelar.addEventListener('click', () => window.location.reload());

        btnGuardar.addEventListener('click', () => {
          const formData = new FormData();
          formData.append('id', document.getElementById('paciente_id').value);
          formData.append('cedula', '<?= $cedula ?>');
          document.querySelectorAll('input[name], select[name]').forEach(i => formData.append(i.name, i.value));

          fetch('actualizar_paciente.php', { method:'POST', body:formData })
            .then(res=>res.text())
            .then(resp=>{ alert(resp); window.location.reload(); })
            .catch(err=>alert('Error al guardar: '+err));
        });
    });
</script>
</body