diff --git a/src/libs/routes/city.js b/src/libs/routes/city.js index ef28500f275b237c9be2d4ec3a860da7d9e960cf..2ebc44d28c80fba86042b5ee0aafcd074c3b25a5 100644 --- a/src/libs/routes/city.js +++ b/src/libs/routes/city.js @@ -82,7 +82,25 @@ rqf.addField({ type: 'string', field: 'nome' } -}, 'search');; +}, 'search').addValue({ + name: 'mesoregion', + table: 'municipio', + tableField: 'mesorregiao_id', + where: { + relation: '=', + type: 'integer', + field: 'mesorregiao_id' + } +}).addValue({ + name: 'microregion', + table: 'municipio', + tableField: 'microrregiao_id', + where: { + relation: '=', + type: 'integer', + field: 'microrregiao_id' + } +}); // Return all cities cityApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => { @@ -97,4 +115,27 @@ cityApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => { next(); }, query, response('city')); +cityApp.get('/microregion', rqf.parse(), rqf.build(), (req, res, next) => { + req.sql.from('municipio') + .field('municipio.estado_id', 'state_id') + .field('municipio.microrregiao_id', 'microregion_id') + .field('municipio.nome_microrregiao', 'microregion_name') + .group('municipio.estado_id') + .group('municipio.microrregiao_id') + .group('municipio.nome_microrregiao') + next(); +}, query, response('city/microregion')); + +cityApp.get('/mesoregion', rqf.parse(), rqf.build(), (req, res, next) => { + req.sql.from('municipio') + .field('municipio.estado_id', 'state_id') + .field('municipio.mesorregiao_id', 'mesoregion_id') + .field('municipio.nome_mesorregiao', 'mesoregion_name') + .group('municipio.nome_mesorregiao') + .group('municipio.mesorregiao_id') + .group('municipio.estado_id') + next(); +}, query, response('city/mesoregion')); + + module.exports = cityApp;