diff --git a/src/libs/routes/api.js b/src/libs/routes/api.js index 609a2ad326a6dbd8609b3c68923eee61263f8993..43fec48396eb4731d4d4e112b35aa4c617955ead 100644 --- a/src/libs/routes/api.js +++ b/src/libs/routes/api.js @@ -44,6 +44,8 @@ const oauth2 = require(`${libs}/middlewares/oauth2`); const verifyToken = require(`${libs}/routes/verifyToken`); +const educationYears = require(`${libs}/routes/educationYears`); + api.get('/', (req, res) => { res.json({ msg: 'SimCAQ API is running' }); }); @@ -68,5 +70,6 @@ api.use('/population', population); api.use('/idhml', idhml); api.use('/auth/token', oauth2.token); api.use('/verify', verifyToken); +api.use('/education_years', educationYears); module.exports = api; diff --git a/src/libs/routes/educationYears.js b/src/libs/routes/educationYears.js new file mode 100644 index 0000000000000000000000000000000000000000..0d103883f53fc53dbd8770fa983dc5fe568564dd --- /dev/null +++ b/src/libs/routes/educationYears.js @@ -0,0 +1,46 @@ +const express = require('express'); + +const educationYearsApp = express.Router(); + +const libs = `${process.cwd()}/libs`; + +const log = require(`${libs}/log`)(module); + +const response = require(`${libs}/middlewares/response`); + +const config = require(`${libs}/config`); + +const id2str = require(`${libs}/middlewares/id2str`); + +const cache = require('apicache').options({ debug: config.debug, statusCodes: {include: [200]} }).middleware; + +educationYearsApp.use(cache('15 day')); + +educationYearsApp.get('/', (req, res, next) => { + req.result = []; + for(let i = 1; i <= 7; ++i) { + let edLvlShort = { + id: i, + name: id2str.educationLevelShort(i), + schoolYears: [] + }; + + for(let j = i*10; j <= (i*10 + 9); ++j) { + + let schoolYear = { + id: j, + name: id2str.schoolYear(j) + }; + + if(schoolYear.name !== id2str.schoolYear(99)) { + edLvlShort.schoolYears.push(schoolYear); + } + } + if(edLvlShort.name !== id2str.schoolYear(99)) { + req.result.push(edLvlShort); + } + } + next(); +}, response('educationYears')); + +module.exports = educationYearsApp; diff --git a/src/libs/routes/pibpercapita.js b/src/libs/routes/pibpercapita.js index d8b7f37b1f0338b0e2a88875f7f90ae20f3c371b..868d8c184d99c916833e7c0f4cad1d549143cc9a 100644 --- a/src/libs/routes/pibpercapita.js +++ b/src/libs/routes/pibpercapita.js @@ -16,7 +16,7 @@ const ReqQueryFields = require(`${libs}/middlewares/reqQueryFields`); const id2str = require(`${libs}/middlewares/id2str`); -const config = require(`${libs}/config`); +const config = require(`${libs}/config`); const cache = require('apicache').options({ debug: config.debug, statusCodes: {include: [200]} }).middleware; @@ -59,8 +59,8 @@ rqf.addField({ }).addValue({ name: 'city', table: 'municipio', - tableField: 'nome', - resultField: 'city_name', + tableField: ['nome', 'id'], + resultField: ['city_name', 'city_id'], where: { relation: '=', type: 'integer', diff --git a/src/libs/routes/population.js b/src/libs/routes/population.js index 4c90963a60fb28ec5e7732ba93e68a67a4c7224d..c362941be6a1f07c129e64eaa60f104423a714d0 100644 --- a/src/libs/routes/population.js +++ b/src/libs/routes/population.js @@ -16,7 +16,7 @@ const ReqQueryFields = require(`${libs}/middlewares/reqQueryFields`); const id2str = require(`${libs}/middlewares/id2str`); -const config = require(`${libs}/config`); +const config = require(`${libs}/config`); const cache = require('apicache').options({ debug: config.debug, statusCodes: {include: [200]} }).middleware; @@ -61,8 +61,8 @@ rqf.addField({ }).addValue({ name: 'city', table: 'municipio', - tableField: 'nome', - resultField: 'city_name', + tableField: ['nome', 'id'], + resultField: ['city_name', 'city_id'], where: { relation: '=', type: 'integer',