Skip to content
Snippets Groups Projects
Commit 3b38d9d0 authored by Fernando Erd's avatar Fernando Erd
Browse files

Fix Employees

parent e4ea3a96
Branches
Tags
1 merge request!257V1.14.0
Pipeline #23138 failed
...@@ -468,6 +468,7 @@ function matchQueries(queryTotal, queryPartial) { ...@@ -468,6 +468,7 @@ function matchQueries(queryTotal, queryPartial) {
employeesApp.get('/', rqfSchool.parse(), (req, res, next) => { employeesApp.get('/', rqfSchool.parse(), (req, res, next) => {
req.allEmployees = {} req.allEmployees = {}
req.allTeacher = {} req.allTeacher = {}
req.schoolTable = {}
if ("school" in req.filter) { if ("school" in req.filter) {
req.sql.field('SUM(escola.num_funcionarios)', 'total') req.sql.field('SUM(escola.num_funcionarios)', 'total')
...@@ -476,9 +477,8 @@ employeesApp.get('/', rqfSchool.parse(), (req, res, next) => { ...@@ -476,9 +477,8 @@ employeesApp.get('/', rqfSchool.parse(), (req, res, next) => {
.from('escola') .from('escola')
.group('escola.ano_censo') .group('escola.ano_censo')
.order('escola.ano_censo') .order('escola.ano_censo')
.where('(escola.situacao_de_funcionamento = 1) AND (escola.ensino_regular = 1 OR escola.ensino_eja = 1 OR escola.educacao_profissional = 1) AND (dependencia_adm_id = 2 OR dependencia_adm_id = 3 OR dependencia_adm_id = 4) AND (escola.id=' + req.filter.school + ')'); .where('(escola.situacao_funcionamento_pareada = 1) AND (escola.ensino_regular = 1 OR escola.ensino_eja = 1 OR escola.educacao_profissional = 1) AND (dependencia_adm_id = 2 OR dependencia_adm_id = 3 OR dependencia_adm_id = 4) AND (escola.id=' + req.filter.school + ')');
delete req.filter.school; delete req.filter.school;
next();
} else { } else {
req.sql.field('SUM(escola.num_funcionarios)', 'total') req.sql.field('SUM(escola.num_funcionarios)', 'total')
.field("'Brasil'", 'name') .field("'Brasil'", 'name')
...@@ -486,14 +486,14 @@ employeesApp.get('/', rqfSchool.parse(), (req, res, next) => { ...@@ -486,14 +486,14 @@ employeesApp.get('/', rqfSchool.parse(), (req, res, next) => {
.from('escola') .from('escola')
.group('escola.ano_censo') .group('escola.ano_censo')
.order('escola.ano_censo') .order('escola.ano_censo')
.where('(escola.situacao_de_funcionamento = 1) AND (escola.ensino_regular = 1 OR escola.ensino_eja = 1 OR escola.educacao_profissional = 1) AND (dependencia_adm_id = 2 OR dependencia_adm_id = 3 OR dependencia_adm_id = 4)'); .where('(escola.situacao_funcionamento_pareada = 1) AND (escola.ensino_regular = 1 OR escola.ensino_eja = 1 OR escola.educacao_profissional = 1) AND (dependencia_adm_id = 2 OR dependencia_adm_id = 3 OR dependencia_adm_id = 4)');
next();
} }
next();
}, rqfSchool.build(), query, rqfSchool.parse(), id2str.transform(), (req, res, next) => { }, rqfSchool.build(), query, rqfSchool.parse(), id2str.transform(), (req, res, next) => {
req.allEmployees = req.result; req.allEmployees = req.result;
req.resetSql();
req.resetSql();
if ("school" in req.filter) { if ("school" in req.filter) {
req.sql.field('SUM(docente_por_escola.total_professores)', 'total') req.sql.field('SUM(docente_por_escola.total_professores)', 'total')
.field("'Brasil'", 'name') .field("'Brasil'", 'name')
...@@ -524,11 +524,33 @@ employeesApp.get('/', rqfSchool.parse(), (req, res, next) => { ...@@ -524,11 +524,33 @@ employeesApp.get('/', rqfSchool.parse(), (req, res, next) => {
} }
next(); next();
}, rqfSchool.build(), query, id2str.transform(), (req, res, next) => { }, rqfSchool.build(), query, rqfSchool.parse(), id2str.transform(), (req, res, next) => {
req.allTeacher = req.result; req.allTeacher = req.result;
req.resetSql();
req.sql.field('SUM(CASE WHEN escola.qt_prof_admin = 88888 THEN 0 ELSE escola.qt_prof_admin END) + SUM(CASE WHEN escola.qtde_prof_servicos_gerais = 88888 THEN 0 ELSE escola.qtde_prof_servicos_gerais END) + SUM(CASE WHEN escola.qtde_prof_bibliotecario = 88888 THEN 0 ELSE escola.qtde_prof_bibliotecario END) + SUM(CASE WHEN escola.qtde_prof_saude = 88888 THEN 0 ELSE escola.qtde_prof_saude END) + SUM(CASE WHEN escola.qtde_prof_coordenador = 88888 THEN 0 ELSE escola.qtde_prof_coordenador END) + SUM(CASE WHEN escola.qtde_prof_fono = 88888 THEN 0 ELSE escola.qtde_prof_fono END) + SUM(CASE WHEN escola.qtde_prof_nutricionista = 88888 THEN 0 ELSE escola.qtde_prof_nutricionista END) + SUM(CASE WHEN escola.qtde_prof_psicologo = 88888 THEN 0 ELSE escola.qtde_prof_psicologo END) + SUM(CASE WHEN escola.qtde_prof_alimentacao = 88888 THEN 0 ELSE escola.qtde_prof_alimentacao END) + SUM(CASE WHEN escola.qtde_prof_pedagogia = 88888 THEN 0 ELSE escola.qtde_prof_pedagogia END) + SUM(CASE WHEN escola.qtde_prof_secretario = 88888 THEN 0 ELSE escola.qtde_prof_secretario END) + SUM(CASE WHEN escola.qtde_prof_seguranca = 88888 THEN 0 ELSE escola.qtde_prof_seguranca END) + SUM(CASE WHEN escola.qtde_prof_monitores = 88888 THEN 0 ELSE escola.qtde_prof_monitores END)', 'total')
.field("'Brasil'", 'name')
.field('escola.ano_censo', 'year')
.from('escola')
.group('escola.ano_censo')
.order('escola.ano_censo')
.where('(escola.situacao_funcionamento_pareada = 1) AND (escola.ensino_regular = 1 OR escola.ensino_eja = 1 OR escola.educacao_profissional = 1) AND (escola.dependencia_adm_id = 2 OR escola.dependencia_adm_id = 3 OR escola.dependencia_adm_id = 4) and ano_censo >= 2019');
next();
}, rqfSchool.build(), query, id2str.transform(), (req, res, next) => {
req.schoolTable = req.result;
console.log(req.schoolTable)
console.log("AAA");
if (req.filter.min_year <= 2018 && req.filter.max_year <= 2018) {
let aux_employees = matchQueries(req.allEmployees, req.allTeacher); let aux_employees = matchQueries(req.allEmployees, req.allTeacher);
req.result = aux_employees; req.result = aux_employees;
} else if (req.filter.min_year >= 2019 && req.filter.max_year >= 2019) {
req.result = req.schoolTable;
} else if (req.filter.min_year <= 2018 && req.filter.max_year >= 2019) {
let aux_employees = matchQueries(req.allEmployees, req.allTeacher);
req.result = aux_employees.concat(req.schoolTable);
}
next(); next();
}, response('employees')); }, response('employees'));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment