contructeur classes, type DTO dans TS, clean hard code
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { useState } from "react";
|
||||
import { useLocalData } from "../context/useLocalData";
|
||||
import { Activite, Athlete, Coach , Session, Ligne, getUserTest } from "../classes";
|
||||
import { Activite, Athlete, Coach , Session, Ligne, Admin } from "../classes";
|
||||
import {calculTempsDeJeuParLigne} from "../utils/ligneUtils";
|
||||
import { keyboard } from "@testing-library/user-event/dist/keyboard";
|
||||
import ObjectSession from "./object/session";
|
||||
@@ -10,14 +10,11 @@ import ObjectUser from "./object/user";
|
||||
export type keyWord = "athletes" | "activites" | "coachs" | "sessions"| "lignes";
|
||||
|
||||
export default function RessourcePanel() {
|
||||
//const { user } = useLocalData();
|
||||
const user = getUserTest(); //TODO
|
||||
const { user } = useLocalData();
|
||||
//const user = getUserTest(); //TODO
|
||||
const [value,setValue] = useState<keyWord>("athletes");
|
||||
console.log("Rôle utilisateur:", user.role);
|
||||
console.log(user.nom);
|
||||
console.log(user.prenom);
|
||||
console.log(user.email);
|
||||
if (user.role === "athlete") return null;
|
||||
|
||||
if (user instanceof Athlete) return null;
|
||||
|
||||
|
||||
const allAthletes: Athlete[] = [];
|
||||
@@ -28,26 +25,8 @@ import ObjectUser from "./object/user";
|
||||
|
||||
const allSessions: Session[] = [];
|
||||
|
||||
const ligneMap: Map<number, Ligne> = new Map();
|
||||
user.sessions.forEach(session => {
|
||||
if (session.ligne) {
|
||||
const allLignes: Ligne[] = [];
|
||||
|
||||
session.ligne.forEach(ligne => {
|
||||
ligneMap.set(ligne.id, ligne);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
const allLignes: Ligne[] = Array.from(ligneMap.values());
|
||||
|
||||
// Calculer le temps de jeu pour chaque ligne
|
||||
const tempsDeJeuParLigne: Map<number, number> = new Map();
|
||||
allLignes.forEach(ligne => {
|
||||
const tempsTotal = calculTempsDeJeuParLigne(allSessions, ligne);
|
||||
tempsDeJeuParLigne.set(ligne.id, tempsTotal);
|
||||
ligne.tempsDeJeu = tempsTotal;
|
||||
});
|
||||
|
||||
|
||||
|
||||
@@ -63,7 +42,7 @@ import ObjectUser from "./object/user";
|
||||
}}>
|
||||
<option value="athletes">Athlètes</option>
|
||||
<option value="activites">Activités</option>
|
||||
{user.role === "admin" && <option value="coachs"> Coachs</option>}
|
||||
{user instanceof Admin && <option value="coachs"> Coachs</option>}
|
||||
<option value="sessions"> Sessions</option>
|
||||
<option value="lignes"> Lignes</option>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user