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