Skip to content
Snippets Groups Projects
Commit d7885f74 authored by João Victor Tozatti Risso's avatar João Victor Tozatti Risso
Browse files

Merge routes from cities.js into city.js

parent 966ed546
No related branches found
No related tags found
1 merge request!7Refactor enrollments route to include query building
Pipeline #
var express = require('express')
var xml = require('js2xmlparser')
var router = express.Router()
var squel = require('squel')
var libs = process.cwd() + '/libs/'
var log = require(libs + 'log')(module)
var config = require(libs + 'config')
var conn = require(libs + 'db/monet')
var query = require(libs + 'middlewares/query')
function response(req, res) {
if (req.query.format === 'csv') {
res.csv(req.result.data)
} else if (req.query.format === 'xml') {
res.send(xml("result", JSON.stringify({city: req.result.data})))
}
else {
res.json({
result: req.result.data
})
}
}
router.get('/', function(req, res, next) {
req.query = squel.select().from('municipios').limit(2).toParam()
next()
}, query, response)
router.get('/:id', function(req, res, next) {
req.query = squel.select().from('municipios').where('pk_municipio_id=?', parseInt(req.params.id, 10)).toParam()
next()
}, query, response)
router.get('/state/:id', function(req, res, next) {
req.query = squel.select().from('municipios').where('fk_estado_id=?', parseInt(req.params.id, 10)).toParam()
next()
}, query, response)
module.exports = router
const express = require('express'); const express = require('express');
const xml = require('js2xmlparser');
const cityApp = express(); const cityApp = express();
const libs = `${process.cwd()}/libs`; const libs = `${process.cwd()}/libs`;
const log = require(`${libs}/log`)(module); const log = require(`${libs}/log`)(module);
const squel = require('squel');
const dbQuery = require(`${libs}/db/query_exec`); const dbQuery = require(`${libs}/db/query_exec`);
const query = require(`${libs}/middlewares/query`);
const response = require(`${libs}/middlewares/response`);
function response(req, res) { cityApp.get('/', (req, res, next) => {
if (req.query.format === 'csv') { req.query = squel.select().from('municipios').toParam();
res.csv(req.result); next();
} else if (req.query.format === 'xml') { }, query, response);
res.send(xml('result', JSON.stringify({ city: req.result })));
} else {
res.json({ result: req.result });
}
}
cityApp.get('/', (req, res) => {
const citySql = 'SELECT * FROM municipios LIMIT 5';
dbQuery(yearSql).then((result) => {
req.result = result;
return response(req, res);
}, (error) => {
log.error(`[${req.originalUrl}] SQL query error: ${error}`);
next('Internal error, request could not be satisfied at this moment. Please, try again later');
});
});
cityApp.get('/:id', (req, res) => { cityApp.get('/:id', (req, res, next) => {
const citySql = 'SELECT * FROM municipios WHERE pk_municipio_id = ?'; req.query = squel.select().from('municipios').where('pk_municipio_id = ?',
const cityId = parseInt(req.params.id, 10); parseInt(req.params.id, 10)).toParam();
dbQuery(citySql, [cityId]).then((result) => { next();
req.result = result; }, query, response);
return response(req, res);
}, (error) => {
log.error(`[${req.originalUrl}] SQL query error: ${error}`);
next('Internal error, request could not be satisfied at this moment. Please, try again later');
});
});
cityApp.get('/ibge/:id', (req, res) => { cityApp.get('/ibge/:id', (req, res, next) => {
const citySql = 'SELECT * FROM municipios WHERE codigo_ibge = ?'; const citySql = 'SELECT * FROM municipios WHERE codigo_ibge = ?';
const cityIbgeCode = req.params.id; const cityIbgeCode = req.params.id;
dbQuery(citySql, [cityIbgeCode]).then((result) => { req.query = squel.select().from('municipios').where('codigo_ibge = ?',
req.result = result; parseInt(req.params.id, 10)).toParam();
return response(req, res); next();
}, (error) => { }, query, response);
log.error(`[${req.originalUrl}] SQL query error: ${error}`);
next('Internal error, request could not be satisfied at this moment. Please, try again later'); cityApp.get('/state/:id', (req, res, next) => {
}); req.query = squel.select().from('municipios').where('fk_estado_id = ?',
}); parseInt(req.params.id, 10));
next();
cityApp.get('/state/:id', (req, res) => { }, query, response);
const citySql = 'SELECT * FROM municipios WHERE fk_estado_id = ?';
const stateId = parseInt(req.params.id, 10);
dbQuery(citySql, [stateId]).then((result) => {
req.result = result;
return response(req, res);
}, (error) => {
log.error(`[${req.originalUrl}] SQL query error: ${error}`);
next('Internal error, request could not be satisfied at this moment. Please, try again later');
});
});
module.exports = cityApp; module.exports = cityApp;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment