# Entités ## MATCHES (MatchBean) - id -> Long - country -> String - city -> String - weapon -> String - player1ID -> Long - player2ID -> Long - refereeID (arbitre) -> Long - score1 (score du joueur 1) -> Integer - score2 (score du joueur 2) -> Integer - date -> Date - state (état du match : en cours, terminé, pas commencé) -> Integer (ENUM) ## ETATS D'UN MATCH (MatchesStates) - ONGOING -> Integer (1) - OVER -> Integer (2) - NOT STARTED -> Integer (3) ## ARBITRES (RefereeBean) - id -> Long - name (nom de famille) -> String - firstName (prénom) -> String - qualification -> String ## JOUEURS (PlayerBean) - id -> Long - name (nom de famille) -> String - firstName (prénom) -> String - club -> String # Actions REST sur les entités ## matches (MatchRestController, "/matches") - Lister tous les matches -> **GET "/matches/"** -> List - Lister tous les matches à partir d'une certaine date -> **GET "/matches/date=&date"** -> List - Lister les matches en cours (état : en cours) -> **GET "/matches/active"** -> List - Lister les matches terminés (état : terminé) -> **GET "/matches/over"** -> List - Lister les matches non commencés (état : non commencé) -> **GET "/matches/not-started"** -> List - Afficher un match par id -> **GET "/matches/id=&id"** -> MatchBean - Mettre à jour les score d'un match récupéré par id -> **POST "/matches/update-match"** { id=$id, score1=$score1, score2=$score2 } -> MatchBean - Ajouter un match -> **POST "/matches/add-match"** { date=$date, country=$country city=$city, weapon=$weapon, refereeID=$refereeID, player1ID=$player1ID, player2ID=$player2ID, } -> MatchBean - Supprimer un match (supprimer élément de MatchRepository en récupérant l'id) -> **POST "/matches/delete-match"** { id=$id } ## ARBITRES (RefereeRestController, "/referees") : - Lister tous les arbitres -> **GET "/referees/"** -> List - Afficher un arbitre par id -> **GET "/referees/id=$id"** -> RefereeBean - Afficher un arbitre par nom ->**GET "/referees/name=$name"** -> RefereeBean - Ajouter un arbitre ->**POST "/referees/add-referee"** { name=$name, firstName=$firstName, qualification=$qualification } -> RefereeBean - Supprimer un arbitre ->**POST "/referees/delete-referee/"** { id=$id } ## JOUEURS (PlayerRestController, "/players") : - Lister tous les joueurs ->**GET "/players/"** -> List - Afficher un joueur par id ->**GET "/players/id=$id"** -> PlayerBean - Afficher un joueur par nom ->**GET "/players/name=$name"** -> PlayerBean - Ajouter un joueur ->**POST "/players/add-player"** { name=$name, firstName=$firstName, club=$club } -> PlayerBean - Supprimer un joueur ->**POST "/players/delete-player"** { id=$id } # Websocket (http://localhost:8080/ws) - Vider le channel - Insérer une donnée dans le channel - Modifier une donnée dans le channel - Supprimer une donnée du channel ## MATCHES ## matches (MatchRestController, "/matches") - Lister tous les matches -> dans le channel Websocket - Lister tous les matches à partir d'une certaine date -> dans le channel Websocket - Lister les matches en cours (état : en cours) -> **GET "/matches/active"** -> List - Lister les matches terminés (état : terminé) -> **GET "/matches/over"** -> List - Lister les matches non commencés (état : non commencé) -> **GET "/matches/not-started"** -> List - Afficher un match par id -> **GET "/matches/id=&id"** -> MatchBean - Mettre à jour les score d'un match récupéré par id -> **POST "/matches/update-match"** { id=$id, score1=$score1, score2=$score2 } -> MatchBean - Ajouter un match -> **POST "/matches/add-match"** { date=$date, country=$country city=$city, weapon=$weapon, refereeID=$refereeID, player1ID=$player1ID, player2ID=$player2ID, } -> MatchBean - Supprimer un match (supprimer élément de MatchRepository en récupérant l'id) -> **POST "/matches/delete-match"** { id=$id } ## REFEREES ## PLAYERS