Skip to content
Snippets Groups Projects
Commit e9be68c7 authored by Fernando Gbur dos Santos's avatar Fernando Gbur dos Santos
Browse files

Merge branch 'fix_despesas' into 'development'

[fix] correções apontadas pelo LDE para Despesas em educação básica

See merge request !488
parents 3d16b4be 537bdef2
No related branches found
No related tags found
4 merge requests!501[hotfix] capital filter working for superior education conclusion tax...,!499[hotfix] capital filter working for superior education conclusion tax...,!489dev -> hom,!488[fix] correções apontadas pelo LDE para Despesas em educação básica
......@@ -78,6 +78,7 @@ function aggregateData(req, res, next) {
let currentAggregateField;
let currentNonAggregateField;
console.log("data pre aggregate" ,req.result)
// Verifica se o filtro passado está presente nos filtros agregados
fields.forEach(field => {if (aggregateFields.includes(field)) currentAggregateField = field; else currentNonAggregateField = field});
if (currentAggregateField) {
......@@ -109,6 +110,7 @@ function aggregateData(req, res, next) {
req.result = newResult;
}
}
console.log("data pos aggregate" ,req.result)
next();
}
......
......@@ -51,6 +51,14 @@ ExpensesApp.get('/years', (req, res, next) => {
next();
}, query, response('years'))
ExpensesApp.get('/type', (req, res, next) => {
req.result = []
req.result.push({ id: 1, name: "Rede Estadual" });
req.result.push({ id: 2, name: "Rede Municipal" });
next();
}, response('type'));
// rqf.addValue({
// name: 'location',
// table: 'despesas',
......@@ -111,7 +119,8 @@ rqf.addField({
ExpensesApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => {
if (req.query.dims && req.query.dims.includes('despesas')) {
let obj = {}
let typeFilter = false;
let whereCondition = req.query.filter.includes("region") ? "" : "despesas.cod_ibge = 0";
let filterId;
const filters = req.query.filter.split(",");
......@@ -122,22 +131,32 @@ ExpensesApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => {
}
})
if (req.query.filter) {
const jsonString = `{${req.query.filter.replace(/(\w+):/g, '"$1":')}}`;
obj = JSON.parse(jsonString);
if (obj.type) {
if (obj.type.includes("1") && !obj.type.includes("2")) {
whereCondition = "despesas.cod_ibge >= 11 and despesas.cod_ibge <= 53"
}
else if (obj.type.includes("2") && !obj.type.includes("1")) {
whereCondition = "despesas.cod_ibge > 53"
}
typeFilter = true;
}
}
if (!typeFilter || (typeFilter && (!obj.state && !obj.city && !obj.region))) {
req.sql.from('despesas')
.field('despesas.ano_censo', 'year')
.field('despesas.ano_censo', 'total_ano')
.field('despesas.nome_ente', 'total_nome_ente')
.field('round(despesas.despesas,2)', 'total_despesas')
.field('matriculas_publica', 'total_matriculas_publica')
.field('matriculas_publicas_mais_conveniada', 'total_matriculas_publicas_mais_conveniada')
.field('round(gasto_aluno_ano_publica,2)', 'total_gasto_aluno_ano_publica')
.field('round(gasto_aluno_mes_publica,2)', 'total_gasto_aluno_mes_publica')
.field('round(gasto_aluno_ano_publica_mais_conveniada,2)', 'total_gasto_aluno_ano_publica_mais_conveniada')
.field('round(gasto_aluno_mes_publica_mais_conveniada,2)', 'total_gasto_aluno_mes_publica_mais_conveniada')
.field('round(despesas.despesas,2)', 'total')
.where(`${whereCondition}`)
.order('despesas.ano_censo')
}
next();
}, query, aggregateData, id2str.transform(false), response('expenses'));
}, query, id2str.transform(false), response('expenses'));
module.exports = ExpensesApp;
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment