-
Agustin Ruiz Diaz Cambon authoredAgustin Ruiz Diaz Cambon authored
CalculatorService.ts 895 B
import ERCalculator from './ERCalculator';
import ParameterService from './ParameterService';
import ParserService from './ParserService';
import AgeGroup from '../DTOs/AgeGroupDTO';
import CalculatorResponse from '../DTOs/CalculatorResponseDTO';
import AgeGroupJSON from '../DTOs/AgeGroupJSON';
import extraData from '../DTOs/ExtraDataDTO';
// eslint-disable-next-line max-len
const calculateEnergeticRequirement = (groups: AgeGroupJSON[], data: extraData): CalculatorResponse => {
const parameters = new Map<number[], AgeGroup>();
const ageGroups = ParserService.parseGroups(groups);
ageGroups.forEach((group: AgeGroup) => {
parameters.set(ParameterService.getEquationValues(group.age, group.sex), group);
});
const res: CalculatorResponse = ERCalculator.calculateER(parameters, data);
return res;
};
export default { calculateEnergeticRequirement };