Feat: Ajout des types de sessions en map

This commit is contained in:
Amaël Kesteman
2026-01-08 12:04:05 +01:00
parent 1eef3c4944
commit 40c9d091b8
3 changed files with 19 additions and 14 deletions

View File

@@ -1,10 +1,10 @@
import { Athlete, Session } from '../classes';
import { Athlete, Session , Activite} from '../classes';
export interface StatsAthlete {
nbSessions: number;
nbSessionsPerWeek: number;
isAlerte: boolean;
distributions: Map<string, number>; //le nom de l'activité et son nombre
distributions: Map<String, number>; //le nom de l'activité et son nombre
}
export function niveauAlerte(stats: StatsAthlete, seuilCritique = 0, seuilMax = 0) {
@@ -30,9 +30,13 @@ export function calculStatsAthlete(sessions: Session[], athlete: Athlete, debut:
//incrementation (verifie si recurent ou non)
const increment = session.isRecurrent ? nb_semaine : 1;
nb_sessions += increment;
//distribution des activités
session.activites.forEach(activite => {
const currentCount = distributions.get(activite.nom) || 0;
distributions.set(activite.nom, currentCount + increment);
});
}
);
});
const nbSessionsPerWeek = nb_sessions / nb_semaine;
const isAlerte = nbSessionsPerWeek > 8;