Ajout de la maj gestion rappel
This commit is contained in:
@@ -1,60 +1,105 @@
|
||||
|
||||
package fr.iutfbleau.papillon;
|
||||
|
||||
import java.sql.SQLException;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* La classe <code>GestionRappel</code> gère les opérations métier
|
||||
* liées aux rappels de l’utilisateur actuellement identifié.
|
||||
*
|
||||
* <p>Elle fait le lien entre la couche applicative et la couche base de données
|
||||
* (via la classe {@link RappelBD}) et s’appuie sur {@link UserKey}
|
||||
* et {@link UtilisateurBD} pour identifier l’utilisateur.</p>
|
||||
*
|
||||
* @version 1.0
|
||||
* @author Seri-khane YOLOU, Aylane SEHL, Jenson VAL
|
||||
*/
|
||||
public class GestionRappel {
|
||||
|
||||
public List<Rappel> lister() throws Exception {
|
||||
return BaseDeDonnees.lister();
|
||||
}
|
||||
/** Identifiant de l’utilisateur courant. */
|
||||
private final int utilisateurId;
|
||||
|
||||
public int ajouter(Rappel r) throws Exception {
|
||||
return BaseDeDonnees.ajouter(r);
|
||||
}
|
||||
|
||||
public int modifierParId(int id, Rappel r) throws Exception {
|
||||
return BaseDeDonnees.modifier(id, r);
|
||||
}
|
||||
|
||||
public int supprimerParId(int id) throws Exception {
|
||||
return BaseDeDonnees.supprimer(id);
|
||||
}
|
||||
|
||||
// === petit main pour test rapide ===
|
||||
public static void main(String[] args) {
|
||||
/**
|
||||
* Constructeur : initialise l’utilisateur courant à partir de sa clé locale.
|
||||
* Si la clé n’existe pas, elle est créée automatiquement.
|
||||
*/
|
||||
public GestionRappel() {
|
||||
int uid = -1;
|
||||
try {
|
||||
GestionRappel g = new GestionRappel();
|
||||
|
||||
// Ajouter
|
||||
Rappel r = new Rappel("Acheter du café", "avant 17h", "Urgent", 1);
|
||||
int id = g.ajouter(r);
|
||||
System.out.println("Ajouté : " + id);
|
||||
|
||||
// Lister
|
||||
System.out.println("\nListe des rappels :");
|
||||
for (Rappel x : g.lister()) {
|
||||
System.out.println(" - " + x);
|
||||
}
|
||||
|
||||
// Modifier
|
||||
r.setTitre("Acheter du café (bio)");
|
||||
r.setRang(3);
|
||||
|
||||
g.modifierParId(r.getId(), r);
|
||||
System.out.println("\nAprès modification :");
|
||||
|
||||
for (Rappel x : g.lister()) {
|
||||
System.out.println(" - " + x);
|
||||
}
|
||||
|
||||
// Supprimer
|
||||
// g.supprimerParId(r.getId());
|
||||
// System.out.println("\nAprès suppression :");
|
||||
|
||||
// for (Rappel x : g.lister()) {
|
||||
// System.out.println(" - " + x);
|
||||
|
||||
// }
|
||||
String cle = UserKey.lireOuCreerCle(); // clé locale
|
||||
uid = UtilisateurBD.getOrCreateIdByKey(cle); // crée ou récupère utilisateur
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
this.utilisateurId = uid;
|
||||
System.out.println("Utilisateur courant id=" + this.utilisateurId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Ajoute un nouveau rappel pour l’utilisateur courant.
|
||||
*
|
||||
* @param titre le titre du rappel
|
||||
* @param contenu le contenu ou la description du rappel
|
||||
* @param theme la catégorie ou le thème du rappel
|
||||
* @param rang la priorité ou l’ordre du rappel
|
||||
* @return l’identifiant du rappel nouvellement ajouté
|
||||
* @throws SQLException si une erreur SQL survient
|
||||
*/
|
||||
public int ajouter(String titre, String contenu, String theme, int rang) throws SQLException {
|
||||
Rappel r = new Rappel(titre, contenu, theme, rang);
|
||||
return RappelBD.ajouter(r, this.utilisateurId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Récupère tous les rappels de l’utilisateur courant.
|
||||
*
|
||||
* @return la liste des rappels enregistrés
|
||||
* @throws SQLException si une erreur SQL survient
|
||||
*/
|
||||
public List<Rappel> lister() throws SQLException {
|
||||
return RappelBD.listerParUtilisateur(this.utilisateurId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Modifie un rappel existant appartenant à l’utilisateur courant.
|
||||
*
|
||||
* @param id l’identifiant du rappel à modifier
|
||||
* @param r l’objet {@link Rappel} contenant les nouvelles informations
|
||||
* @return le nombre de lignes modifiées
|
||||
* @throws SQLException si une erreur SQL survient
|
||||
*/
|
||||
public int modifierParId(int id, Rappel r) throws SQLException {
|
||||
return RappelBD.modifier(id, r, this.utilisateurId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Supprime un rappel spécifique appartenant à l’utilisateur courant.
|
||||
*
|
||||
* @param id l’identifiant du rappel à supprimer
|
||||
* @return le nombre de lignes supprimées
|
||||
* @throws SQLException si une erreur SQL survient
|
||||
*/
|
||||
public int supprimerParId(int id) throws SQLException {
|
||||
return RappelBD.supprimer(id, this.utilisateurId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Supprime tous les rappels appartenant à l’utilisateur courant.
|
||||
*
|
||||
* @return le nombre de rappels supprimés
|
||||
* @throws SQLException si une erreur SQL survient
|
||||
*/
|
||||
public int viderTousMesRappels() throws SQLException {
|
||||
return RappelBD.supprimerToutPourUtilisateur(this.utilisateurId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Retourne l’identifiant de l’utilisateur courant.
|
||||
*
|
||||
* @return l’identifiant de l’utilisateur
|
||||
*/
|
||||
public int getUtilisateurId() {
|
||||
return this.utilisateurId;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user