diff --git a/libs/log.js b/libs/log.js index 09855713bb0b3c80e85acc4b6774bcc102cdb146..419b3e4b86d5d1e5a8e17858882c905204bab079 100644 --- a/libs/log.js +++ b/libs/log.js @@ -19,7 +19,7 @@ function logger(module) { level: 'debug', label: getFilePath(module), handleException: true, - json: false, + json: true, colorize: true }) ], diff --git a/libs/routes/api.js b/libs/routes/api.js index c85949e654bc61fcd0ddc2278bb1251f7b360645..3d72a1eb9597eb77aa95702d6d4a697feb9a1d3c 100644 --- a/libs/routes/api.js +++ b/libs/routes/api.js @@ -1,4 +1,5 @@ var express = require('express') +var xml = require('xml') var router = express.Router() var libs = process.cwd() + '/libs/' @@ -125,7 +126,7 @@ router.get('/enrollments.:format?', function(req, res) { } else if (req.params.format === 'xml') { res.set('Content-Type', 'text/xml') res.send(xml({ - 'result': result.data + result: result.data })) } else { diff --git a/libs/routes/cities.js b/libs/routes/cities.js index d605c4dfbdc2662d0fefb0eac273d4fbca4d2955..e13f887b295e2e2860e8b43d8b904a0280856bf1 100644 --- a/libs/routes/cities.js +++ b/libs/routes/cities.js @@ -1,4 +1,5 @@ var express = require('express') +var xml = require('xml') var router = express.Router() var libs = process.cwd() + '/libs/' @@ -13,43 +14,83 @@ router.get('/', function(req, res) { 'SELECT * FROM municipios', true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } + else { + res.json({ + result: result.data + }) + } }) }) router.get('/:id', function(req, res) { conn.query( - 'SELECT * FROM regioes WHERE pk_municipio_id='+req.params.id, true + 'SELECT * FROM municipios WHERE pk_municipio_id='+req.params.id, true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } + else { + res.json({ + result: result.data + }) + } }) }) router.get('/ibge/:id', function(req, res) { conn.query( - 'SELECT * FROM regioes WHERE codigo_ibge='+req.params.id, true + 'SELECT * FROM municipios WHERE codigo_ibge='+req.params.id, true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } + else { + res.json({ + result: result.data + }) + } }) }) router.get('/state/:id', function(req, res) { conn.query( - 'SELECT * FROM regioes WHERE fk_estado_id='+req.params.id, true + 'SELECT * FROM municipios WHERE fk_estado_id='+req.params.id, true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } + else { + res.json({ + result: result.data + }) + } }) }) diff --git a/libs/routes/regions.js b/libs/routes/regions.js index 60352efb83484ac72037a9277a2d62c3b596fc08..360f9edfefe39681ca8f82fec3cc3dce1fe782e8 100644 --- a/libs/routes/regions.js +++ b/libs/routes/regions.js @@ -1,4 +1,5 @@ var express = require('express') +var xml = require('xml') var router = express.Router() var libs = process.cwd() + '/libs/' @@ -13,9 +14,18 @@ router.get('/', function(req, res) { 'SELECT * FROM regioes', true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } else { + res.json({ + result: result.data + }) + } }) }) @@ -25,9 +35,19 @@ router.get('/:id', function(req, res) { 'SELECT * FROM regioes WHERE pk_regiao_id='+req.params.id, true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } + else { + res.json({ + result: result.data + }) + } }) }) diff --git a/libs/routes/states.js b/libs/routes/states.js index 3c3be7b52a3dbe1405ff66372a198da3d987d32a..0f26ef60de18e857c98339300e005d1b880c84ae 100644 --- a/libs/routes/states.js +++ b/libs/routes/states.js @@ -1,4 +1,5 @@ var express = require('express') +var xml = require('xml') var router = express.Router() var libs = process.cwd() + '/libs/' @@ -13,9 +14,19 @@ router.get('/', function(req, res) { 'SELECT * FROM estados', true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } + else { + res.json({ + result: result.data + }) + } }) }) @@ -25,9 +36,19 @@ router.get('/:id', function(req, res) { 'SELECT * FROM estados WHERE pk_estado_id='+req.params.id, true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } + else { + res.json({ + result: result.data + }) + } }) }) @@ -36,9 +57,19 @@ router.get('/region/:id', function(req, res) { 'SELECT * FROM estados WHERE fk_regiao_id='+req.params.id, true ).then(function(result) { log.debug(result) - res.json({ - result: result.data - }) + if (req.query.format === 'csv') { + res.csv(result.data) + } else if (req.query.format === 'xml') { + res.set('Content-Type', 'text/xml') + res.send(xml({ + result: result.data + })) + } + else { + res.json({ + result: result.data + }) + } }) })