PROTOCOLOS ASSISTENCIAIS

Protocolos Assistenciais

Instrumentos baseados em evidências para prevenção de complicações assistenciais — Broncoaspiração/VAP, Quedas e Lesões por Pressão.

Ver Protocolos
🫁
Broncoaspiração / VAP
Prevenção de pneumonia associada à ventilação mecânica e manejo da broncoaspiração. Bundle VAP completo.
UTI Evidência A Bundle VAP
🩹
Prevenção de Quedas
Avaliação de risco pela Escala de Morse e medidas preventivas. Registro de ocorrências e notificações.
Internação Evidência B Escala Morse
🩺
Lesão por Pressão (LPP)
Avaliação pela Escala de Braden, classificação por estágio e cuidados com curativo. Bundle de prevenção de LPP.
UTI / Enfermaria Evidência A Escala Braden

📊 Dashboard Assistencial — Protocolos de Enfermagem

Indicadores de conformidade dos bundles · Todos os protocolos

VISÃO GERAL — TODOS OS PROTOCOLOS
Total de registros
Broncoaspiração/VAP
Quedas avaliadas
Avaliações LPP
🫁
Broncoaspiração / VAP — Conformidade do Bundle
Adesão aos 5 itens do Bundle VAP
Bundle VAP completo
Em VM
Cabeceira 30–45°
Higiene oral CHX
Pressão cuff OK
Carregando dados...
🚶
Prevenção de Quedas — Escala de Morse
Estratificação de risco e ocorrência de quedas
Alto risco (Morse ≥ 45)
Risco médio (25–44)
Baixo risco (< 25)
Quedas ocorridas
Score médio Morse
Carregando dados...
🩺
Lesão por Pressão (LPP) — Escala de Braden
Estratificação de risco e prevalência de LPP
Risco grave (Braden ≤ 9)
Alto risco (10–12)
Bundle SSKIN completo
LPP presente
Score médio Braden
Carregando dados...

Registro Salvo!

🏥
Identificação
Dados do paciente e da avaliação
⚠️
Avaliação de Risco
Fatores de risco para broncoaspiração
😴 Rebaixamento de consciência
🍽️ Disfagia
🫁 Intubação orotraqueal
💨 Traqueostomia
🔧 SNG/SNE
🤢 Vômito / regurgitação
Bundle VAP — Checklist
Marque os itens realizados nesta avaliação
O Bundle VAP inclui 5 itens que, quando realizados em conjunto, reduzem em até 66% a incidência de pneumonia associada à ventilação.
🛏️ Cabeceira 30–45°
🦷 Higiene oral com clorexidina
🎈 Pressão cuff 20–30 cmH₂O
💊 Pausa diária de sedação avaliada
🫁 Teste de respiração espontânea (SBT)
📋
Registros — Broncoaspiração / VAP
Lista de avaliações registradas
DataHospitalPacienteEnfermeiroVMBundle VAPStatus
Carregando...

Registro Salvo!

🏥
Identificação
Dados do paciente
📊
Escala de Morse — Avaliação de Risco de Queda
Pontue cada item conforme avaliação clínica
Interpretação: 0–24 = Baixo risco | 25–44 = Médio risco (precauções padrão) | ≥45 = Alto risco (precauções de alto risco)
🛡️
Medidas Preventivas
Marque as medidas implementadas
🛏️ Grades elevadas
⬇️ Cama em posição baixa
🔔 Campainha acessível
👟 Calçado antiderrapante
💡 Ambiente iluminado
🔴 Pulseira de identificação de risco
📋
Registros — Prevenção de Quedas
Lista de avaliações registradas
DataHospitalPacienteScore MorseRiscoQuedaStatus
Carregando...

Registro Salvo!

