diff --git a/src/libs/app.js b/src/libs/app.js index 8022c769b3557c3029b11edf46afe1235a596fcf..bf097510dce67ddea22b2eee0c61c974b0881cd5 100644 --- a/src/libs/app.js +++ b/src/libs/app.js @@ -4,6 +4,7 @@ const bodyParser = require('body-parser'); const methodOverride = require('method-override'); const cors = require('cors'); const compression = require('compression'); +const squel = require('squel'); const log = require('./log')(module); @@ -27,6 +28,10 @@ app.use(cors()); app.use(methodOverride()); app.use(cache('1 day')); app.use(compression(9)); +// Middleware tha adds the squel object to req +app.use((req, res, next) => { + req.sql = squel.select(); +}); app.use(api); // catch 404 and forward to error handler diff --git a/src/libs/middlewares/query.js b/src/libs/middlewares/query.js index 74a0c505cf02285dde3a35c0d0fc6365b8b4ce86..4020631fce90720e709e72beab844738b559bac9 100644 --- a/src/libs/middlewares/query.js +++ b/src/libs/middlewares/query.js @@ -9,8 +9,9 @@ const execQuery = require(`${libs}/db/query_exec`); * @param {Function} next [description] */ function query(req, res, next) { - log.debug(req.sql); - execQuery(req.sql.text, req.sql.values).then((result) => { + let sql = req.sql.toParam(); + log.debug(sql); + execQuery(sql.text, sql.values).then((result) => { log.debug(result); req.result = result; next(); diff --git a/src/libs/routes/city.js b/src/libs/routes/city.js index 030aa3cecda6c538a45d12543aa6d9449e685937..a849bf8da91bd7920a1cf3f3c3c30902fb593eb1 100644 --- a/src/libs/routes/city.js +++ b/src/libs/routes/city.js @@ -11,25 +11,25 @@ const query = require(`${libs}/middlewares/query`); const response = require(`${libs}/middlewares/response`); cityApp.get('/', (req, res, next) => { - req.sql = squel.select().from('municipios').toParam(); + req.sql.from('municipios'); next(); }, query, response('city')); cityApp.get('/:id', (req, res, next) => { - req.sql = squel.select().from('municipios').where('pk_municipio_id = ?', - parseInt(req.params.id, 10)).toParam(); + req.sql.from('municipios') + .where('pk_municipio_id = ?', parseInt(req.params.id, 10)); next(); }, query, response('city')); cityApp.get('/ibge/:id', (req, res, next) => { - req.sql = squel.select().from('municipios').where('codigo_ibge = ?', - req.params.id).toParam(); + req.sql.from('municipios') + .where('codigo_ibge = ?', req.params.id); next(); }, query, response('city')); cityApp.get('/state/:id', (req, res, next) => { - req.sql = squel.select().from('municipios').where('fk_estado_id = ?', - parseInt(req.params.id, 10)).toParam(); + req.sql.from('municipios') + .where('fk_estado_id = ?', parseInt(req.params.id, 10)); next(); }, query, response('city')); diff --git a/src/libs/routes/region.js b/src/libs/routes/region.js index 754cd6164725bebf8c5d6cfb387b3f0656eb615b..1492af612dcdf8e746967264ac8127f1252a0616 100644 --- a/src/libs/routes/region.js +++ b/src/libs/routes/region.js @@ -11,13 +11,13 @@ const query = require(`${libs}/middlewares/query`); const response = require(`${libs}/middlewares/response`); regionApp.get('/', (req, res, next) => { - req.sql = squel.select().from('regioes').toParam(); + req.sql.from('regioes'); next(); }, query, response('region')); regionApp.get('/:id', (req, res, next) => { - req.sql = squel.select().from('regioes').where('pk_regiao_id = ?', - parseInt(req.params.id, 10)).toParam(); + req.sql.from('regioes') + .where('pk_regiao_id = ?', parseInt(req.params.id, 10)); next(); }, query, response('region')); diff --git a/src/libs/routes/school.js b/src/libs/routes/school.js index bf3ee4fb1ec97ad326f68f4d536d27776ad64531..004e2f025c5e8ed7b5822970d36f40da6b4c1529 100644 --- a/src/libs/routes/school.js +++ b/src/libs/routes/school.js @@ -22,40 +22,35 @@ const response = require(`${libs}/middlewares/response`); // .field('nome_entidade', 'name') // .field('ano_censo', 'year') // .field('fk_cod_estado') -// .field('fk_cod_municipio') -// .toParam(); +// .field('fk_cod_municipio'); // next(); // }, query, response('school')); schoolApp.get('/:id', (req, res, next) => { - req.sql = squel.select().from('escolas').where('pk_escola_id = ?', - parseInt(req.params.id, 10)).toParam(); + req.sql.from('escolas') + .where('pk_escola_id = ?', parseInt(req.params.id, 10)); next(); }, query, response('school')); schoolApp.get('/state/:id', (req, res, next) => { - req.sql = squel.select().from('escolas') + req.sql.from('escolas') .field('pk_escola_id') .field('nome_entidade', 'name') .field('ano_censo', 'year') .field('fk_cod_estado') .field('fk_cod_municipio') - .where('fk_cod_estado = ?', - parseInt(req.params.id, 10)) - .toParam(); + .where('fk_cod_estado = ?', parseInt(req.params.id, 10)); next(); }, query, response('school')); schoolApp.get('/city/:id', (req, res, next) => { - req.sql = squel.select().from('escolas') + req.sql.from('escolas') .field('pk_escola_id') .field('nome_entidade', 'name') .field('ano_censo', 'year') .field('fk_cod_estado') .field('fk_cod_municipio') - .where('fk_cod_municipio = ?', - parseInt(req.params.id, 10)) - .toParam(); + .where('fk_cod_municipio = ?', parseInt(req.params.id, 10)); next(); }, query, response('school')); diff --git a/src/libs/routes/state.js b/src/libs/routes/state.js index 637149f1a9b9db0fb90a7ccdfaffb4381c406152..334873973dcf2b26fb8b78954586850215bf96d7 100644 --- a/src/libs/routes/state.js +++ b/src/libs/routes/state.js @@ -11,19 +11,19 @@ const query = require(`${libs}/middlewares/query`); const response = require(`${libs}/middlewares/response`); stateApp.get('/', (req, res, next) => { - req.sql = squel.select().from('estados').toParam(); + req.sql.from('estados'); next(); }, query, response('state')); stateApp.get('/:id', (req, res, next) => { - req.sql = squel.select().from('estados').where('pk_estado_id = ?', - parseInt(req.params.id, 10)).toParam(); + req.sql.from('estados') + .where('pk_estado_id = ?', parseInt(req.params.id, 10)); next(); }, query, response('state')); stateApp.get('/region/:id', (req, res, next) => { - req.sql = squel.select().from('estados').where('fk_regiao_id = ?', - parseInt(req.params.id, 10)).toParam(); + req.sql.from('estados') + .where('fk_regiao_id = ?', parseInt(req.params.id, 10)); next(); }, query, response('state'));