diff --git a/src/DTOs/AgeGroupJSON.ts b/src/DTOs/AgeGroupJSON.ts index b004c5bd7e58760e77a3c85177d3c5ad4d4f3da2..c8a111c0483005ff9db7a1de541cc14ff063ded7 100644 --- a/src/DTOs/AgeGroupJSON.ts +++ b/src/DTOs/AgeGroupJSON.ts @@ -1,8 +1,8 @@ type AgeGroupJSON = { edad: string; sexo: string; - pesoMediano: number; - cantidad: number; + pesoMediano: string; + cantidad: string; }; export default AgeGroupJSON; diff --git a/src/DTOs/EnergeticRequirementDTO.ts b/src/DTOs/EnergeticRequirementDTO.ts index fbf14e4087a9658680aafb154cce46ba5347b795..ef11f41e11285421e15b7ff0745744f9be5065e1 100644 --- a/src/DTOs/EnergeticRequirementDTO.ts +++ b/src/DTOs/EnergeticRequirementDTO.ts @@ -1,6 +1,7 @@ type EnergeticRequirement = { requerimientoEnergeticoPerCapita: number; requerimientoEnergeticoTotal: number; + poblacionTotal: number; }; export default EnergeticRequirement; diff --git a/src/Services/ERCalculator.ts b/src/Services/ERCalculator.ts index e656ef99be8b457392e6f0a39626a47ec0249daf..6be7f98ec3b015fe103f03619f1a23943b2b7c81 100644 --- a/src/Services/ERCalculator.ts +++ b/src/Services/ERCalculator.ts @@ -76,6 +76,7 @@ const calculateER = (groupParameters: Map<number[], AgeGroup>): CalculatorRespon const totalER: EnergeticRequirement = { requerimientoEnergeticoPerCapita: totalRequirement / totalOfPeople, requerimientoEnergeticoTotal: totalRequirement, + poblacionTotal: totalOfPeople, }; const result: CalculatorResponse = { diff --git a/src/Services/ParserService.ts b/src/Services/ParserService.ts index 9600284cce0a2ec44246d46dd45ec1d06ee21d54..b9aedc9f4780a9abb1ce2a9a84019154efadb655 100644 --- a/src/Services/ParserService.ts +++ b/src/Services/ParserService.ts @@ -162,14 +162,15 @@ import Sex from '../Enum/Sex'; const parseGroups = (groups: AgeGroupJSON[]): AgeGroup[] => { const retGroups: AgeGroup[] = []; groups.forEach((obj: AgeGroupJSON) => { - if (typeof (obj.pesoMediano) !== 'number' || typeof (obj.cantidad) !== 'number') { - throw new Error('Parsing error, attributes do not respect format'); - } + // if (typeof (obj.pesoMediano) !== 'number' || typeof (obj.cantidad) !== 'number') { + // console.log('Estas haciendo cualquiera flaco'); + // throw new Error('Parsing error, attributes do not respect format'); + // } const group: AgeGroup = { edad: obj.edad as AgeBracket, sexo: obj.sexo as Sex, - pesoMediano: obj.pesoMediano, - cantidad: obj.cantidad, + pesoMediano: parseFloat(obj.pesoMediano), + cantidad: parseFloat(obj.cantidad), }; retGroups.push(group); }); @@ -180,8 +181,8 @@ const unparseGroup = (group: AgeGroup): AgeGroupJSON => { const retGroup: AgeGroupJSON = { edad: group.edad as string, sexo: group.sexo as string, - pesoMediano: group.pesoMediano, - cantidad: group.cantidad, + pesoMediano: String(group.pesoMediano), + cantidad: String(group.cantidad), }; return retGroup; }; diff --git a/src/routes.ts b/src/routes.ts index 1e83e85760de22ae93662adef9e5b7ae4c998e7f..c0ea909c381728d2b0e3a226166ec8e1f4102f4e 100644 --- a/src/routes.ts +++ b/src/routes.ts @@ -1,6 +1,7 @@ import { Request, Response, Router } from 'express'; import SheetController from './Controllers/SheetController'; import CalculatorController from './Controllers/CalculatorController'; +import ParameterController from './Controllers/ParameterController'; const router = Router(); @@ -10,6 +11,8 @@ router.get('/', (req: Request, res: Response): void => { router.use('/sheetParser', SheetController); -router.use('/REPcalculator', CalculatorController); +router.use('/repCalculator', CalculatorController); + +router.use('/parameters', ParameterController); export default router;