From b73c6403aaff7a4f4a4bb1bb7c9f9a39e613a415 Mon Sep 17 00:00:00 2001 From: SIMAILA Djalim Date: Sun, 5 Jun 2022 00:34:19 +0200 Subject: [PATCH] =?UTF-8?q?Avanc=C3=A9e=20generale=20des=20evenements,=20p?= =?UTF-8?q?reparation=20du=20controller=20de=20la=20page=20des=20resultats?= =?UTF-8?q?=20pour=20l'ajout=20un=20binding=20ou=20d'un=20listener?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/fr/univ_amu/iut/Donnees.java | 12 ++++- .../fr/univ_amu/iut/fResultat/Controller.java | 47 +++++++++------- .../fr/univ_amu/iut/fResultat/FResultat.fxml | 11 ++-- .../fr/univ_amu/iut/fResultat/TableEntry.java | 54 +++++++++++++++++++ .../univ_amu/iut/fResultat/Utilisateur.java | 40 -------------- .../java/fr/univ_amu/iut/fp/Controller.java | 15 ++++++ src/main/java/fr/univ_amu/iut/fp/fp.fxml | 2 +- .../fr/univ_amu/iut/test/DAOFactoryTest.java | 2 +- .../fr/univ_amu/iut/test/DAOUsageTest.java | 53 ++++++++++++++++++ 9 files changed, 167 insertions(+), 69 deletions(-) create mode 100644 src/main/java/fr/univ_amu/iut/fResultat/TableEntry.java delete mode 100644 src/main/java/fr/univ_amu/iut/fResultat/Utilisateur.java create mode 100644 src/main/java/fr/univ_amu/iut/test/DAOUsageTest.java diff --git a/src/main/java/fr/univ_amu/iut/Donnees.java b/src/main/java/fr/univ_amu/iut/Donnees.java index 95b8ee7..5879dc7 100644 --- a/src/main/java/fr/univ_amu/iut/Donnees.java +++ b/src/main/java/fr/univ_amu/iut/Donnees.java @@ -1,14 +1,24 @@ package fr.univ_amu.iut; +import java.util.List; + import fr.univ_amu.iut.model.Academie; import fr.univ_amu.iut.model.Discipline; import fr.univ_amu.iut.model.Thematique; +import fr.univ_amu.iut.model.Usage; public class Donnees { private static Academie academieSelectionee = null; private static Thematique thematiqueSelectionee = null; private static Discipline disciplineSelectionee = Discipline.Toutes; - + private static List usagesObtenus; + + public static List getUsagesObtenus() { + return usagesObtenus; + } + public static void setUsagesObtenus(List usagesObtenus) { + Donnees.usagesObtenus = usagesObtenus; + } public static Academie getAcademieSelectionee() { return academieSelectionee; } diff --git a/src/main/java/fr/univ_amu/iut/fResultat/Controller.java b/src/main/java/fr/univ_amu/iut/fResultat/Controller.java index a166582..64542ad 100644 --- a/src/main/java/fr/univ_amu/iut/fResultat/Controller.java +++ b/src/main/java/fr/univ_amu/iut/fResultat/Controller.java @@ -10,42 +10,49 @@ import javafx.scene.control.TableView; import javafx.scene.control.cell.PropertyValueFactory; import java.net.URL; +import java.util.ArrayList; +import java.util.List; import java.util.ResourceBundle; +import fr.univ_amu.iut.Donnees; +import fr.univ_amu.iut.model.Discipline; +import fr.univ_amu.iut.model.Niveau; +import fr.univ_amu.iut.model.Usage; public class Controller implements Initializable{ @FXML - private TableColumn Disciplines; + private TableView table; @FXML - private TableColumn Niveaux; + private TableColumn discipline; @FXML - private TableColumn Noms; + private TableColumn niveau; @FXML - private TableColumn Numéro; + private TableColumn nom; @FXML - private TableView Table; - - @FXML - private TableColumn Types; - - ObservableList list = FXCollections.observableArrayList( - new Utilisateur(1,"Patrik","Maht","Blog","Terminal"), - new Utilisateur(2,"Mark","Chimie","Site","Seconde") - ); + private TableColumn description; @Override public void initialize(URL url, ResourceBundle resourceBundle) { - Noms.setCellValueFactory(new PropertyValueFactory("Noms")); - Numéro.setCellValueFactory(new PropertyValueFactory("Numéro")); - Disciplines.setCellValueFactory(new PropertyValueFactory("Disciplines")); - Types.setCellValueFactory(new PropertyValueFactory("Types")); - Niveaux.setCellValueFactory(new PropertyValueFactory("Niveaux")); - Table.setItems(list); - + + + // TODO MOVE THIS INTO A LISTENER THAT ACTUALLY WORKS + // List entries = new ArrayList<>(); + // for (Usage usage: Donnees.getUsagesObtenus()){ + // entries.add(new TableEntry(usage)); + // } + // ObservableList tableEntries = FXCollections.observableArrayList(entries); + // table.setItems(tableEntries); + + nom.setCellValueFactory(new PropertyValueFactory("nom")); + discipline.setCellValueFactory(new PropertyValueFactory("discipline")); + description.setCellValueFactory(new PropertyValueFactory("type")); + niveau.setCellValueFactory(new PropertyValueFactory("niveau")); + } + } diff --git a/src/main/java/fr/univ_amu/iut/fResultat/FResultat.fxml b/src/main/java/fr/univ_amu/iut/fResultat/FResultat.fxml index a10a08c..3739b4e 100644 --- a/src/main/java/fr/univ_amu/iut/fResultat/FResultat.fxml +++ b/src/main/java/fr/univ_amu/iut/fResultat/FResultat.fxml @@ -6,13 +6,12 @@ - + - - - - - + + + + diff --git a/src/main/java/fr/univ_amu/iut/fResultat/TableEntry.java b/src/main/java/fr/univ_amu/iut/fResultat/TableEntry.java new file mode 100644 index 0000000..41c3c75 --- /dev/null +++ b/src/main/java/fr/univ_amu/iut/fResultat/TableEntry.java @@ -0,0 +1,54 @@ +package fr.univ_amu.iut.fResultat; + +import java.util.List; + +import fr.univ_amu.iut.model.Usage; + +public class TableEntry { + + private String nom; + private String discipline; + private String description; + private String niveau; + + public TableEntry(Usage usage) { + nom = usage.getNom(); + discipline = usage.getDiscipline().getNom(); + description = usage.getDescription(); + niveau = usage.getNiveau().getNom(); + } + + public String getNom() { + return nom; + } + + public void setNom(String nom) { + this.nom = nom; + } + + public String getDiscipline() { + return discipline; + } + + public void setDiscipline(String discipline) { + this.discipline = discipline; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getNiveau() { + return niveau; + } + + public void setNiveau(String niveau) { + this.niveau = niveau; + } + + +} diff --git a/src/main/java/fr/univ_amu/iut/fResultat/Utilisateur.java b/src/main/java/fr/univ_amu/iut/fResultat/Utilisateur.java deleted file mode 100644 index 25e989b..0000000 --- a/src/main/java/fr/univ_amu/iut/fResultat/Utilisateur.java +++ /dev/null @@ -1,40 +0,0 @@ -package fr.univ_amu.iut.fResultat; - -import java.util.List; - -public class Utilisateur { - - private int Numéro ; - private String Noms; - private String Disciplines; - private String Types; - private String Niveaux; - - public Utilisateur(int numero, String noms, String disciplines, String types, String niveaux) { - Numéro = numero; - Noms = noms; - Disciplines = disciplines; - Types = types; - Niveaux = niveaux; - } - - public int getNuméro() { - return Numéro; - } - - public String getNoms() { - return Noms; - } - - public String getDisciplines() { - return Disciplines; - } - - public String getTypes() { - return Types; - } - - public String getNiveaux() { - return Niveaux; - } -} diff --git a/src/main/java/fr/univ_amu/iut/fp/Controller.java b/src/main/java/fr/univ_amu/iut/fp/Controller.java index 33e050d..cb2d755 100644 --- a/src/main/java/fr/univ_amu/iut/fp/Controller.java +++ b/src/main/java/fr/univ_amu/iut/fp/Controller.java @@ -4,16 +4,19 @@ import fr.univ_amu.iut.Donnees; import fr.univ_amu.iut.dao.DAODiscipline; import fr.univ_amu.iut.dao.DAORessource; import fr.univ_amu.iut.dao.DAOThematique; +import fr.univ_amu.iut.dao.DAOUsage; import fr.univ_amu.iut.dao.factory.DAOFactory; import fr.univ_amu.iut.dao.factory.DAOFactoryProducer; import fr.univ_amu.iut.dao.factory.DAOType; import fr.univ_amu.iut.model.Discipline; import fr.univ_amu.iut.model.Thematique; +import fr.univ_amu.iut.screenController.ScreenController; import fr.univ_amu.iut.view.map.France; import fr.univ_amu.iut.view.map.FranceBuilder; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.geometry.Insets; +import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.*; import javafx.scene.paint.Color; @@ -30,6 +33,7 @@ public class Controller implements Initializable { DAOFactory daoFactory; DAODiscipline daoDiscipline; DAOThematique daoThematique; + DAOUsage daoUsage; @FXML private Pane stackPaneFrance; @@ -40,6 +44,9 @@ public class Controller implements Initializable { @FXML private AnchorPane thematique; + @FXML + private Button recherche; + private void initFrance() { france = FranceBuilder.create() .backgroundColor(Color.web("#f5f0e1")) @@ -141,6 +148,7 @@ public class Controller implements Initializable { daoFactory = DAOFactoryProducer.getFactory(DAOType.TEST); daoDiscipline = daoFactory.createDAODiscipline(); daoThematique = daoFactory.createDAOThematique(); + daoUsage = daoFactory.createDAOUsage(); // a chaque fois @@ -149,6 +157,13 @@ public class Controller implements Initializable { placeButtonThematique(); placeButtonDiscipline(); + EventHandler handler = event ->{ + //TODO Recherche en fonctions des objets selectionnés + Donnees.setUsagesObtenus(daoUsage.findAll()); + + ScreenController.activate("Resultats"); + }; + recherche.setOnAction(handler); // matiere.getChildren().add(initButton(t.get(0).getNom(),38,30)); // matiere.getChildren().add(initButton("test",38,160)); } diff --git a/src/main/java/fr/univ_amu/iut/fp/fp.fxml b/src/main/java/fr/univ_amu/iut/fp/fp.fxml index b6939ce..2cd7895 100644 --- a/src/main/java/fr/univ_amu/iut/fp/fp.fxml +++ b/src/main/java/fr/univ_amu/iut/fp/fp.fxml @@ -41,6 +41,6 @@ -