Agregar tabla estudiosComplementarios y migrations faltantes

This commit is contained in:
2026-04-16 02:07:06 -03:00
parent dff77dff7d
commit 599bb4278a
+33 -2
View File
@@ -121,6 +121,15 @@ db.exec(`
estado TEXT DEFAULT 'NAF/Pendiente', estado TEXT DEFAULT 'NAF/Pendiente',
observaciones TEXT observaciones TEXT
); );
CREATE TABLE IF NOT EXISTS estudiosComplementarios (
id TEXT PRIMARY KEY,
pacienteId TEXT NOT NULL,
internacionId TEXT,
fecha TEXT,
tipo TEXT,
resultado TEXT
);
`); `);
try { try {
@@ -129,6 +138,18 @@ try {
// La columna ya existe // La columna ya existe
} }
try {
db.exec("ALTER TABLE acidosbase ADD COLUMN fio2 REAL");
} catch (e) {
// La columna ya existe
}
try {
db.exec("ALTER TABLE laboratorios ADD COLUMN internacionId TEXT");
} catch (e) {
// La columna ya existe
}
const app = express(); const app = express();
app.use(cors()); app.use(cors());
app.use(express.json({ limit: '50mb' })); app.use(express.json({ limit: '50mb' }));
@@ -177,6 +198,7 @@ app.get('/api/state', (req, res) => {
laboratorios: queryAll('SELECT * FROM laboratorios').map(l => ({ ...l, resultados: typeof l.resultados === 'string' ? JSON.parse(l.resultados) : l.resultados })), laboratorios: queryAll('SELECT * FROM laboratorios').map(l => ({ ...l, resultados: typeof l.resultados === 'string' ? JSON.parse(l.resultados) : l.resultados })),
acidosBase: queryAll('SELECT * FROM acidosbase'), acidosBase: queryAll('SELECT * FROM acidosbase'),
cultivos: queryAll('SELECT * FROM cultivos'), cultivos: queryAll('SELECT * FROM cultivos'),
estudiosComplementarios: queryAll('SELECT * FROM estudiosComplementarios'),
vistaActual: 'dashboard', vistaActual: 'dashboard',
currentInternacionId: null currentInternacionId: null
}; };
@@ -189,11 +211,13 @@ app.put('/api/state', (req, res) => {
run('DELETE FROM evoluciones'); run('DELETE FROM evoluciones');
run('DELETE FROM acidosbase'); run('DELETE FROM acidosbase');
run('DELETE FROM cultivos'); run('DELETE FROM cultivos');
run('DELETE FROM laboratoriumes');
run('DELETE FROM laboratorios'); run('DELETE FROM laboratorios');
run('DELETE FROM internaciones'); run('DELETE FROM internaciones');
run('DELETE FROM camas'); run('DELETE FROM camas');
run('DELETE FROM areas'); run('DELETE FROM areas');
run('DELETE FROM pacientes'); run('DELETE FROM pacientes');
run('DELETE FROM estudiosComplementarios');
if (state.pacientes?.length) { if (state.pacientes?.length) {
const stmt = db.prepare('INSERT INTO pacientes (id, apellido, nombre, dni, fechaNacimiento, sexo, telefono, email, direccion, obraSocial, nacionalidad, medicacionHabitual, antecedentes, alergias, grupoSanguineo, historiaClinica) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'); const stmt = db.prepare('INSERT INTO pacientes (id, apellido, nombre, dni, fechaNacimiento, sexo, telefono, email, direccion, obraSocial, nacionalidad, medicacionHabitual, antecedentes, alergias, grupoSanguineo, historiaClinica) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
@@ -244,13 +268,20 @@ if (state.acidosBase?.length) {
} }
} }
if (state.cultivos?.length) { if (state.cultivos?.length) {
const stmt = db.prepare('INSERT INTO cultivos (id, pacienteId, internacionId, fechaToma, protocolo, tipoMuestra, observaciones, estado, fechaResultado, germen, sensible, resistente) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'); const stmt = db.prepare('INSERT INTO cultivos (id, pacienteId, internacionId, fechaToma, protocolo, tipoMuestra, observaciones, estado, fechaResultado, germen, sensible, resistente) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
for (const c of state.cultivos) { for (const c of state.cultivos) {
stmt.run(c.id, c.pacienteId, c.internacionId, c.fechaToma, c.protocolo, c.tipoMuestra, c.observaciones, c.estado, c.fechaResultado, c.germen, c.sensible, c.resistente); stmt.run(c.id, c.pacienteId, c.internacionId, c.fechaToma, c.protocolo, c.tipoMuestra, c.observaciones, c.estado, c.fechaResultado, c.germen, c.sensible, c.resistente);
} }
} }
if (state.estudiosComplementarios?.length) {
const stmt = db.prepare('INSERT INTO estudiosComplementarios (id, pacienteId, internacionId, fecha, tipo, resultado) VALUES (?, ?, ?, ?, ?, ?)');
for (const e of state.estudiosComplementarios) {
stmt.run(e.id, e.pacienteId, e.internacionId || null, e.fecha, e.tipo, e.resultado);
}
}
res.json({ ok: true }); res.json({ ok: true });
}); });