findCoordinatesFromConsumer.js
1.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
var findCoordinates = function(consumerCode, callback) {
poolPg.connect(function(err, client, done) {
if (err) {
console.log("não capaz de realizar a conexão com o banco de dados" + err);
res.status(400).send(err);
}
client.query("SET search_path TO public, sc_mbc, gw_saa", function(
err1,
result
) {
// definição do schema em que irá realizar as queries
if (err1) {
console.log("Não foi capaz de mudar o schema " + err1);
res.status(400).send(err1);
}
});
var qrySql =
"select gw_saa.connec.connec_id, \
ST_X(ST_Transform(gw_saa.connec.the_geom,4326)) as zoom_x, \
ST_Y(ST_Transform(gw_saa.connec.the_geom,4326)) as zoom_y, \
gw_saa.connec.state, gw_saa.connec.sector_id, gw_saa.connec.dma_id, gw_saa.connec.category_type \
from gw_saa.connec \
inner join gw_saa.rtc_hydrometer_x_connec \
on gw_saa.connec.connec_id = gw_saa.rtc_hydrometer_x_connec.connec_id \
where gw_saa.rtc_hydrometer_x_connec.hydrometer_id = '" +
consumerCode +
"'";
client.query(qrySql, function(err1, result) {
if (err1) {
console.log(
"não capaz de realizar a querie com o banco de dados" + err1
);
res.status(400).send(err1);
}
if (result.rowCount === 0) {
console.log("não encontrou");
} else {
centro_x = result.rows[0]["zoom_x"];
centro_y = result.rows[0]["zoom_y"];
done(); //fecha a conexão
return callback(centro_x, centro_y);
}
});
});
};
module.exports = findCoordinates;