Gestión de Pacientes

DNI/CE o NOMBRE


O



.contenedor-busqueda { display:flex; align-items:flex-start; gap:30px; } .formulario-busqueda { width:280px; } #dni, #nombre { width:250px; padding:8px; font-size:16px; background:#ffffff !important; color:#000000 !important; border:1px solid #ccc; border-radius:4px; } #dni:disabled, #nombre:disabled { background:#eeeeee !important; cursor:not-allowed; } #nombre::placeholder { color:#999999; } .separador { width:250px; text-align:center; font-weight:bold; margin:8px 0; } .btn-continuar { background:#001f5b; color:#ffffff; border:none; padding:10px 20px; cursor:pointer; border-radius:4px; } .btn-continuar:hover { background:#003080; } #listaPacientes { width:300px; margin-top:0px; } .lista-contenido { max-height:170px; overflow-y:auto; padding-right:5px; } .paciente-item { padding:10px; border:1px solid #ccc; margin-bottom:8px; cursor:pointer; background:#ffffff !important; color:#000000 !important; border-radius:4px; } .paciente-item:hover { background:#e6eefc !important; } function bloquearNombre(){ const dni = document.getElementById('dni'); const nombre = document.getElementById('nombre'); if(dni.value.length > 0){ nombre.disabled = true; }else{ nombre.disabled = false; } } function bloquearDNI(){ const dni = document.getElementById('dni'); const nombre = document.getElementById('nombre'); if(nombre.value.length > 0){ dni.disabled = true; }else{ dni.disabled = false; } } async function buscarPaciente(){ const dni = document.getElementById('dni').value.trim(); const nombre = document.getElementById('nombre').value.trim(); // quitar mensaje anterior const errorAnterior = document.getElementById('errorDNI'); if(errorAnterior){ errorAnterior.remove(); } if(!dni && !nombre){ alert('Ingrese DNI o Nombre'); return; } // Validación DNI mínimo 8 caracteres if(dni && dni.length < 8){ document.getElementById('dni').insertAdjacentHTML( 'afterend', 'DNI/CE incorrecto' ); return; } const lista = document.getElementById('listaPacientes'); lista.innerHTML = ''; const formData = new FormData(); formData.append('action','buscar_paciente_dni'); formData.append('dni',dni); formData.append('nombre',nombre); const response = await fetch('/wp-admin/admin-ajax.php',{ method:'POST', body:formData }); const resultado = await response.json(); if(resultado.success){ if(resultado.data.multiple){ lista.innerHTML = 'Seleccione paciente:

' + '
'; const contenedorLista = lista.querySelector('.lista-contenido'); resultado.data.pacientes.forEach(function(paciente){ let div = document.createElement('div'); div.className = 'paciente-item'; div.innerHTML = paciente.nombre + '
DNI: ' + paciente.dni + ''; div.onclick = function(){ document.getElementById('dni').value = paciente.dni; document.getElementById('nombre').value = ''; buscarPaciente(); }; contenedorLista.appendChild(div); }); } else { window.location.href = resultado.data.url; } } else { alert('Error en la búsqueda'); } }