Browse Source

feat: GET pacientes aceita campo convenios

master
Henrique-Sousa 3 weeks ago
parent
commit
ef595151f6
3 changed files with 35 additions and 5 deletions
  1. BIN
      dbs/clinica.mv.db
  2. +6
    -0
      dbs/clinica.trace.db
  3. +29
    -5
      server/services/pacientes/get.js

BIN
dbs/clinica.mv.db View File


+ 6
- 0
dbs/clinica.trace.db View File

@ -1206,3 +1206,9 @@ LIMIT 1 [42122-240]
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1239)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1194)
at java.base/java.lang.Thread.run(Thread.java:1474)
2026-03-24 18:22:04.945282-03:00 jdbc[100]: exception
org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "[*]iselect * from paciente_convenio;"; expected "INSERT"; SQL statement:
iselect * from paciente_convenio; [42001-240]
2026-03-24 18:22:15.588159-03:00 jdbc[100]: exception
org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "convenio_paciente" not found; SQL statement:
select * from convenio_paciente; [42102-240]

+ 29
- 5
server/services/pacientes/get.js View File

@ -1,9 +1,10 @@
const nome = _req.getString("nome") ?? "";
const rg = _req.getString("rg") ?? "";
const cpf = _req.getString("cpf") ?? "";
const campos = _req.getString("campos").split(",") ?? "";
const dbRegistros = _db.query(`
SELECT uid, nome, r_g, c_p_f, data_de_nascimento, endereco, telefone
SELECT uid, nome, r_g, c_p_f, data_de_nascimento, endereco, telefone, id
FROM paciente
WHERE nome LIKE ? AND r_g LIKE ? AND c_p_f LIKE ?
`,
@ -15,16 +16,39 @@ const dbRegistros = _db.query(`
const lista = _val.list();
for (const dbRegistro of dbRegistros) {
lista.add(
_val.map()
const paciente = _val.map()
.set("uid", dbRegistro.getUID("uid"))
.set("nome", dbRegistro.getString("nome"))
.set("RG", dbRegistro.getString("r_g"))
.set("CPF", dbRegistro.getString("c_p_f"))
.set("data de nascimento", dbRegistro.getSQLDate("data_de_nascimento"))
.set("endereço", dbRegistro.getString("endereco"))
.set("telefone", dbRegistro.getString("telefone"))
);
.set("telefone", dbRegistro.getString("telefone"));
const paciente_id = dbRegistro.getInt("id");
if (campos.includes("convenios")) {
const convenios = [];
const dbPacienteConvenios = _db.form("paciente_convenio")
.where(_db.where("paciente_id").equal(paciente_id))
.all();
for (dbPacienteConvenio of dbPacienteConvenios) {
const convenio_id = dbPacienteConvenio.getInt("convenio_id");
const convenio_uid = _db.form("convenio")
.where(_db.where("id").equal(convenio_id))
.first()
.getUID("uid");
convenios.push(convenio_uid);
}
paciente.set("convenios", convenios);
}
lista.add(paciente);
}
_out.json(lista);

Loading…
Cancel
Save