Fix: Eliminada columna fechaIngreso de pacientes, agregadas nuevas columnas

This commit is contained in:
Santiago Lavaise
2026-04-14 01:58:10 -03:00
parent 7705e4147e
commit bb73c6d8fb
4 changed files with 52 additions and 4 deletions
+8 -3
View File
@@ -27,7 +27,12 @@ db.exec(`
telefono TEXT,
email TEXT,
direccion TEXT,
fechaIngreso TEXT
obraSocial TEXT,
nacionalidad TEXT,
medicacionHabitual TEXT,
antecedentes TEXT,
alergias TEXT,
grupoSanguineo TEXT
);
CREATE TABLE IF NOT EXISTS areas (
@@ -182,9 +187,9 @@ app.put('/api/state', (req, res) => {
run('DELETE FROM pacientes');
if (state.pacientes?.length) {
const stmt = db.prepare('INSERT INTO pacientes (id, apellido, nombre, dni, fechaNacimiento, sexo, telefono, email, direccion, fechaIngreso) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
const stmt = db.prepare('INSERT INTO pacientes (id, apellido, nombre, dni, fechaNacimiento, sexo, telefono, email, direccion, obraSocial, nacionalidad, medicacionHabitual, antecedentes, alergias, grupoSanguineo) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
for (const p of state.pacientes) {
stmt.run(p.id, p.apellido, p.nombre, p.dni, p.fechaNacimiento, p.sexo, p.telefono, p.email, p.direccion, p.fechaIngreso);
stmt.run(p.id, p.apellido, p.nombre, p.dni, p.fechaNacimiento || null, p.sexo || null, p.telefono || null, p.email || null, p.direccion || null, p.obraSocial || null, p.nacionalidad || null, p.medicacionHabitual || null, p.antecedentes || null, p.alergias || null, p.grupoSanguineo || null);
}
}
+2
View File
@@ -13,6 +13,8 @@ interface NuevoIngresoProps {
camas: Cama[];
areas: Area[];
onIniciarInternacion: (internacion: Omit<Internacion, 'id' | 'activa'>) => void;
onAgregarPaciente?: (paciente: Omit<Paciente, 'id'>) => void;
onActualizarPaciente?: (id: string, datos: Partial<Paciente>) => void;
onVolver: () => void;
getAreaName: (areaId: string | undefined) => string;
}
+37
View File
@@ -41,6 +41,9 @@ export function Pacientes({
const [grupoSanguineo, setGrupoSanguineo] = useState('');
const [alergias, setAlergias] = useState('');
const [antecedentes, setAntecedentes] = useState('');
const [obraSocial, setObraSocial] = useState('');
const [nacionalidad, setNacionalidad] = useState('');
const [medicacionHabitual, setMedicacionHabitual] = useState('');
const resetFormulario = () => {
setNombre('');
@@ -54,6 +57,9 @@ export function Pacientes({
setGrupoSanguineo('');
setAlergias('');
setAntecedentes('');
setObraSocial('');
setNacionalidad('');
setMedicacionHabitual('');
setPacienteEditando(null);
};
@@ -70,6 +76,9 @@ export function Pacientes({
setGrupoSanguineo(paciente.grupoSanguineo || '');
setAlergias(paciente.alergias || '');
setAntecedentes(paciente.antecedentes || '');
setObraSocial(paciente.obraSocial || '');
setNacionalidad(paciente.nacionalidad || '');
setMedicacionHabitual(paciente.medicacionHabitual || '');
setDialogoAbierto(true);
};
@@ -88,6 +97,9 @@ export function Pacientes({
grupoSanguineo: grupoSanguineo || undefined,
alergias: alergias || undefined,
antecedentes: antecedentes || undefined,
obraSocial: obraSocial || undefined,
nacionalidad: nacionalidad || undefined,
medicacionHabitual: medicacionHabitual || undefined,
};
if (pacienteEditando) {
@@ -249,6 +261,31 @@ export function Pacientes({
placeholder="Antecedentes médicos relevantes..."
/>
</div>
<div>
<Label>Obra Social</Label>
<Input
value={obraSocial}
onChange={(e) => setObraSocial(e.target.value)}
placeholder="Obra social del paciente"
/>
</div>
<div>
<Label>Nacionalidad</Label>
<Input
value={nacionalidad}
onChange={(e) => setNacionalidad(e.target.value)}
placeholder="Nacionalidad del paciente"
/>
</div>
<div className="sm:col-span-2">
<Label>Medicación Habitual</Label>
<textarea
className="w-full p-2 border rounded-md text-sm min-h-[60px]"
value={medicacionHabitual}
onChange={(e) => setMedicacionHabitual(e.target.value)}
placeholder="Medicación habitual del paciente..."
/>
</div>
</div>
<div className="flex justify-end gap-2 mt-4">
<Button variant="outline" onClick={() => {
+5 -1
View File
@@ -13,9 +13,13 @@ export interface Paciente {
grupoSanguineo?: string;
alergias?: string;
antecedentes?: string;
fechaRegistro: string;
fechaRegistro?: string;
obraSocial?: string;
nacionalidad?: string;
medicacionHabitual?: string;
}
export interface Cama {
id: string;
numero: string;