Agregar hora a modal Importar Laboratorio

This commit is contained in:
2026-04-16 15:18:49 -03:00
parent 143b9f21de
commit 048df3f74f
+17 -7
View File
@@ -595,6 +595,7 @@ function SeccionLaboratorios({ lab, patientId, add, update, del, addAcidoBase }:
const [parametroEvolucion, setParametroEvolucion] = useState(''); const [parametroEvolucion, setParametroEvolucion] = useState('');
const [importDialog, setImportDialog] = useState(false); const [importDialog, setImportDialog] = useState(false);
const [importFecha, setImportFecha] = useState(new Date().toISOString().split('T')[0]); const [importFecha, setImportFecha] = useState(new Date().toISOString().split('T')[0]);
const [importHora, setImportHora] = useState(new Date().toTimeString().slice(0, 5));
const [importTexto, setImportTexto] = useState(''); const [importTexto, setImportTexto] = useState('');
const [importResultados, setImportResultados] = useState<ResultadoLaboratorio[]>([]); const [importResultados, setImportResultados] = useState<ResultadoLaboratorio[]>([]);
const [importObservaciones, setImportObservaciones] = useState(''); const [importObservaciones, setImportObservaciones] = useState('');
@@ -853,11 +854,10 @@ for (const linea of lineas) {
addAcidoBase(importAcidoBase); addAcidoBase(importAcidoBase);
} }
const horaActual = new Date().toTimeString().slice(0, 5);
add({ add({
pacienteId: patientId, pacienteId: patientId,
fecha: importFecha, fecha: importFecha,
hora: horaActual, hora: importHora,
resultados: importResultados, resultados: importResultados,
observaciones: importObservaciones observaciones: importObservaciones
}); });
@@ -868,6 +868,7 @@ for (const linea of lineas) {
setImportObservaciones(''); setImportObservaciones('');
setImportAcidoBase(null); setImportAcidoBase(null);
setImportFecha(new Date().toISOString().split('T')[0]); setImportFecha(new Date().toISOString().split('T')[0]);
setImportHora(new Date().toTimeString().slice(0, 5));
}; };
const loadEdit = (l: Laboratorio) => { const loadEdit = (l: Laboratorio) => {
@@ -919,14 +920,17 @@ for (const linea of lineas) {
<div className="flex gap-2"> <div className="flex gap-2">
<Button variant="outline" onClick={() => { reset(); setDialog(true); }}><Plus className="h-4 w-4 mr-2" />Nuevo Laboratorio</Button> <Button variant="outline" onClick={() => { reset(); setDialog(true); }}><Plus className="h-4 w-4 mr-2" />Nuevo Laboratorio</Button>
<Button variant="outline" onClick={() => { setSelectedLab(lab[0] || null); setParametroEvolucion('Hematocrito'); setEvolDialog(true); }}><TrendingUp className="h-4 w-4 mr-2" />Evolución</Button> <Button variant="outline" onClick={() => { setSelectedLab(lab[0] || null); setParametroEvolucion('Hematocrito'); setEvolDialog(true); }}><TrendingUp className="h-4 w-4 mr-2" />Evolución</Button>
<Button variant="outline" onClick={() => { setImportFecha(new Date().toISOString().split('T')[0]); setImportTexto(''); setImportResultados([]); setImportObservaciones(''); setImportDialog(true); }}><FileText className="h-4 w-4 mr-2" />Importar</Button> <Button variant="outline" onClick={() => { setImportFecha(new Date().toISOString().split('T')[0]); setImportHora(new Date().toTimeString().slice(0, 5)); setImportTexto(''); setImportResultados([]); setImportObservaciones(''); setImportDialog(true); }}><FileText className="h-4 w-4 mr-2" />Importar</Button>
</div> </div>
</div> </div>
<Dialog open={dialog} onOpenChange={setDialog}> <Dialog open={dialog} onOpenChange={setDialog}>
<DialogContent className="sm:max-w-2xl max-h-[90vh] overflow-y-auto"> <DialogContent className="sm:max-w-2xl max-h-[90vh] overflow-y-auto">
<DialogHeader><DialogTitle>{edit ? 'Editar' : 'Nuevo'} Laboratorio</DialogTitle></DialogHeader> <DialogHeader><DialogTitle>{edit ? 'Editar' : 'Nuevo'} Laboratorio</DialogTitle></DialogHeader>
<div className="space-y-4"> <div className="space-y-4">
<div><Label>Fecha</Label><Input type="date" value={fecha} onChange={e => setFecha(e.target.value)} /></div> <div className="flex gap-4">
<div className="flex-1"><Label>Fecha</Label><Input type="date" value={fecha} onChange={e => setFecha(e.target.value)} /></div>
<div className="flex-1"><Label>Hora</Label><Input type="time" value={hora} onChange={e => setHora(e.target.value)} /></div>
</div>
<div className="bg-purple-50 dark:bg-purple-900/30 p-3 rounded-lg border border-purple-200 dark:border-purple-700"> <div className="bg-purple-50 dark:bg-purple-900/30 p-3 rounded-lg border border-purple-200 dark:border-purple-700">
<p className="text-sm font-bold text-purple-800 mb-3">Hemograma</p> <p className="text-sm font-bold text-purple-800 mb-3">Hemograma</p>
@@ -1062,9 +1066,15 @@ for (const linea of lineas) {
</DialogTitle> </DialogTitle>
</DialogHeader> </DialogHeader>
<div className="space-y-4"> <div className="space-y-4">
<div> <div className="flex gap-4">
<Label>Fecha del Laboratorio</Label> <div className="flex-1">
<Input type="date" value={importFecha} onChange={e => setImportFecha(e.target.value)} /> <Label>Fecha del Laboratorio</Label>
<Input type="date" value={importFecha} onChange={e => setImportFecha(e.target.value)} />
</div>
<div className="flex-1">
<Label>Hora del Laboratorio</Label>
<Input type="time" value={importHora} onChange={e => setImportHora(e.target.value)} />
</div>
</div> </div>
<div> <div>
<Label>Pegar texto del resultado de laboratorio</Label> <Label>Pegar texto del resultado de laboratorio</Label>