diff --git a/build/API/AbstractChangementFactory.class b/build/API/AbstractChangementFactory.class index 7bb0ac2..3ce3579 100644 Binary files a/build/API/AbstractChangementFactory.class and b/build/API/AbstractChangementFactory.class differ diff --git a/build/API/AbstractGroupeFactory.class b/build/API/AbstractGroupeFactory.class index b07b9a9..a04ccaa 100644 Binary files a/build/API/AbstractGroupeFactory.class and b/build/API/AbstractGroupeFactory.class differ diff --git a/build/API/Changement.class b/build/API/Changement.class index 29fe6e5..9b7fd00 100644 Binary files a/build/API/Changement.class and b/build/API/Changement.class differ diff --git a/build/API/Etudiant.class b/build/API/Etudiant.class index 81c1c3d..5b9251c 100644 Binary files a/build/API/Etudiant.class and b/build/API/Etudiant.class differ diff --git a/build/API/Groupe.class b/build/API/Groupe.class index 2de578e..188c49b 100644 Binary files a/build/API/Groupe.class and b/build/API/Groupe.class differ diff --git a/build/API/MonPrint.class b/build/API/MonPrint.class index 92a67e7..7f0751c 100644 Binary files a/build/API/MonPrint.class and b/build/API/MonPrint.class differ diff --git a/build/API/TypeGroupe.class b/build/API/TypeGroupe.class index 8566d06..f93ed25 100644 Binary files a/build/API/TypeGroupe.class and b/build/API/TypeGroupe.class differ diff --git a/build/MNP/AbstractChangementFactoryNP.class b/build/MNP/AbstractChangementFactoryNP.class index 29869c1..4281ba3 100644 Binary files a/build/MNP/AbstractChangementFactoryNP.class and b/build/MNP/AbstractChangementFactoryNP.class differ diff --git a/build/MNP/AbstractGroupeFactoryNP.class b/build/MNP/AbstractGroupeFactoryNP.class index e7f1083..1e9902c 100644 Binary files a/build/MNP/AbstractGroupeFactoryNP.class and b/build/MNP/AbstractGroupeFactoryNP.class differ diff --git a/build/MNP/ChangementNP.class b/build/MNP/ChangementNP.class index 98bad41..1a468d9 100644 Binary files a/build/MNP/ChangementNP.class and b/build/MNP/ChangementNP.class differ diff --git a/build/MNP/EtudiantNP.class b/build/MNP/EtudiantNP.class index f1208d6..ea6f454 100644 Binary files a/build/MNP/EtudiantNP.class and b/build/MNP/EtudiantNP.class differ diff --git a/build/MNP/GroupeNP.class b/build/MNP/GroupeNP.class index d92474f..505c030 100644 Binary files a/build/MNP/GroupeNP.class and b/build/MNP/GroupeNP.class differ diff --git a/build/Test/AdminView.class b/build/Test/AdminView.class index b9b0701..83fd6d0 100644 Binary files a/build/Test/AdminView.class and b/build/Test/AdminView.class differ diff --git a/src/Test/BDatabase.java b/src/Test/BDatabase.java index b45dcda..60b4f54 100644 --- a/src/Test/BDatabase.java +++ b/src/Test/BDatabase.java @@ -255,12 +255,16 @@ public class BDatabase { * Recupere le nombre d'etudiant par groupe * @return */ - public ArrayList getNbrEtuGroupes() { - ArrayList NGroupe = new ArrayList<>(); - ArrayList groupeNB = this.fetchAll("SELECT COUNT(DISTINCT groupe) FROM fi_eleves;"); - for(int i = 0; i <= NGroupe.Goupe(groupeNB); i++) { - ArrayList grpnb = this.fetchAll("Select count(id) from fi_eleves where groupe="+i+";"); + /** +* Recuperer le nombre de membre d'un groupe +* +* @param groupe_id le groupes +* @return le nombre de membre +* */ +public int getMemberCount(int groupe_id) { + ArrayList forCount = this.fetchAll( + "SELECT nom FROM fi_eleves WHERE groupe=" + groupe_id); - } - } + return forCount.size(); +} } \ No newline at end of file diff --git a/src/Test/StudentView.java b/src/Test/StudentView.java new file mode 100644 index 0000000..2a92a9f --- /dev/null +++ b/src/Test/StudentView.java @@ -0,0 +1,129 @@ +package Test; + +import API.Etudiant; +import API.Groupe; +import javax.swing.JComboBox; +import javax.swing.JTextField; +import javax.swing.JButton; +import javax.swing.JLabel; +import javax.swing.JPanel; + +import java.awt.Dimension; +import java.awt.Insets; +import java.awt.GridBagConstraints; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; +import java.util.ArrayList; + +public class ProfView extends JPanel { + private final ArrayList e; + private final ArrayList g; + private final Controller listener; + private JComboBox groupeOption; + private JTextField text; + + public ProfView(ArrayList e, ArrayList g, Controller listener) { + super(); + + this.listener = listener; + this.e = e; + this.g = g; + + this.Display(); + } + + public String getComboSelection() { + return (String) this.groupeOption.getSelectedItem(); + } + + public String getSearchStud() { + return this.text.getText(); + } + + public int getComboSelectionIndex() { + return this.groupeOption.getSelectedIndex(); + } + + public void Display() { + BLayout settings = new BLayout(); + settings.setPositionX(0); + settings.setPositionY(6); + + settings.setPositionY(0); + JButton studList = new JButton("Voir la liste des etudiants"); + studList.setActionCommand("pv::GetStudList"); + studList.addActionListener(this.listener); + this.add(studList, settings); + + settings.setPositionY(1); + this.add(new JLabel(" "), settings); + + settings.setPositionY(2); + JLabel gs = new JLabel("Afficher les etudiants se trouvant dans le groupe :"); + this.add(gs, settings); + + settings.setPositionY(3); + settings.setPadding(new Insets(0, 0, 0, 50)); + String[] groupeList = new String[this.g.size()]; + + for(int i = 0; i <= this.g.size()-1; i++) { + groupeList[i] = this.g.get(i).getName(); + } + + this.groupeOption = new JComboBox<>(groupeList); + this.groupeOption.setPreferredSize(new Dimension(110, 30)); + this.add(groupeOption, settings); + + settings.setPositionY(3); + settings.setPadding(new Insets(0, 0, 0, 0)); + settings.setAnchor(GridBagConstraints.EAST); + JButton confirm = new JButton("Rechercher"); + confirm.setActionCommand("pv::GetListFiltered"); + confirm.addActionListener(this.listener); + this.add(confirm, settings); + + settings.setAnchor(GridBagConstraints.CENTER); + + settings.setPositionY(4); + this.add(new JLabel(" "), settings); + + settings.setPositionY(5); + JLabel pf = new JLabel("Rechercher un etudiant : "); + this.add(pf, settings); + + settings.setPositionY(6); + settings.setPadding(new Insets(0, 0, 0, 50)); + this.text = new JTextField(); + this.text.setPreferredSize(new Dimension(110, 30)); + text.addKeyListener(new KeyAdapter() { + public void keyTyped(KeyEvent e) { + if (text.getText().length() >= 3 ) + e.consume(); + } + }); + this.add(this.text, settings); + + settings.setPositionY(6); + settings.setPadding(new Insets(0, 0, 0, 0)); + settings.setAnchor(GridBagConstraints.EAST); + JButton searchTLetters = new JButton("Rechercher"); + searchTLetters.addActionListener(this.listener); + searchTLetters.setActionCommand("pv::SearchStudentPer3Letters"); + this.add(searchTLetters, settings); + + JButton changGrp = new JButton("Changer de groupe"); + changGrp.addActionListener(this.listener); + this.add(changGrp, settings); + + if(this.db.insertRow(la_table, new String[]{"nom"}, new String[]{"felix"})) { + Affiche "OUHRAA" + } else { + Affiche "Marche ap" + } + + this.repaint(); + + + + } +}