diff --git a/CHANGELOG.md b/CHANGELOG.md index 2985fe62201bab1f5388d1618b43cbbe04e47e32..546a425c009198fa56b489073672b44a2cfed777 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,18 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/). +## 1.3.2 - 2018-06-20 +### Changed +- Fixed math error in classroom count at total classroom needed expression + +## 1.3.1 - 2018-06-19 +### Changed +- Fixed bug with Federal District and missing cities in classroom count + +## 1.3.0 - 2018-06-18 +### Added +- Daily charge amount route + ## 1.2.3 - 2018-06-14 ### Changed - Fixed roundig error in classroom count route diff --git a/src/libs/routes/classroomCount.js b/src/libs/routes/classroomCount.js index efb64d267dc622d1bb9c41059d2c25a205e2dd85..e3144507debb9c080a9893304bd50fd05eb68aa0 100644 --- a/src/libs/routes/classroomCount.js +++ b/src/libs/routes/classroomCount.js @@ -246,6 +246,7 @@ classroomCountApp.post('/', rqf.parse(), (req, res, next) => { let result = []; let hashSet = new Set(); let enrollments = [...req.enrollment]; + let leftovers = []; while (i < req.classroom.length) { let classroom = req.classroom[i]; // Cria hash única para cada espacialidade, dado um ano @@ -305,7 +306,12 @@ classroomCountApp.post('/', rqf.parse(), (req, res, next) => { enrollmentMatch = false; continue; } else if(classroom.city_name > enrollment.city_name) { - ++j; + let enrollmentHash = '' + enrollment.year + enrollment.state_id + enrollment.city_id; + if(hashSet.has(enrollmentHash)) { + leftovers.push(enrollments.splice(j, 1)); // Para inspeção, adiciona os que "sobram" no array de sobras + } else { + ++j; + } continue; } @@ -385,10 +391,12 @@ classroomCountApp.post('/', rqf.parse(), (req, res, next) => { educationLevel.enrollment.night_classes = Math.ceil((educationLevel.enrollment.total_enrollment_night / enrollmentEducationLevel.numberStudentClass)); // Total de salas - educationLevel.enrollment.total_classrooms_needed = (educationLevel.enrollment.full_period_classes + educationLevel.enrollment.day_classes); + educationLevel.enrollment.total_classrooms_needed = (educationLevel.enrollment.full_period_classes + educationLevel.enrollment.day_classes/2); if(educationLevel.enrollment.night_classes > educationLevel.enrollment.day_classes) educationLevel.enrollment.total_classrooms_needed += (educationLevel.enrollment.night_classes - educationLevel.enrollment.day_classes); + educationLevel.enrollment.total_classrooms_needed = Math.ceil(educationLevel.enrollment.total_classrooms_needed); + enrollment = enrollments[j]; }