Skip to content
Snippets Groups Projects
Commit ee0fd06a authored by lgtg20's avatar lgtg20
Browse files

feat: update revenue conversion logic and enhance student revenue API with new filters

parent 28d06946
No related branches found
No related tags found
3 merge requests!449Homologa,!444dev -> hom,!443Issue 975
......@@ -21,18 +21,20 @@ along with simcaq-node. If not, see <https://www.gnu.org/licenses/>.
module.exports = function regionCode(id) {
switch (id) {
case 1:
return 'Receitas';
return "Nome Ente"
case 2:
return 'Matrículas Públicas';
return 'Receitas';
case 3:
return 'Matrículas Públicas Mais Conveniada';
return 'Matrículas Públicas';
case 4:
return 'Receita Aluno Ano Pública'
return 'Matrículas Públicas Mais Conveniada';
case 5:
return 'Receita Aluno Mês Pública';
return 'Receita Aluno Ano Pública'
case 6:
return 'Receita Aluno Ano Pública Mais Conveniada';
return 'Receita Aluno Mês Pública';
case 7:
return 'Receita Aluno Ano Pública Mais Conveniada';
case 8:
return 'Receita Aluno Mês Pública Mais Conveniada';
}
};
......@@ -45,8 +45,9 @@ let rqf = new ReqQueryFields();
studentRevenueApp.use(cache('15 day'));
studentRevenueApp.get('/years', (req, res, next) => {
req.sql.from('pnad_novo')
req.sql.from('receitas')
.field('DISTINCT receitas.ano', 'year')
.where('receitas.ano is not null')
next();
}, query, response('years'));
......@@ -78,23 +79,24 @@ rqf.addField({
type: 'integer',
field: 'ano'
}
}).addValue({
name: 'city',
table: 'receitas',
tableField: 'cod_ibge',
resultField: 'city',
where: {
relation: '=',
type: 'integer',
field: 'cod_ibge'
}
})
studentRevenueApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => {
if (req.query.dims && req.query.dims.includes('receitas')) {
let whereCondition = "";
let filterId;
const filters = req.query.filter.split(",");
filters.forEach((filter) => {
if (filter.includes("state") || filter.includes("city")) {
filterId = Number(filter.split(":")[1].replace(/"/g, ""));
whereCondition = `receitas.cod_ibge = ${filterId}`
}
})
req.sql.from('receitas')
.field('receitas.ano', 'year')
.field('receitas.nome_ente', 'total_nome_ente')
.field('receitas.receitas', 'total_receitas')
.field('matriculas_publica', 'total_matriculas_publica')
.field('matriculas_publicas_mais_conveniada', 'total_matriculas_publicas_mais_conveniada')
......@@ -102,6 +104,8 @@ studentRevenueApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => {
.field('receita_aluno_mes_publica', 'total_receita_aluno_mes_publica')
.field('receita_aluno_ano_publica_mais_conveniada', 'total_receita_aluno_ano_publica_mais_conveniada')
.field('receita_aluno_mes_publica_mais_conveniada', 'total_receita_aluno_mes_publica_mais_conveniada')
.where(`${whereCondition}`)
.order('receitas.cod_ibge')
}
next();
......
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