/** * Modifie la date de cloture des inscriptions. Il est possible de la reculer mais pas de * l'avancer. * * @param dateCloture */ public void setDateCloture(LocalDate dateCloture) { // TODO vérifier que l'on avance pas la date. if (this.dateCloture == null || dateCloture.isAfter(getDateCloture())) { Inscriptions.getConnection().ModifieDateCompet(dateCloture, this); this.dateCloture = dateCloture; } }
/** * Inscrit un candidat de type Equipe à la compétition. Provoque une exception si la compétition * est réservée aux personnes. * * @param personne * @return */ public boolean add(Equipe equipe) { // TODO vérifier que la date de clôture n'est pas passée if (dateCloture == null || LocalDate.now().isBefore(dateCloture)) { if (!enEquipe) throw new RuntimeException(); equipe.add(this); System.out.println("oke"); Inscriptions.getConnection().InscritCompetCandi(equipe, this); return candidats.add(equipe); } else return false; }
/** Supprime la compétition de l'application. */ public void delete() { for (Candidat candidat : candidats) remove(candidat); Inscriptions.getConnection().EnleverCompet(this.getId()); inscriptions.remove(this); }
/** * Désinscrit un candidat. * * @param candidat * @return */ public boolean remove(Candidat candidat) { Inscriptions.getConnection().retirerCandidatCompetition(candidat, this); candidat.remove(this); return candidats.remove(candidat); }