CIET

Centro de Innovación Educativa y Tecnológica

Escuela Normal Superior La Hacienda - Barranquilla

Inventario y Préstamos - Escuela Normal Superior La Hacienda
Inventario Electrónica
Gestión de artículos, préstamos y devoluciones
Escuela Normal Superior La Hacienda

Escuela Normal Superior La Hacienda

Centro de Innovación Educativa y Tecnológica

Agregar Artículo

El sistema genera automáticamente el código del ítem.
Items: 0

Vista rápida

Panel de administración

Nota: Los datos se almacenan localmente en el navegador (localStorage). Para usar en red o servidor, adapte este archivo para conectarse a una base de datos real (MySQL, Firebase, etc.).
'); doc.close(); setTimeout(()=>{win.print();},500); }// Export & Import exportBtn.addEventListener('click', ()=>{ const blob = new Blob([JSON.stringify({items,loans},null,2)],{type:'application/json'}); const url = URL.createObjectURL(blob); const a = document.createElement('a');a.href=url;a.download='inventario_prestamos.json';document.body.appendChild(a);a.click();a.remove();URL.revokeObjectURL(url); }); importBtn.addEventListener('click', ()=>fileImport.click()); fileImport.addEventListener('change', async (e)=>{ const f = e.target.files && e.target.files[0]; if(!f) return; const text = await f.text(); try{ const obj = JSON.parse(text); if(Array.isArray(obj.items) && Array.isArray(obj.loans)){ if(confirm('Importar reemplazará los datos actuales. Continuar?')){items = obj.items;loans = obj.loans;saveItems(items);saveLoans(loans);renderAll();alert('Importación completada.')} } else alert('JSON con formato inválido'); }catch(err){alert('Error leyendo JSON: '+err.message)} });clearStorageBtn.addEventListener('click', ()=>{if(confirm('Eliminar todos los datos locales?')){localStorage.removeItem(STORAGE_KEYS.items);localStorage.removeItem(STORAGE_KEYS.loans);items=[];loans=[];renderAll();}});// small utilities function escapeHtml(s){if(!s) return '';return s.replaceAll('&','&').replaceAll('<','<').replaceAll('>','>').replaceAll('"','"').replaceAll("'","'");}// Edit prompt function openEditPrompt(it){ const newName = prompt('Editar nombre', it.name); if(newName===null) return; it.name=newName.trim()||it.name; const newCab = prompt('Gabinete', it.cabinet); if(newCab!==null) it.cabinet=newCab.trim()||it.cabinet; const newDr = prompt('Cajón', it.drawer); if(newDr!==null) it.drawer=newDr.trim()||it.drawer; const newComp = prompt('Compartimiento', it.compartment); if(newComp!==null) it.compartment=newComp.trim()||it.compartment; const newQ = prompt('Cantidad', it.qty); if(newQ!==null) it.qty = Number(newQ)||it.qty; saveItems(items);renderAll(); }// ensure login overlay appears if not correct (function checkPwdOnLoad(){ if(localStorage.getItem('logged_in')==='1'){loginEl.style.display='none'} })();