From 5f8ac5715ea9e1e99c322153e2967c9863e96609 Mon Sep 17 00:00:00 2001
From: Lewis <lgtg20@inf.ufpr.br>
Date: Wed, 4 Sep 2024 19:08:44 -0300
Subject: [PATCH] Bug fix region for federative entity

---
 src/libs/routes_v1/federativeEntity.js | 26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

diff --git a/src/libs/routes_v1/federativeEntity.js b/src/libs/routes_v1/federativeEntity.js
index 9de0dfbf..fb200e65 100644
--- a/src/libs/routes_v1/federativeEntity.js
+++ b/src/libs/routes_v1/federativeEntity.js
@@ -312,8 +312,8 @@ rqf.addField({
     },
     join: {
         primary: 'id',
-        foreign: 'estado_id',
-        foreignTable: 'escola'
+        foreign: 'cod_uf',
+        foreignTable: 'docentes_sinopse'
     }
 }, 'dims').addValueToField({
     name: 'state',
@@ -327,8 +327,8 @@ rqf.addField({
     },
     join: {
         primary: 'id',
-        foreign: 'estado_id',
-        foreignTable: 'escola'
+        foreign: 'cod_uf',
+        foreignTable: 'docentes_sinopse'
     }
 }, 'filter').addValueToField({
     name: 'city',
@@ -559,7 +559,15 @@ federativeEntityApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => {
             .order('docentes_sinopse.ano_censo')
             .where('docentes_sinopse.cod_reg = 0');
     }
-    else {
+    else if (req.query.dims && req.query.dims.includes('state')) {
+        req.sql.from('docentes_sinopse')
+        .field('SUM(docentes_sinopse.num_doc_ed_bas_total)', 'total')
+        .field('docentes_sinopse.ano_censo', 'year')
+        .group('docentes_sinopse.ano_censo')
+        .order('docentes_sinopse.ano_censo')
+        .where('docentes_sinopse.cod_mun = 0');
+    }
+    else if (req.query.dims && req.query.dims.includes('region')) {
         req.sql.from('docentes_sinopse')
         .field('SUM(docentes_sinopse.num_doc_ed_bas_total)', 'total')
         .field('docentes_sinopse.ano_censo', 'year')
@@ -567,6 +575,14 @@ federativeEntityApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => {
         .order('docentes_sinopse.ano_censo')
         .where('docentes_sinopse.cod_uf = 0');
     }
+    else {
+        req.sql.from('docentes_sinopse')
+        .field('SUM(docentes_sinopse.num_doc_ed_bas_total)', 'total')
+        .field('docentes_sinopse.ano_censo', 'year')
+        .group('docentes_sinopse.ano_censo')
+        .order('docentes_sinopse.ano_censo')
+        .where('docentes_sinopse.cod_reg = 0');
+    }
     next();
 }, query, aggregateData, id2str.transform(false), response('federative_entity'));
 
-- 
GitLab