ajout premières fonctions aux services

This commit is contained in:
pedro 2025-05-31 01:16:40 +02:00
parent 33f8be706c
commit 7d26b9372c
14 changed files with 148 additions and 21 deletions

4
.idea/misc.xml generated
View file

@ -1,5 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="FrameworkDetectionExcludesConfiguration">
<file type="web" url="file://$PROJECT_DIR$/FencerJudgeBack" />
</component>
<component name="ProjectRootManager">
<output url="file://$PROJECT_DIR$/out" />
</component>

1
.idea/modules.xml generated
View file

@ -2,7 +2,6 @@
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/FencerJudgeBack/FencerJudgeBack.iml" filepath="$PROJECT_DIR$/FencerJudgeBack/FencerJudgeBack.iml" />
<module fileurl="file://$PROJECT_DIR$/jpe-controle.iml" filepath="$PROJECT_DIR$/jpe-controle.iml" />
</modules>
</component>

View file

@ -25,7 +25,7 @@
- firstName (prénom)
# Actions REST sur les entités
## MATCHS (MatchRestController)
## MATCHS (MatchRestController, "/matchs")
- 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()**
@ -37,14 +37,14 @@
- 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)**
## ARBITRES (RefereeRestController) :
## ARBITRES (RefereeRestController, "/referees") :
- 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)**
## JOUEURS (PlayerRestController) :
## JOUEURS (PlayerRestController, "/players") :
- Lister tous les joueurs -> PlayerRestController.**getAll()**
- Afficher un joueur par id -> PlayerRestController.**get(Long playerID)**
- Afficher un joueur par nom -> PlayerRestController.**get(String playerName)**

View file

