240 lines
No EOL
6.9 KiB
Markdown
240 lines
No EOL
6.9 KiB
Markdown
## Websocket
|
|
// Ouvrir channel websocket sur port 8500
|
|
|
|
## 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
|
|
|
|
PLAYERS -> PlayerBean, PlayerRepository
|
|
PlayerBean:
|
|
- id:Long
|
|
- name:String (nom)
|
|
- firstName:String (prénom)
|
|
|
|
## Services
|
|
MatchService --> TODO:
|
|
// 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) -> integer (success or failure) :
|
|
try:
|
|
MatchRepository.add(newMatch)
|
|
catch error:
|
|
return FAILED
|
|
|
|
return SUCCESS
|
|
|
|
|
|
// Modifier un match (admin) --> TODO
|
|
function update(var long id, ...) -> integer (success or failure) :
|
|
try:
|
|
MatchRepository.
|
|
catch error:
|
|
return FAILED
|
|
|
|
return SUCCESS
|
|
|
|
// 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 --> TODO:
|
|
// 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) -> integer (success or failure) :
|
|
try:
|
|
RefereeRepository.add(newReferee)
|
|
catch error:
|
|
return FAILED
|
|
|
|
return SUCCESS
|
|
|
|
// Modifier un arbitre (admin) --> TODO
|
|
function update(var long id, ...) -> integer (success or failure) :
|
|
try:
|
|
RefereeRepository.
|
|
catch error:
|
|
return FAILED
|
|
|
|
return SUCCESS
|
|
|
|
// 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 --> TODO:
|
|
// 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) -> integer (success or failure) :
|
|
try:
|
|
PlayerRepository.add(newPlayer)
|
|
catch error:
|
|
return FAILED
|
|
|
|
return SUCCESS
|
|
|
|
// Modifier un joueur (admin) --> TODO
|
|
function update(var long id, ...) -> integer (success or failure) :
|
|
try:
|
|
PlayerRepository.
|
|
catch error:
|
|
return FAILED
|
|
|
|
return SUCCESS
|
|
|
|
// 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 ?) |