From 20d265cf77ca5955072572f11b3dea9104475b48 Mon Sep 17 00:00:00 2001 From: godp21 <godp21@inf.ufpr.br> Date: Wed, 23 Mar 2022 09:32:20 -0300 Subject: [PATCH] added enrollment_situation sub-route on universityEnrollment route --- src/libs/routes/universityEnrollment.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/libs/routes/universityEnrollment.js b/src/libs/routes/universityEnrollment.js index bc51ee85..fb3e2e1f 100644 --- a/src/libs/routes/universityEnrollment.js +++ b/src/libs/routes/universityEnrollment.js @@ -760,3 +760,23 @@ universityEnrollmentApp.get('/enter_situation', rqf.parse(), (req, res, next) => next(); }, id2str.transform(), response('enterSituation')); module.exports = universityEnrollmentApp; +universityEnrollmentApp.get('/enrollment_situation', rqf.parse(), (req, res, next) => { + req.sql.from('localoferta_ens_superior_matricula') + .field('SUM(CASE WHEN localoferta_ens_superior_matricula.cod_aluno_situacao=2 AND localoferta_ens_superior_matricula.ingressante=1 THEN 1 ELSE 0 END)', 'ingressante') + .field('SUM(CASE WHEN localoferta_ens_superior_matricula.cod_aluno_situacao=2 AND localoferta_ens_superior_matricula.ingressante=0 AND localoferta_ens_superior_matricula.concluinte=0 THEN 1 ELSE 0 END)', 'cursando') + .field('SUM(localoferta_ens_superior_matricula.concluinte)', 'concluintes') + .field('SUM(CASE WHEN (localoferta_ens_superior_matricula.concluinte=1) OR (localoferta_ens_superior_matricula.cod_aluno_situacao = 2 and localoferta_ens_superior_matricula.ingressante = 0) OR (localoferta_ens_superior_matricula.cod_aluno_situacao = 2 and localoferta_ens_superior_matricula.ingressante = 1) THEN 1 ELSE 0 END)', 'total') + .field('localoferta_ens_superior_matricula.ano_censo') + .where('localoferta_ens_superior_matricula.cod_nivel_academico=1') + .where('localoferta_ens_superior_matricula.cod_grau_academico=2 OR localoferta_ens_superior_matricula.cod_grau_academico=4') + .group('localoferta_ens_superior_matricula.ano_censo') + .order('localoferta_ens_superior_matricula.ano_censo') + next() +}, rqf.build(), (req, res, next) => {console.log(req.sql.toString()); next()}, query, (req, res, next) => { + for (var res of req.result){ + res.ingressante = Number(res.ingressante); + res.cursando = Number(res.cursando); + res.concluintes = Number(res.concluintes); + } + next(); +}, id2str.transform(), response('enrollmentSituation')); \ No newline at end of file -- GitLab