@ -27,6 +27,13 @@ dependencies {
testImplementation("org.springframework.boot:spring-boot-starter-test")
testImplementation("org.jetbrains.kotlin:kotlin-test-junit5")
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
// WEBSOCKET
implementation("org.springframework.boot:spring-boot-starter-websocket")
// SECURITY
implementation("org.springframework.boot:spring-boot-starter-security")
}
kotlin {

View file

@ -5,13 +5,13 @@ import jakarta.persistence.Id
import jakarta.persistence.Table
@Entity
@Table(name="match")
@Table(name="matchs")
data class MatchBean(
@Id
val id:Long?=null,
val player1:PlayerBean?=null,
val player2:PlayerBean?=null,
val referee: RefereeBean?=null,
val player1ID:Long?=null,
val player2ID:Long?=null,
val refereeID: Long?=null,
val score1:Int=0,
val score2:Int=0,
val date:String?=null

View file

@ -5,9 +5,10 @@ import jakarta.persistence.Id
import jakarta.persistence.Table
@Entity
@Table(name="referee")
@Table(name="referees")
data class RefereeBean(
@Id
val id:Long?=null,
val name:Long?=null,
val name:String?=null,
val firstName:String?=null
)

View file

@ -2,6 +2,8 @@ package fr.teamflash.fencerjudgeback.repositories
import fr.teamflash.fencerjudgeback.entities.PlayerBean
import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.stereotype.Repository
@Repository
interface PlayerRepository: JpaRepository<PlayerBean, Long> {
}

View file

@ -0,0 +1,10 @@
package fr.teamflash.fencerjudgeback.repositories
import fr.teamflash.fencerjudgeback.entities.RefereeBean
import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.stereotype.Repository
@Repository
interface RefereeRepository : JpaRepository<RefereeBean, Long> {
}

View file

@ -4,4 +4,5 @@ import org.springframework.web.bind.annotation.RestController
@RestController
class MatchRestController {
}

View file

@ -0,0 +1,7 @@
package fr.teamflash.fencerjudgeback.restControllers
import org.springframework.web.bind.annotation.RestController
@RestController
class PlayerRestController {
}

View file

@ -0,0 +1,8 @@
package fr.teamflash.fencerjudgeback.restControllers
import org.springframework.web.bind.annotation.RestController
@RestController
class RefereeRestController {
}

View file

@ -6,12 +6,35 @@ import fr.teamflash.fencerjudgeback.repositories.MatchRepository
import org.springframework.stereotype.Service
@Service
class MatchService(matchRepository: MatchRepository) {
class MatchService(private val matchRepository: MatchRepository) {
fun getMatchById(id:Long){}
fun getMatchByPlayer(playerBean: PlayerBean) {}
fun getMatchs(){}
fun createMatch(match: MatchBean){}
fun updateMatchScore(score1:Int, score2:Int){}
fun delMatch(match:MatchBean){}
fun getMatchById(id:Long): MatchBean {
println("MatchService.getMatchById : $id")
return matchRepository.findById(id).get()
}
fun getMatchByPlayer(playerBean: PlayerBean): List<MatchBean> {
println("MatchService.getMatchByPlayer : $playerBean")
return matchRepository.findAll().filter { it.player1ID == playerBean.id || it.player2ID == playerBean.id }
}
fun getMatchs() : List<MatchBean> {
println("MatchService.getMatchs")
return matchRepository.findAll()
}
fun createMatch(match: MatchBean) : MatchBean {
println("MatchService.createMatch : $match")
matchRepository.save(match)
return match
}
fun updateMatch(match: MatchBean) {
println("MatchService.updateMatch : $match")
matchRepository.save(match)
}
fun updateMatchScore(score1:Int, score2:Int) : MatchBean {
println("MatchService.updateMatchScore : $score1 - $score2")
return matchRepository.findAll().first()
}
fun delMatch(match:MatchBean){
println("MatchService.delMatch : $match")
matchRepository.delete(match)
}
}

View file

@ -1,11 +1,36 @@
package fr.teamflash.fencerjudgeback.services
import fr.teamflash.fencerjudgeback.entities.PlayerBean
import fr.teamflash.fencerjudgeback.repositories.PlayerRepository
import org.springframework.stereotype.Service
import java.util.Optional
@Service
class PlayerService {
fun getPlayerById(id:Long){}
fun getPlayers(){}
fun getPlayerByName(name:String){}
class PlayerService(private val playerRepository: PlayerRepository) {
fun getPlayerById(id:Long): Optional<PlayerBean?> {
println("PlayerService.getPlayerById : $id")
return playerRepository.findById(id)
}
fun getPlayers(): List<PlayerBean> {
println("PlayerService.getPlayers")
return playerRepository.findAll()
}
fun getPlayerByName(name:String) : List<PlayerBean> {
println("PlayerService.getPlayerByName : $name")
return playerRepository.findAll()
}
fun createPlayer(player: PlayerBean): PlayerBean {
println("PlayerService.createPlayer : $player")
playerRepository.save(player)
return player
}
fun updatePlayer(player: PlayerBean) : PlayerBean{
println("PlayerService.updatePlayer : $player")
playerRepository.save(player)
return player
}
fun delPlayer(player: PlayerBean) {
println("PlayerService.delPlayer : $player")
playerRepository.delete(player)
}
}

View file

@ -0,0 +1,40 @@
package fr.teamflash.fencerjudgeback.services
import fr.teamflash.fencerjudgeback.entities.RefereeBean
import fr.teamflash.fencerjudgeback.repositories.RefereeRepository
import org.springframework.stereotype.Service
import java.util.Optional
@Service
class RefereeService(private val refereeRepository: RefereeRepository) {
fun getRefereeById(id:Long) : Optional<RefereeBean?> {
println("RefereeService.getRefereeById : $id")
return refereeRepository.findById(id)
}
fun getReferees(): List<RefereeBean> {
println("RefereeService.getReferees")
return refereeRepository.findAll()
}
fun getRefereeByName(name:String): RefereeBean {
println("RefereeService.getRefereeByName : $name")
return refereeRepository.findAll().first { it.name == name }
}
fun createReferee(referee: RefereeBean) : RefereeBean {
println("RefereeService.createReferee : $referee")
refereeRepository.save(referee)
return referee
}
fun updateRefereePassword(referee: RefereeBean) {
println("RefereeService.updateRefereePassword : $referee")
refereeRepository.save(referee)
}
fun updateReferee(referee: RefereeBean) : RefereeBean {
println("RefereeService.updateReferee : $referee")
refereeRepository.save(referee)
return referee
}
fun delReferee(referee: RefereeBean){
println("RefereeService.delReferee : $referee")
refereeRepository.delete(referee)
}
}