🏥
Identificação
Dados do paciente
📊
Escala de Braden — Risco de LPP
Avalie cada subescala de 1 a 4 (exceto fricção/cisalhamento: 1–3)
Interpretação: ≥19 = Sem risco | 15–18 = Baixo risco | 13–14 = Risco moderado | 10–12 = Alto risco | ≤9 = Risco muito alto
🩺
Avaliação de LPP
Registre se há LPP presente e suas características
Bundle de Prevenção — Itens Realizados
🔄 Reposicionamento a cada 2h
🛏️ Superfície de redistribuição de pressão
🥗 Nutrição adequada avaliada
💧 Hidratação da pele
🩹 Curativo preventivo (proeminências ósseas)
📋
Registros — Lesão por Pressão
Lista de avaliações registradas
DataHospitalPacienteScore BradenRiscoLPPEstágioStatus
Carregando...
\`; const win = window.open('', '_blank'); if (!win) { alert('Pop-up bloqueado! Permita pop-ups para este site.'); return; } win.document.write(html); win.document.close(); } // ── EXPORTAR PPT ENFERMAGEM ─────────────────────────────────────── async function exportarPPTEnfermagem(btn) { if (typeof PptxGenJS === 'undefined') { alert('Biblioteca PPT não carregada. Aguarde o carregamento da página e tente novamente.'); return; } const orig = btn.innerHTML; btn.innerHTML = '⏳ Gerando...'; btn.disabled = true; try { const h = document.getElementById('dash-hospital')?.value || 'Todas as Unidades'; const b = filtrarPorHospital(_dashBronco); const q = filtrarPorHospital(_dashQueda); const l = filtrarPorHospital(_dashLPP); const periodo = new Date().toLocaleDateString('pt-BR', { month: 'long', year: 'numeric' }); const dataHoje = new Date().toLocaleDateString('pt-BR'); const COR = '0A2463'; const TEAL = '0891B2'; const BRANCO = 'FFFFFF'; const TEXTO = '212529'; const pct = (v,t) => t ? Math.round(v/t*100)+'%' : '—'; const bTotal = b.length; const qTotal = q.length; const lTotal = l.length; const pptx = new PptxGenJS(); pptx.layout = 'LAYOUT_WIDE'; pptx.title = `Relatório Assistencial Enfermagem — ${h} — ${periodo}`; // Slide 1: Capa const s1 = pptx.addSlide(); s1.background = { color: COR }; s1.addText('📋', { x:5.5, y:0.3, w:2, h:0.9, fontSize:52, align:'center' }); s1.addText('PROTOCOLOS ASSISTENCIAIS DE ENFERMAGEM', { x:0.5, y:1.4, w:12.3, h:0.5, fontSize:12, bold:true, color:'BAE6FD', align:'center', charSpacing:2 }); s1.addText(`Relatório de Conformidade — ${h}`, { x:0.5, y:2.0, w:12.3, h:0.65, fontSize:19, bold:true, color:BRANCO, align:'center', wrap:true }); s1.addText(`Período: ${periodo} | Gerado em: ${dataHoje}`, { x:0.5, y:2.8, w:12.3, h:0.38, fontSize:11, color:'94A3B8', align:'center' }); s1.addText('Bundle VAP · Escala de Morse · Escala de Braden / Bundle SSKIN', { x:0.5, y:3.3, w:12.3, h:0.32, fontSize:9, color:'64748B', align:'center' }); // Slide 2: Visão Geral const s2 = pptx.addSlide(); s2.addText('Visão Geral — Todos os Protocolos', { x:0.4, y:0.15, w:12.5, h:0.52, fontSize:17, bold:true, color:COR }); s2.addShape(pptx.ShapeType.line, { x:0.4, y:0.7, w:12.5, h:0, line:{ color:COR, width:2 } }); const kpisGeral = [ { v:String(bTotal+qTotal+lTotal), l:'Total de registros' }, { v:String(bTotal), l:'Broncoaspiração/VAP' }, { v:String(qTotal), l:'Quedas avaliadas' }, { v:String(lTotal), l:'Avaliações LPP' } ]; kpisGeral.forEach((k,i) => { const bw = 12.5/4; s2.addShape(pptx.ShapeType.roundRect, { x:0.4+i*bw, y:0.85, w:bw-0.15, h:1.75, fill:{ color:TEAL }, rectRadius:0.1 }); s2.addText(k.v, { x:0.4+i*bw, y:0.98, w:bw-0.15, h:0.85, fontSize:30, bold:true, color:BRANCO, align:'center' }); s2.addText(k.l, { x:0.4+i*bw, y:1.9, w:bw-0.15, h:0.52, fontSize:9.5, color:'BAE6FD', align:'center', wrap:true }); }); // Slide 3: Bundle VAP const s3 = pptx.addSlide(); s3.addText('🫁 Broncoaspiração / VAP — Bundle VAP', { x:0.4, y:0.15, w:12.5, h:0.52, fontSize:17, bold:true, color:TEAL }); s3.addShape(pptx.ShapeType.line, { x:0.4, y:0.7, w:12.5, h:0, line:{ color:TEAL, width:2 } }); const kpisB = [ { v:pct(b.filter(r=>r.bundle_vap_realizado).length,bTotal), l:'Bundle VAP completo', meta:85 }, { v:pct(b.filter(r=>r.cabeceira_elevada).length,bTotal), l:'Cabeceira 30–45°', meta:95 }, { v:pct(b.filter(r=>r.higiene_oral_realizada).length,bTotal), l:'Higiene oral CHX', meta:90 }, { v:pct(b.filter(r=>r.pressao_cuff_verificada).length,bTotal), l:'Pressão cuff OK', meta:90 }, ]; kpisB.forEach((k,i) => { const bw = 12.5/4; const v = parseInt(k.v)||0; const cor2 = v >= k.meta ? '059669' : 'b91c1c'; s3.addShape(pptx.ShapeType.roundRect, { x:0.4+i*bw, y:0.85, w:bw-0.15, h:1.75, fill:{ color:cor2 }, rectRadius:0.1 }); s3.addText(k.v, { x:0.4+i*bw, y:0.98, w:bw-0.15, h:0.85, fontSize:28, bold:true, color:BRANCO, align:'center' }); s3.addText(k.l, { x:0.4+i*bw, y:1.9, w:bw-0.15, h:0.52, fontSize:9.5, color:BRANCO, align:'center', wrap:true }); }); // Slide 4: Quedas const s4 = pptx.addSlide(); s4.addText('🚶 Prevenção de Quedas — Escala de Morse', { x:0.4, y:0.15, w:12.5, h:0.52, fontSize:17, bold:true, color:'b45309' }); s4.addShape(pptx.ShapeType.line, { x:0.4, y:0.7, w:12.5, h:0, line:{ color:'b45309', width:2 } }); const kpisQ = [ { v:pct(q.filter(r=>r.morse_risco==='Alto').length,qTotal), l:'Alto risco (≥ 45)' }, { v:pct(q.filter(r=>r.morse_risco==='Médio').length,qTotal), l:'Risco médio (25–44)' }, { v:pct(q.filter(r=>r.morse_risco==='Baixo').length,qTotal), l:'Baixo risco (< 25)' }, { v:pct(q.filter(r=>r.ocorreu_queda).length,qTotal), l:'Quedas ocorridas' }, ]; kpisQ.forEach((k,i) => { const bw = 12.5/4; s4.addShape(pptx.ShapeType.roundRect, { x:0.4+i*bw, y:0.85, w:bw-0.15, h:1.75, fill:{ color:'b45309' }, rectRadius:0.1 }); s4.addText(k.v, { x:0.4+i*bw, y:0.98, w:bw-0.15, h:0.85, fontSize:28, bold:true, color:BRANCO, align:'center' }); s4.addText(k.l, { x:0.4+i*bw, y:1.9, w:bw-0.15, h:0.52, fontSize:9.5, color:BRANCO, align:'center', wrap:true }); }); // Slide 5: LPP const s5 = pptx.addSlide(); s5.addText('🩺 Lesão por Pressão — Braden / Bundle SSKIN', { x:0.4, y:0.15, w:12.5, h:0.52, fontSize:17, bold:true, color:'be185d' }); s5.addShape(pptx.ShapeType.line, { x:0.4, y:0.7, w:12.5, h:0, line:{ color:'be185d', width:2 } }); const kpisL = [ { v:pct(l.filter(r=>r.bundle_sskin_completo).length,lTotal), l:'Bundle SSKIN completo', meta:85 }, { v:pct(l.filter(r=>r.lpp_presente).length,lTotal), l:'LPP presente', meta:null }, { v:pct(l.filter(r=>r.braden_risco==='Risco grave'||Number(r.escala_braden)<=9).length,lTotal), l:'Risco grave (≤ 9)' }, { v:lTotal?(l.reduce((s,r)=>s+(Number(r.escala_braden)||0),0)/lTotal).toFixed(1)+'':'—', l:'Braden médio' }, ]; kpisL.forEach((k,i) => { const bw = 12.5/4; s5.addShape(pptx.ShapeType.roundRect, { x:0.4+i*bw, y:0.85, w:bw-0.15, h:1.75, fill:{ color:'be185d' }, rectRadius:0.1 }); s5.addText(k.v, { x:0.4+i*bw, y:0.98, w:bw-0.15, h:0.85, fontSize:28, bold:true, color:BRANCO, align:'center' }); s5.addText(k.l, { x:0.4+i*bw, y:1.9, w:bw-0.15, h:0.52, fontSize:9.5, color:BRANCO, align:'center', wrap:true }); }); // Slide final const sf = pptx.addSlide(); sf.background = { color: COR }; sf.addText('QualiCore', { x:0.5, y:1.7, w:12.3, h:0.65, fontSize:28, bold:true, color:BRANCO, align:'center' }); sf.addText('Relatório de Protocolos Assistenciais de Enfermagem', { x:0.5, y:2.45, w:12.3, h:0.45, fontSize:14, color:'BAE6FD', align:'center' }); sf.addText(dataHoje, { x:0.5, y:3.0, w:12.3, h:0.38, fontSize:11, color:'94A3B8', align:'center' }); const nomeSafe = h.replace(/[^a-zA-Z0-9\u00C0-\u00FF]/g,'_').substring(0,25); await pptx.writeFile({ fileName:`Relatorio_Enfermagem_${nomeSafe}_${periodo.replace(/\s/g,'_')}.pptx` }); } catch(e) { console.error(e); alert('Erro ao gerar PPT: ' + e.message); } btn.innerHTML = orig; btn.disabled = false; } // ── Init ────────────────────────────────────────────────────────── window.addEventListener('DOMContentLoaded', () => { const today = new Date().toISOString().split('T')[0]; ['b-data','q-data','l-data'].forEach(id => { const el = document.getElementById(id); if (el) el.value = today; }); calcMorse(); calcBraden(); carregarDashboard(); });