File "Incapacidades.php"

Full Path: C:/wamp64/www/casos_medicos1/views/Incapacidades.php
File size: 5.6 KB
MIME-type: text/html
Charset: utf-8

<div class="container-fluid">
  <div class="d-flex justify-content-between align-items-center mb-3">
    <h6 class="m-0 fw-bold text-success">Incapacidades del paciente</h6>

    <button class="btn btn-sm btn-success" id="btnNuevaIncap" data-bs-toggle="modal" data-bs-target="#modalIncapacidad">
      ➕ Nueva Incapacidad
    </button>
  </div>

  <div class="table-responsive">
    <table class="table table-bordered table-sm align-middle">
      <thead class="table-success">
        <tr>
          <th>Fecha Inicial</th>
          <th>Días Transcurridos</th>
          <th>Fecha Final</th>
          <th>Entidad</th>
          <th>Días</th>
          <th>Tipo</th>
          <th>Cargo</th>
        </tr>
      </thead>
      <tbody>
        <?php if ($registros && $registros->num_rows > 0): ?>
          <?php while($r = $registros->fetch_assoc()): ?>
            <?php 
              $inicio = new DateTime($r['fecha_inicio']);
              $hoy = new DateTime();
              $diasTrans = $inicio->diff($hoy)->days;
            ?>
            <tr>
              <td><?=$r['fecha_inicio']?></td>
              <td><?=$diasTrans?></td>
              <td><?=$r['fecha_fin']?></td>
              <td><?=$r['eps']?></td>
              <td><?=$r['dias']?></td>
              <td><?=$r['tipo_incapacidad']?></td>
              <td><?=$r['cargo']?></td>
            </tr>
          <?php endwhile; ?>
        <?php else: ?>
          <tr><td colspan="7" class="text-center text-muted">Sin incapacidades registradas</td></tr>
        <?php endif; ?>
      </tbody>

    </table>
  </div>
</div>
<!-- ===============   MODAL INCAPACIDAD   =============== -->
<div class="modal fade" id="modalIncapacidad" tabindex="-1">
  <div class="modal-dialog modal-lg">
    <form class="modal-content" id="formIncapacidad">

      <div class="modal-header bg-success text-white">
        <h5 class="modal-title">Nueva Incapacidad</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal"></button>
      </div>

      <div class="modal-body">

        <input type="hidden" name="cedula" value="<?=$cedula?>">

        <div class="row g-3">

          <div class="col-md-6">
            <label class="form-label">Fecha Inicial</label>
            <input type="date" name="fecha_inicial" id="fecha_inicial" class="form-control form-control-sm" required>
          </div>

          <div class="col-md-6">
            <label class="form-label">Fecha Final</label>
            <input type="date" name="fecha_final" id="fecha_final" class="form-control form-control-sm" required>
          </div>

          <div class="col-md-6">
            <label class="form-label">Entidad</label>
            <select name="entidad" class="form-select form-select-sm" required>
              <option value="">Seleccione...</option>
              <option value="EPS">EPS</option>
              <option value="ARL">ARL</option>
              <option value="MÉDICO EMPRESA">Médico Empresa</option>
            </select>
          </div>

          <div class="col-md-6">
            <label class="form-label">Médico</label>
            <input type="text" name="medico" class="form-control form-control-sm" required>
          </div>

          <div class="col-12">
            <label class="form-label">Diagnóstico</label>
            <select name="codigo_diagnostico" class="form-select form-select-sm" required>
              <option value="">Seleccione diagnóstico</option>

              <?php while($d = $diagnosticos->fetch_assoc()): ?>
                <option value="<?=$d['id']?>"><?=$d['descripcion']?></option>
              <?php endwhile; ?>

            </select>
          </div>

          <div class="col-md-6">
            <label class="form-label">Días</label>
            <input type="number" name="dias" id="dias" class="form-control form-control-sm" readonly>
          </div>

          <div class="col-12">
            <label class="form-label">Observaciones</label>
            <textarea name="observaciones" class="form-control form-control-sm"></textarea>
          </div>

        </div>

      </div>

      <div class="modal-footer">
        <button type="submit" class="btn btn-success btn-sm">Guardar</button>
      </div>

    </form>
  </div>
</div>


<script>
    // Abrir modal
    document.getElementById("btnNuevaIncap").addEventListener("click", () => {
        new bootstrap.Modal(document.getElementById("modalIncapacidad")).show();
    });

    // Calcular días
    const fInicio = document.getElementById("fecha_inicial");
    const fFin = document.getElementById("fecha_final");
    const dias = document.getElementById("dias");

    function calcularDias(){
        if(fInicio.value && fFin.value){
            const ini = new Date(fInicio.value);
            const fin = new Date(fFin.value);

            if(fin >= ini){
                const diff = Math.ceil((fin - ini) / (1000 * 60 * 60 * 24)) + 1;
                dias.value = diff;
            } else {
                dias.value = "";
            }
        }
    }

    fInicio.addEventListener("change", calcularDias);
    fFin.addEventListener("change", calcularDias);

    // Guardar incapacidad
    document.getElementById("formIncapacidad").addEventListener("submit", function(e){
        e.preventDefault();

        fetch("incapacidades/guardar", {
            method: "POST",
            body: new FormData(this)
        })
        .then(r => r.text())
        .then(resp => {
            alert(resp);
            location.reload();
        });
    });
</script>