diff --git a/src/libs/models/user.js b/src/libs/models/user.js index 7ee47258b1951f3ae0d3228c5bbc5b402f9c8dfc..4f1618caa3c16408814f3d6390185857b8eafcc7 100644 --- a/src/libs/models/user.js +++ b/src/libs/models/user.js @@ -43,6 +43,15 @@ var UserSchema = new Schema({ course: { type: String, }, + complement: { + type: String, + }, + address: { + type: String, + }, + phone: { + type: String, + }, segment: { type: String, required: [true, 'O campo Segmento é obrigatório.'] @@ -78,6 +87,12 @@ var UserSchema = new Schema({ verified: { type: Boolean, default: false + }, + citesegment: { + type: String + }, + citerole: { + type: String } }); diff --git a/src/libs/routes/idhm.js b/src/libs/routes/idhm.js index 7d6d97de924f5863bb8e1ec934ae8b7c0aa25e82..fd3c4aab268794bd71e3c3a9a3bd6395737ab582 100644 --- a/src/libs/routes/idhm.js +++ b/src/libs/routes/idhm.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; @@ -164,42 +164,32 @@ rqf.addField({ idhmApp.get('/', rqf.parse(), (req, res, next) => { log.debug(req.sql.toParam()); - if((Object.keys(req.filter).length === 0) && (Object.keys(req.dims).length === 0)) { - req.sql.from('adh_idh_uf') - .field('adh_idh_uf.idhm', 'total') - .field('adh_idh_uf.ano_censo', 'year') - .field('adh_idh_uf.estado_id', 'state_id') - .group('adh_idh_uf.idhm') - .group('adh_idh_uf.ano_censo') - .group('adh_idh_uf.estado_id') - } else if ("state" in req.filter && !("city" in req.filter) && !("city" in req.dims)) { - req.sql.from('adh_idh_uf') - .field('adh_idh_uf.idhm', 'total') - .field('adh_idh_uf.ano_censo', 'year') - .field('adh_idh_uf.estado_id', 'state_id') - .group('adh_idh_uf.idhm') - .group('adh_idh_uf.ano_censo') - .group('adh_idh_uf.estado_id') - } else if ("city" in req.filter || "city" in req.dims) { - req.sql.from('adh_idh') - .field('adh_idh.idhm', 'total') - .field('adh_idh.ano_censo', 'year') - .field('adh_idh.municipio_id', 'city_id') - .field('adh_idh.estado_id', 'state_id') - .group('adh_idh.idhm') - .group('adh_idh.ano_censo') - .group('adh_idh.municipio_id') - .group('adh_idh.estado_id') - } else { - req.sql.from('adh_idh_uf') - .field('adh_idh_uf.idhm', 'total') - .field('adh_idh_uf.ano_censo', 'year') - .field('adh_idh_uf.estado_id', 'state_id') - .group('adh_idh_uf.idhm') - .group('adh_idh_uf.ano_censo') - .group('adh_idh_uf.estado_id') - } - next(); + if (("city" in req.dims) || ("city" in req.filter)) { + req.sql.from('adh_idh') + .field('adh_idh.idhm', 'total') + .field('adh_idh.ano_censo', 'year') + .field('adh_idh.municipio_id', 'city_id') + .field('adh_idh.estado_id', 'state_id') + .group('adh_idh.idhm') + .group('adh_idh.ano_censo') + .group('adh_idh.municipio_id') + .group('adh_idh.estado_id') + } else if (("state" in req.filter) || ("state" in req.dims)) { + req.sql.from('adh_idh_uf') + .field('adh_idh_uf.idhm', 'total') + .field('adh_idh_uf.ano_censo', 'year') + .field('adh_idh_uf.estado_id', 'state_id') + .group('adh_idh_uf.idhm') + .group('adh_idh_uf.ano_censo') + .group('adh_idh_uf.estado_id') + } else { + res.status(400); + next({ + status: 400, + message: 'Wrong/No filter specified' + }); + } + next(); }, rqf.build(), query, id2str.transform(), response('idhm')); module.exports = idhmApp; diff --git a/src/libs/routes/idhmr.js b/src/libs/routes/idhmr.js index 4bd16e9102d11beeb86f9521ca078fe7a8e3bf8f..3909f55febd4d85f2d68746548ebf405424face7 100644 --- a/src/libs/routes/idhmr.js +++ b/src/libs/routes/idhmr.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; @@ -140,43 +140,32 @@ rqf.addField({ idhmrApp.get('/', rqf.parse(), (req, res, next) => { log.debug(req.sql.toParam()); - if(typeof req.filter === 'undefined' || Object.keys(req.filter).length === 0 ) { - req.sql.from('adh_idh_uf') - .field('adh_idh_uf.idhm_r', 'total') - .field('adh_idh_uf.ano_censo', 'year') - .field('adh_idh_uf.estado_id', 'state_id') - .group('adh_idh_uf.idhm_r') - .group('adh_idh_uf.ano_censo') - .group('adh_idh_uf.estado_id') - } else if ("state" in req.filter && !("city" in req.filter) && !("city" in req.dims)) { - req.sql.from('adh_idh_uf') - .field('adh_idh_uf.idhm_r', 'total') - .field('adh_idh_uf.ano_censo', 'year') - .field('adh_idh_uf.estado_id', 'state_id') - .group('adh_idh_uf.idhm_r') - .group('adh_idh_uf.ano_censo') - .group('adh_idh_uf.estado_id') - } else if ("city" in req.filter || "city" in req.dims) { - req.sql.from('adh_idh') - .field('adh_idh.idhm_r', 'total') - .field('adh_idh.ano_censo', 'year') - .field('adh_idh.municipio_id', 'city_id') - .field('adh_idh.estado_id', 'state_id') - .group('adh_idh.idhm_r') - .group('adh_idh.ano_censo') - .group('adh_idh.municipio_id') - .group('adh_idh.estado_id') - } else { - req.sql.from('adh_idh_uf') - .field('adh_idh_uf.idhm_r', 'total') - .field('adh_idh_uf.ano_censo', 'year') - .field('adh_idh_uf.estado_id', 'state_id') - .group('adh_idh_uf.idhm_r') - .group('adh_idh_uf.ano_censo') - .group('adh_idh_uf.estado_id') - } - - next(); + if (("city" in req.dims) || ("city" in req.filter)) { + req.sql.from('adh_idh') + .field('adh_idh.idhm_r', 'total') + .field('adh_idh.ano_censo', 'year') + .field('adh_idh.municipio_id', 'city_id') + .field('adh_idh.estado_id', 'state_id') + .group('adh_idh.idhm_r') + .group('adh_idh.ano_censo') + .group('adh_idh.municipio_id') + .group('adh_idh.estado_id') + } else if (("state" in req.filter) || ("state" in req.dims)) { + req.sql.from('adh_idh_uf') + .field('adh_idh_uf.idhm_r', 'total') + .field('adh_idh_uf.ano_censo', 'year') + .field('adh_idh_uf.estado_id', 'state_id') + .group('adh_idh_uf.idhm_r') + .group('adh_idh_uf.ano_censo') + .group('adh_idh_uf.estado_id') + } else { + res.status(400); + next({ + status: 400, + message: 'Wrong/No filter specified' + }); + } + next(); }, rqf.build(),query, id2str.transform(), response('idhmr')); module.exports = idhmrApp; diff --git a/src/libs/routes/user.js b/src/libs/routes/user.js index 7d3e6fe8281d7cd1077083064e72558f0356dd31..9bdc38de32e2a544970d326ff7896e7f839c80ab 100644 --- a/src/libs/routes/user.js +++ b/src/libs/routes/user.js @@ -135,7 +135,9 @@ userApp.post('/', (req, res, next) => { state: req.body.state, city: req.body.city, receiveEmails: false || req.body.receiveEmails, - origin: req.body.origin + origin: req.body.origin, + citesegment: req.body.citesegment, + citerole: req.body.citerole }); if (typeof req.body.password === 'undefined' || !req.body.password) {