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, id
|
|
FROM paciente
|
|
WHERE nome LIKE ? AND r_g LIKE ? AND c_p_f LIKE ?
|
|
`,
|
|
`%${nome}%`,
|
|
`%${rg}%`,
|
|
`%${cpf}%`
|
|
);
|
|
|
|
const lista = _val.list();
|
|
|
|
for (const dbRegistro of dbRegistros) {
|
|
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"));
|
|
|
|
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);
|