Skip to content
Snippets Groups Projects
Select Git revision
  • teachers-ies
  • homologa protected
  • development protected
  • instruction_level_fix2
  • enrollment_rate
  • master default protected
  • hotfix-enrollment-aggregate
  • instruction_level_fixes
  • docentes-ies-ente-federativo
  • receita-potencial
  • #974-receita-potencial
  • db-conn
  • years-of-study-mean
  • new-indicators
  • issue_935
  • instruction_number
  • issue_958
  • issue_953
  • issues_indicadores_agregados
  • courseAggregate
  • v1.16.0
  • v1.15.1
  • v1.14.2
  • v1.14.1
  • v1.14.0
  • v1.14
  • v1.9.0
  • v1.8.3
  • v1.8.2
  • v1.8.1
  • v1.8.0
  • v1.7.0
  • v1.6.1
  • v1.6.0
  • v1.5.0
  • v1.4.2
  • v1.4.1
  • v1.4.0
  • v1.3.3
  • v1.3.2
40 results

id2str.js

Blame
  • id2str.js 1.72 KiB
    const libs = `${process.cwd()}/libs`;
    const gender = require(`${libs}/convert/gender`);
    const period = require(`${libs}/convert/period`);
    const schoolYear = require(`${libs}/convert/schoolYear`);
    const admDependency = require(`${libs}/convert/admDependency`);
    const location = require(`${libs}/convert/location`);
    const ethnicGroup = require(`${libs}/convert/ethnicGroup`);
    const agreement = require(`${libs}/convert/agreement`);
    const booleanVariable = require(`${libs}/convert/booleanVariable`);
    const educationLevel = require(`${libs}/convert/educationLevel`);
    const educationLevelMod = require(`${libs}/convert/educationLevelMod`);
    
    const ids = {
        gender_id: gender,
        period_id: period,
        school_year_id: schoolYear,
        education_level_id: educationLevel,
        education_level_mod_id: educationLevelMod,
        adm_dependency_id: admDependency,
        adm_dependency_detailed_id: admDependency,
        location_id: location,
        ethnic_group_id: ethnicGroup,
        agreement_id: agreement,
        integral_time_id: booleanVariable
    };
    
    function transform(removeId=false) {
        return (req, res, next) => {
            // Para cada objeto do resultado
            req.result.forEach((obj) => {
                Object.keys(obj).forEach((key) => {
                    // Se não há uma função especificada, retorna
                    if(typeof ids[key] === 'undefined') return;
                    let id = obj[key];
                    obj[key.replace('_id', '_name')] = ids[key](id);
                    if(removeId) delete obj[key];
                });
            });
            next();
        };
    }
    
    module.exports = {
        transform,
        gender,
        period,
        schoolYear,
        admDependency,
        location,
        ethnicGroup,
        agreement,
        booleanVariable,
        educationLevel,
        educationLevelMod
    };