maj README, fichier conception avec pseudo-code (à finir)

This commit is contained in:
pedro 2025-05-30 19:44:50 +02:00
parent a248cdabdc
commit d797c43480
2 changed files with 290 additions and 237 deletions

View file

@ -1,244 +1,53 @@
## Websocket
// Ouvrir channel websocket sur port 8500 --> DONE
function startWebsocket(var integer port) -> Websocket:
var Websocket websocket = start Websocket at port [port]
return websocket
# Entités
## MATCHS
- id
- player1
- player2
- referee (arbitre)
- score1 (score du joueur 1)
- score2 (score du joueur 2)
- date
- state (état du match : en cours, terminé, pas commencé)
## Entités
MATCHS -> MatchBean, MatchRepository
MatchBean:
- id:Long
- player1:PlayerBean
- player2:PlayerBean
- referee:RefereeBean
- score1:Int (score du player1)
- score2:Int (score du player2)
- date:String (date du match)
- state:String (état du match : terminé, en cours, pas commencé)
## ETATS D'UN MATCH
- ONGOING
- OVER
- NOT_STARTED
REFEREES (arbitres) -> RefereeBean, RefereeRepository
RefereeBean:
- id:Long
- name:Long (nom)
- firstName:String (prénom)
## ARBITRES
- id
- name (nom de famille)
- firstName (prénom)
PLAYERS -> PlayerBean, PlayerRepository
PlayerBean:
- id:Long
- name:String (nom)
- firstName:String (prénom)
## Services
MatchService --> DONE:
// Obtenir tous les matchs (public) --> DONE
function getAll() -> array<MatchBean> :
return MatchRepository.getAll()
// Obtenir un match par id (public) --> DONE
function get(var long id) -> MatchBean :
return MatchRepository.findById(id)
// Ajouter un match (admin) --> DONE
function add(var MatchBean newMatch) -> MatchBean :
MatchRepository.add(newMatch)
return newMatch
// Modifier un match (admin) --> DONE
function update(var long id, var PlayerBean player1, var PlayerBean player2, var RefereeBean referee, var integer score1, var integer score2, var Date date, var string state) -> MatchBean:
// Créer nouveau MatchBean
var MatchBean newMatch = new MatchBean(id, player1, player2, referee, score1, score2, date, state)
// Supprimer le MatchBean à l'id en paramètre
deleteById(id)
// Insérer le nouveau MatchBean à l'id en paramètre
MatchRepository.add(newMatch)
return newMatch
## JOUEURS
- id
- name (nom de famille)
- firstName (prénom)
// Supprimer un match (admin) --> DONE
function delete(var long id) -> integer (success or failure) :
try:
MatchRepository.deleteById(id)
catch error:
return FAILED
return SUCCESS
# Actions REST sur les entités
## MATCHS (MatchRestController)
- Lister tous les matchs -> MatchRestController.**getAll()**
- Lister tous les matchs à partir d'une certaine date -> MatchRestController.**getAllFromDate(Date date)**
- Lister les matchs en cours (état : en cours) -> MatchRestController.**getAllActive()**
- Lister les matchs terminés (état : terminé) -> MatchRestController.**getAllOver()**
- Lister les matchs non commencés (état : non commencé) -> MatchRestController.**getAllNotStarted()**
- Afficher un match par id -> MatchRestController.**get(Long matchID)**
- Mettre à jour le score1 d'un match récupéré par id -> MatchRestController.**updateScore1Of(Long matchID, String newScore1)**
- Mettre à jour le score2 d'un match récupéré par id -> MatchRestController.**updateScore2Of(Long matchID, String newScore2)**
- Ajouter un match -> MatchRestController.**add(Date date, Long refereeID, Long player1ID, Long player2ID)**
- Supprimer un match (supprimer élément de MatchRepository en récupérant l'id) -> MatchRestController.**delete(Long matchID)**
RefereeService --> DONE:
// Obtenir tous les arbitres (public) --> DONE
function getAll() -> array<RefereeBean> :
return RefereeRepository.getAll()
// Obtenir un arbitre par id (public) --> DONE
function get(var long id) -> RefereeBean :
return RefereeRepository.findById(id)
// Obtenir un arbitre par nom (public) --> DONE
function get(var string name) -> RefereeBean :
return RefereeRepository.findByName(name)
// Ajouter un arbitre (admin) --> DONE
function add(var RefereeBean newReferee) -> RefereeBean:
RefereeRepository.add(newReferee)
return newReferee
// Modifier un arbitre (admin) --> DONE
function update(var long id, var string name, var string firstName) -> RefereeBean:
// Créer nouveau RefereeBean
var RefereeBean newReferee = new RefereeBean(id, name, firstName)
// Supprimer le RefereeBean à l'id en paramètre
deleteById(id)
// Insérer le nouveau RefereeBean à l'id en paramètre
RefereeRepository.add(newReferee)
return newReferee
// Supprimer un arbitre (admin) --> DONE
function delete(var long id) -> integer (success or failure) :
try:
RefereeRepository.deleteById(id)
catch error:
return FAILED
return SUCCESS
## ARBITRES (RefereeRestController) :
- Lister tous les arbitres -> RefereeRestController.**getAll()**
- Afficher un arbitre par id -> RefereeRestController.**get(Long refereeID)**
- Afficher un arbitre par nom -> RefereeRestController.**get(String refereeName)**
- Ajouter un arbitre -> RefereeRestController.**add(String name, String firstName)**
- Supprimer un arbitre -> RefereeRestController.**delete(Long refereeID)**
PlayerService --> DONE:
// Obtenir tous les joueurs (public) --> DONE
function getAll() -> array<PlayerBean> :
return PlayerRepository.getAll()
// Obtenir un joueur par id (public) --> DONE
function get(var long id) -> PlayerBean :
return PlayerRepository.findById(id)
// Obtenir un joueur par nom (public) --> DONE
function get(var string name) -> PlayerBean :
return PlayerRepository.findByName(name)
// Ajouter un joueur (admin) --> DONE
function add(var PlayerBean newPlayer) -> PlayerBean:
PlayerRepository.add(newPlayer)
return newPlayer
// Modifier un joueur (admin) --> DONE
function update(var long id, var string name, var string firstName) -> PlayerBean :
// Créer nouveau PlayerBean
var PlayerBean newPlayer = new PlayerBean(id, name, firstName)
// Supprimer le PlayerBean à l'id en paramètre
deleteById(id)
// Insérer le nouveau PlayerBean à l'id en paramètre
PlayerRepository.add(newPlayer)
return newPlayer
## JOUEURS (PlayerRestController) :
- Lister tous les joueurs -> PlayerRestController.**getAll()**
- Afficher un joueur par id -> PlayerRestController.**get(Long playerID)**
- Afficher un joueur par nom -> PlayerRestController.**get(String playerName)**
- Ajouter un joueur -> PlayerRestController.**add(String name, String firstName)
- Supprimer un joueur -> PlayerRestController.**delete(String name, String firstName)
// Supprimer un joueur (admin) --> DONE
function delete(var long id) -> integer (success or failure) :
try:
PlayerRepository.deleteById(id)
catch error:
return FAILED
return SUCCESS
## RestControllers
MatchRestController --> TODO:
// Lister tous les matchs --> DONE
function getAll() -> array<MatchBean> :
return MatchService.getAll()
// Lister tous les matchs à partir d'une certaine date
function getAllFromDate(var Date dateToFilter) -> array<MatchBean> :
return MatchService.getAll().filter(date == dateToFilter)
// Lister les matchs en cours (état : en cours)
function getAllActive() -> array<MatchBean> :
return MatchService.getAll().filter(state == "ONGOING")
// Lister les matchs terminés (état : terminé)
function getAllOver() -> array<MatchBean> :
return MatchService.getAll().filter(state == "FINISHED")
// Lister les matchs non commencés (état : non commencé)
function getAllNotStarted() -> array<MatchBean> :
// MatchService :
return MatchService.getAll().filter(state == "NOT STARTED")
// Afficher un match par id
function get(var long id) -> MatchBean :
return MatchService.get(id)
// Mettre à jour le score1 d'un match récupéré par id --> TODO
function updateScore1Of(var long id, var integer newScore) -> integer (success or failure) :
return MatchService.update(
// Mettre à jour le score2 d'un match récupéré par id --> TODO
function updateScore2Of(var long id, var integer newScore) -> integer (success or failure) :
return MatchService.update(
// Ajouter un match (créer nouveau MatchBean dans MatchRepository)
function add(var MatchBean newMatch) -> integer (success or failure):
return MatchService.add(newMatch)
// Supprimer un match (supprimer élément de MatchRepository en récupérant l'id)
function deleteById(var long id) -> integer (success or failure) :
return MatchService.deleteById(id)
RefereeRestController --> DONE:
// Lister tous les arbitres
function getAll() -> array<RefereeBean> :
return RefereeService.getAll()
// Afficher un arbitre par id
function get(var long id) -> RefereeBean :
return RefereeService.get(id)
// Afficher un arbitre par nom
function get(var string name) -> RefereeBean:
return RefereeService.get(name)
// Ajouter un arbitre (créer nouveau RefereeBean dans RefereeRepository)
function add(var RefereeBean newReferee) -> integer (success or failure) :
return RefereeService.add(newReferee)
// Supprimer un arbitre (supprimer élément de RefereeRepository en récupérant l'id)
function deleteById(var long id) -> integer (success or failure) :
return RefereeService.deleteById(id)
PlayerRestController --> DONE:
// Lister tous les joueurs
function getAll() -> array<PlayerBean> :
return PlayerService.getAll()
// Afficher un joueur par id
function get(var long id) -> PlayerBean :
return PlayerService.get(id)
// Afficher un joueur par nom
function get(var string name) -> PlayerBean :
return PlayerService.get(name)
// Ajouter un joueur (créer nouveau PlayerBean dans PlayerRepository)
function add(var PlayerBean newPlayer) -> integer (success or failure) :
return PlayerService.add(newPlayer)
// Supprimer un joueur (supprimer élément de PlayerRepository en récupérant l'id)
function deleteById(var long id) -> integer (success or failure) :
return PlayerService.deleteById(id)
## Pages
Page des matchs (publique) :
à définir (partie front sur Angular ?)
Page de connexion à l'administration (publique) :
formulaire :
- nom d'utilisateur
- mot de passe
Page d'administration (privée) :
à définir (partie front sur Angular ?)

View file

@ -0,0 +1,244 @@
## Websocket
// Ouvrir channel websocket sur port 8500 --> DONE
function startWebsocket(var integer port) -> Websocket:
var Websocket websocket = start Websocket at port [port]
return websocket
## Entités
MATCHS -> MatchBean, MatchRepository
MatchBean:
- id:Long
- player1:PlayerBean
- player2:PlayerBean
- referee:RefereeBean
- score1:Int (score du player1)
- score2:Int (score du player2)
- date:String (date du match)
- state:String (état du match : terminé, en cours, pas commencé)
REFEREES (arbitres) -> RefereeBean, RefereeRepository
RefereeBean:
- id:Long
- name:Long (nom)
- firstName:String (prénom)
PLAYERS -> PlayerBean, PlayerRepository
PlayerBean:
- id:Long
- name:String (nom)
- firstName:String (prénom)
## Services
MatchService --> DONE:
// Obtenir tous les matchs (public) --> DONE
function getAll() -> array<MatchBean> :
return MatchRepository.getAll()
// Obtenir un match par id (public) --> DONE
function get(var long id) -> MatchBean :
return MatchRepository.findById(id)
// Ajouter un match (admin) --> DONE
function add(var MatchBean newMatch) -> MatchBean :
MatchRepository.add(newMatch)
return newMatch
// Modifier un match (admin) --> DONE
function update(var long id, var PlayerBean player1, var PlayerBean player2, var RefereeBean referee, var integer score1, var integer score2, var Date date, var string state) -> MatchBean:
// Créer nouveau MatchBean
var MatchBean newMatch = new MatchBean(id, player1, player2, referee, score1, score2, date, state)
// Supprimer le MatchBean à l'id en paramètre
deleteById(id)
// Insérer le nouveau MatchBean à l'id en paramètre
MatchRepository.add(newMatch)
return newMatch
// Supprimer un match (admin) --> DONE
function delete(var long id) -> integer (success or failure) :
try:
MatchRepository.deleteById(id)
catch error:
return FAILED
return SUCCESS
RefereeService --> DONE:
// Obtenir tous les arbitres (public) --> DONE
function getAll() -> array<RefereeBean> :
return RefereeRepository.getAll()
// Obtenir un arbitre par id (public) --> DONE
function get(var long id) -> RefereeBean :
return RefereeRepository.findById(id)
// Obtenir un arbitre par nom (public) --> DONE
function get(var string name) -> RefereeBean :
return RefereeRepository.findByName(name)
// Ajouter un arbitre (admin) --> DONE
function add(var RefereeBean newReferee) -> RefereeBean:
RefereeRepository.add(newReferee)
return newReferee
// Modifier un arbitre (admin) --> DONE
function update(var long id, var string name, var string firstName) -> RefereeBean:
// Créer nouveau RefereeBean
var RefereeBean newReferee = new RefereeBean(id, name, firstName)
// Supprimer le RefereeBean à l'id en paramètre
deleteById(id)
// Insérer le nouveau RefereeBean à l'id en paramètre
RefereeRepository.add(newReferee)
return newReferee
// Supprimer un arbitre (admin) --> DONE
function delete(var long id) -> integer (success or failure) :
try:
RefereeRepository.deleteById(id)
catch error:
return FAILED
return SUCCESS
PlayerService --> DONE:
// Obtenir tous les joueurs (public) --> DONE
function getAll() -> array<PlayerBean> :
return PlayerRepository.getAll()
// Obtenir un joueur par id (public) --> DONE
function get(var long id) -> PlayerBean :
return PlayerRepository.findById(id)
// Obtenir un joueur par nom (public) --> DONE
function get(var string name) -> PlayerBean :
return PlayerRepository.findByName(name)
// Ajouter un joueur (admin) --> DONE
function add(var PlayerBean newPlayer) -> PlayerBean:
PlayerRepository.add(newPlayer)
return newPlayer
// Modifier un joueur (admin) --> DONE
function update(var long id, var string name, var string firstName) -> PlayerBean :
// Créer nouveau PlayerBean
var PlayerBean newPlayer = new PlayerBean(id, name, firstName)
// Supprimer le PlayerBean à l'id en paramètre
deleteById(id)
// Insérer le nouveau PlayerBean à l'id en paramètre
PlayerRepository.add(newPlayer)
return newPlayer
// Supprimer un joueur (admin) --> DONE
function delete(var long id) -> integer (success or failure) :
try:
PlayerRepository.deleteById(id)
catch error:
return FAILED
return SUCCESS
## RestControllers
MatchRestController --> TODO:
// Lister tous les matchs --> DONE
function getAll() -> array<MatchBean> :
return MatchService.getAll()
// Lister tous les matchs à partir d'une certaine date
function getAllFromDate(var Date dateToFilter) -> array<MatchBean> :
return MatchService.getAll().filter(date == dateToFilter)
// Lister les matchs en cours (état : en cours)
function getAllActive() -> array<MatchBean> :
return MatchService.getAll().filter(state == "ONGOING")
// Lister les matchs terminés (état : terminé)
function getAllOver() -> array<MatchBean> :
return MatchService.getAll().filter(state == "FINISHED")
// Lister les matchs non commencés (état : non commencé)
function getAllNotStarted() -> array<MatchBean> :
// MatchService :
return MatchService.getAll().filter(state == "NOT STARTED")
// Afficher un match par id
function get(var long id) -> MatchBean :
return MatchService.get(id)
// Mettre à jour le score1 d'un match récupéré par id --> TODO
function updateScore1Of(var long id, var integer newScore) -> integer (success or failure) :
return MatchService.update(
// Mettre à jour le score2 d'un match récupéré par id --> TODO
function updateScore2Of(var long id, var integer newScore) -> integer (success or failure) :
return MatchService.update(
// Ajouter un match (créer nouveau MatchBean dans MatchRepository)
function add(var MatchBean newMatch) -> integer (success or failure):
return MatchService.add(newMatch)
// Supprimer un match (supprimer élément de MatchRepository en récupérant l'id)
function deleteById(var long id) -> integer (success or failure) :
return MatchService.deleteById(id)
RefereeRestController --> DONE:
// Lister tous les arbitres
function getAll() -> array<RefereeBean> :
return RefereeService.getAll()
// Afficher un arbitre par id
function get(var long id) -> RefereeBean :
return RefereeService.get(id)
// Afficher un arbitre par nom
function get(var string name) -> RefereeBean:
return RefereeService.get(name)
// Ajouter un arbitre (créer nouveau RefereeBean dans RefereeRepository)
function add(var RefereeBean newReferee) -> integer (success or failure) :
return RefereeService.add(newReferee)
// Supprimer un arbitre (supprimer élément de RefereeRepository en récupérant l'id)
function deleteById(var long id) -> integer (success or failure) :
return RefereeService.deleteById(id)
PlayerRestController --> DONE:
// Lister tous les joueurs
function getAll() -> array<PlayerBean> :
return PlayerService.getAll()
// Afficher un joueur par id
function get(var long id) -> PlayerBean :
return PlayerService.get(id)
// Afficher un joueur par nom
function get(var string name) -> PlayerBean :
return PlayerService.get(name)
// Ajouter un joueur (créer nouveau PlayerBean dans PlayerRepository)
function add(var PlayerBean newPlayer) -> integer (success or failure) :
return PlayerService.add(newPlayer)
// Supprimer un joueur (supprimer élément de PlayerRepository en récupérant l'id)
function deleteById(var long id) -> integer (success or failure) :
return PlayerService.deleteById(id)
## Pages
Page des matchs (publique) :
à définir (partie front sur Angular ?)
Page de connexion à l'administration (publique) :
formulaire :
- nom d'utilisateur
- mot de passe
Page d'administration (privée) :
à définir (partie front sur Angular ?)