diff --git a/src/libs/convert/peePorCategoria.js b/src/libs/convert/peePorCategoria.js index 6249ae310449fa689aaa4b978a174f317aaa7751..f944fe4e9d8dabe8b0827a1c99ed5c6210f91184 100644 --- a/src/libs/convert/peePorCategoria.js +++ b/src/libs/convert/peePorCategoria.js @@ -45,6 +45,8 @@ module.exports = function peeCategory(id) { case 12: return 'Transtorno Desintegrativo da Infância'; case 13: - return 'Superdotado'; + return 'Altas habilidades / Superdotação'; + case 14: + return 'Transtorno do Espectro Austista (TEA)'; } }; diff --git a/src/libs/middlewares/reqQueryFields.js b/src/libs/middlewares/reqQueryFields.js index 720e84aa4a13766bdade3078909620d4080c89be..0891e1b895fa0f8075ebe5970f6cb5e4bcdc6938 100644 --- a/src/libs/middlewares/reqQueryFields.js +++ b/src/libs/middlewares/reqQueryFields.js @@ -173,11 +173,15 @@ class ReqQueryFields { } let categorias = ['', 'blindness', 'low_vision', 'deafness', 'hearing_deficiency', 'deafblindness', 'physical_disability', 'intellectual_disability', - 'multiple_disabilities', 'autism', 'asperger_syndrom', 'rett_syndrom', 'childhood_desintegrative_disorder', 'supergifted']; + 'multiple_disabilities', 'autism', 'asperger_syndrom', 'rett_syndrom', 'childhood_desintegrative_disorder', 'supergifted', 'autism_spectrum_disorder']; - if(obj.pee_por_categoria !== undefined && queryField === 'filter') - for(var cat of obj.pee_por_categoria) + if(obj.pee_por_categoria !== undefined && queryField === 'filter'){ + for(var cat of obj.pee_por_categoria){ + cat = parseInt(cat); obj[categorias[cat]] = true; + } + delete obj.pee_por_categoria; + } // Se o array existe e não está vazio fazemos a interseção diff --git a/src/libs/routes/enrollment.js b/src/libs/routes/enrollment.js index fa39a4f0a7172bdde1b000392ac52a29ffa69660..ac85866fd05e68066469272179f477e3294ba742 100644 --- a/src/libs/routes/enrollment.js +++ b/src/libs/routes/enrollment.js @@ -250,7 +250,7 @@ enrollmentApp.get('/pee', (req, res, next) => { enrollmentApp.get('/pee_por_categoria', (req, res, next) => { req.result = []; - for(let i = 1; i <= 13; ++i) { + for(let i = 1; i <= 14; ++i) { req.result.push({ id: i, name: id2str.peePorCategoria(i) @@ -717,6 +717,16 @@ rqf.addField({ type: 'boolean', field: 'autismo' } +}).addValue({ + name: 'autism_spectrum_disorder', + table: 'matricula', + tableField: 'transtorno_espectro_autista', + resultField: 'autism_spectrum_disorder', + where: { + relation: '=', + type: 'boolean', + field: 'transtorno_espectro_autista' + } }).addValue({ name: 'asperger_syndrom', table: 'matricula', @@ -767,7 +777,7 @@ rqf.addField({ type: 'boolean', field: 'possui_necessidade_especial' } -}).addValueToField({ +}).addValue({ name: 'pee_por_categoria', table: 'matricula', tableField: 'possui_necessidade_especial', @@ -777,7 +787,7 @@ rqf.addField({ type: 'boolean', field: 'possui_necessidade_especial' } -}, 'dims'); +}); enrollmentApp.get('/', rqf.parse(), (req, res, next) => { if('pee_por_categoria' in req.dims){ @@ -792,10 +802,11 @@ enrollmentApp.get('/', rqf.parse(), (req, res, next) => { .field('SUM(CASE WHEN deficiencia_intelectual = true THEN 1 ELSE 0 END)', 'Deficiência intelectual') .field('SUM(CASE WHEN deficiencia_multiplas = true THEN 1 ELSE 0 END)', 'Deficiências múltiplas') .field('SUM(CASE WHEN autismo = true THEN 1 ELSE 0 END)', 'Autismo') + .field('SUM(CASE WHEN transtorno_espectro_autista = true THEN 1 ELSE 0 END)', 'Transtorno do Espectro Autista (TEA)') .field('SUM(CASE WHEN sindrome_asperger = true THEN 1 ELSE 0 END)', 'SÃndrome de Asperger') .field('SUM(CASE WHEN sindrome_rett = true THEN 1 ELSE 0 END)', 'SÃndrome de Rett') .field('SUM(CASE WHEN transtorno_desintegrativo_da_infancia = true THEN 1 ELSE 0 END)', 'Transtorno desintegrativo da infância') - .field('SUM(CASE WHEN superdotado = true THEN 1 ELSE 0 END)', 'Superdotado') + .field('SUM(CASE WHEN superdotado = true THEN 1 ELSE 0 END)', 'Altas habilidades / Superdotação') .field('matricula.ano_censo', 'year') .from('matricula') .group('matricula.ano_censo') @@ -811,7 +822,10 @@ enrollmentApp.get('/', rqf.parse(), (req, res, next) => { .where('((matricula.tipo<=3 OR matricula.tipo IS NULL) AND (matricula.tipo_atendimento_turma IS NULL OR matricula.tipo_atendimento_turma <= 2))'); } next(); -}, rqf.build(), query, id2str.transform(false), (req, res, next) => { +}, rqf.build(), (req, res, next) => { + console.log('sql:' + req.sql.toString()); + next(); +}, query, id2str.transform(false), (req, res, next) => { if(req.pee_por_categoria === true){ let result = req.result; let result_total = [];