2025-09-15 02:15:44 -03:00

158 lines
5.4 KiB
HTML

<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8" />
<title>Novo Laudo</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css" />
<link rel="stylesheet" href="../../assets/css/novo-laudo.css">
</head>
<body>
<h1>Novo Laudo</h1>
<!-- Barra de Formatação -->
<div class="editor-toolbar">
<button onclick="execCmd('bold')"><i class="fa fa-bold"></i></button>
<button onclick="execCmd('italic')"><i class="fa fa-italic"></i></button>
<button onclick="execCmd('insertUnorderedList')"><i class="fa fa-list-ul"></i></button>
<button onclick="execCmd('justifyLeft')"><i class="fa fa-align-left"></i></button>
<button onclick="execCmd('justifyCenter')"><i class="fa fa-align-center"></i></button>
<button onclick="execCmd('justifyRight')"><i class="fa fa-align-right"></i></button>
<button onclick="insertCampo('[[NOME]]')">Nome</button>
<button onclick="insertCampo('[[IDADE]]')">Idade</button>
<button onclick="insertCampo('[[CID]]')">CID</button>
</div>
<!-- Editor -->
<div id="laudo-conteudo" contenteditable="true"></div>
<!-- Opções do Laudo -->
<div class="opcoes">
<label>Paciente: <input type="text" id="paciente" placeholder="Nome do paciente"></label>
<label>Solicitante: <input type="text" id="solicitante" placeholder="Médico solicitante"></label>
<label>Exame:
<select id="exame">
<optgroup label="Sangue">
<option>Hemograma completo</option>
<option>Glicemia de jejum</option>
<option>Colesterol e triglicerídeos</option>
<option>Ureia e creatinina</option>
<option>TGO/AST</option>
<option>TGP/ALT</option>
<option>TSH</option>
<option>T4 livre</option>
<option>Dosagem hormonal</option>
</optgroup>
<optgroup label="Urina">
<option>Exame de urina tipo 1</option>
<option>Urocultura</option>
<option>Exame de urina de 24 horas</option>
</optgroup>
<optgroup label="Outros">
<option>Ácido úrico</option>
<option>VDRL</option>
<option>HIV</option>
<option>Hepatites</option>
<option>Sífilis</option>
</optgroup>
<optgroup label="Testes rápidos">
<option>HIV (rápido)</option>
<option>Sífilis (rápido)</option>
<option>Hepatite B (rápido)</option>
<option>Hepatite C (rápido)</option>
</optgroup>
<optgroup label="Imagem">
<option>Radiografia</option>
<option>Mamografia</option>
<option>Ultrassonografia</option>
<option>Tomografia Computadorizada</option>
<option>Ressonância Magnética</option>
<option>Endoscopia</option>
<option>Videolaringoscopia</option>
</optgroup>
<optgroup label="Cardiológicos">
<option>Eletrocardiograma</option>
<option>Ecocardiograma</option>
<option>Teste ergométrico</option>
</optgroup>
<optgroup label="Alta complexidade">
<option>Estudos genéticos e cariótipos</option>
<option>Avaliação clínica para transplantes</option>
<option>Pré-natal de alto risco</option>
</optgroup>
</select>
>
</label>
<label>Prazo:
<input type="date" id="prazo">
</label>
<label>Assinatura digital: <input type="checkbox" id="assinatura"></label>
<label>Esconder data/assinatura: <input type="checkbox" id="ocultarAssinatura"></label><br />
<button class="btn-salvar" onclick="salvarLaudo()">Salvar</button>
<button class="btn-cancelar" onclick="window.location.href='Laudo.html'">Cancelar</button>
<button onclick="mostrarPreview()">Pré-visualizar</button>
</div>
<!-- Preview -->
<div class="preview hidden" id="preview"></div>
<script>
function execCmd(command) {
document.execCommand(command, false, null);
}
function insertCampo(texto) {
const selection = window.getSelection();
if (!selection.rangeCount) return;
const range = selection.getRangeAt(0);
range.deleteContents();
range.insertNode(document.createTextNode(texto));
}
function salvarLaudo() {
const conteudo = document.getElementById("laudo-conteudo").innerHTML;
const paciente = document.getElementById("paciente").value;
const solicitante = document.getElementById("solicitante").value;
const exame = document.getElementById("exame").value;
const prazo = document.getElementById("prazo").value;
if (!paciente || !solicitante || !prazo) {
alert("Preencha paciente, solicitante e prazo!");
return;
}
const laudos = JSON.parse(localStorage.getItem("laudos")) || [];
const novoLaudo = {
id: Date.now().toString(),
pedido: "PED" + Math.floor(Math.random() * 10000),
data: new Date().toISOString().split("T")[0],
prazo,
paciente,
solicitante,
exame,
status: "Dentro do prazo",
conteudo,
assinatura: document.getElementById("assinatura").checked
};
laudos.push(novoLaudo);
localStorage.setItem("laudos", JSON.stringify(laudos));
alert("Laudo salvo com sucesso!");
window.location.href = "laudo.html";
}
function mostrarPreview() {
const preview = document.getElementById("preview");
preview.innerHTML = document.getElementById("laudo-conteudo").innerHTML;
const ocultar = document.getElementById("ocultarAssinatura").checked;
preview.innerHTML += ocultar ? "" : "<p><strong>Dr. Fulano</strong> - CRM 0000</p>";
preview.classList.remove("hidden");
}
</script>
</body>
</html>