This commit is contained in:
pro.boooooo 2022-12-08 04:29:47 +01:00
parent dd088c00a2
commit ef454e5a18
5 changed files with 58 additions and 24 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -10,6 +10,7 @@ import java.awt.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.TableModel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
@ -147,7 +148,6 @@ public class Controller implements ActionListener, ListSelectionListener {
@Override
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
this.e = this.db.getEtuList();
String groupeOption = this.pv.getComboSelection();
int groupeIndex = 0;
String text = this.pv.getSearchStud();
@ -432,6 +432,8 @@ public class Controller implements ActionListener, ListSelectionListener {
type = 2;
}
this.db.updateRow("ALTER TABLE fi_demandes AUTO_INCREMENT = " + this.r.size());
if (this.db.insertRow("fi_demandes", new String[] {
"id_eleve", "id_groupe", "message", "type" },
new String[] {
@ -632,7 +634,6 @@ public class Controller implements ActionListener, ListSelectionListener {
};
for (int i = 0; i <= this.r.size() - 1; i++) {
System.out.println(this.getGroupeById(this.r.get(i).getWitchGroupe()));
Object[] info = {
this.getEtuNameById(this.r.get(i).getEtuId()),
this.getGroupeById(this.r.get(i).getWitchGroupe()),
@ -837,6 +838,9 @@ public class Controller implements ActionListener, ListSelectionListener {
}
public JTable initTable() {
this.e = this.db.getEtuList();
this.g = this.db.getGroupeList();
Object[][] data = new Object[this.e.size()][3];
String[] title = {
"Nom",
@ -893,6 +897,22 @@ public class Controller implements ActionListener, ListSelectionListener {
return this.g;
}
public BDatabase getDatabase() {
return this.db;
}
public void setEtudiants(ArrayList<Etudiant> e) {
this.e = e;
}
public void setGroupes(ArrayList<Groupe> g) {
this.g = g;
}
public void setRequest(ArrayList<Requete> r) {
this.r = r;
}
public void setMainMenu(MainMenu m) {
this.parent = m;
}

View File

@ -11,10 +11,11 @@ public class MainMenu extends JFrame {
public static final int MENU = 0, ADMIN = 1, PROF = 2, STUDENT = 3;
private static final int FULL = 4, WINDOW = 5;
private final static Dimension MINIMUM_SIZE = new Dimension(960, 600);
private final CardLayout cards = new CardLayout(), adminCards = new CardLayout(), profCards = new CardLayout(), studentCards = new CardLayout();
private final CardLayout cards = new CardLayout(), adminCards = new CardLayout(), profCards = new CardLayout(),
studentCards = new CardLayout();
private final JPanel adminPanel = new JPanel(), profPanel = new JPanel(), studentPanel = new JPanel();
private final Color adminColor = new Color(255, 2, 2);
private final Color profColor = new Color(182, 2, 189);
private final Color adminColor = new Color(255, 2, 2);
private final Color profColor = new Color(182, 2, 189);
private final Color studentColor = new Color(53, 242, 242);
private int screenStatus = WINDOW;
private int currentView = MENU;
@ -26,7 +27,7 @@ public class MainMenu extends JFrame {
private JTable table;
private int cardIndex = 0;
private boolean uniqueView = false;
private String[] viewName = {"Administrateur", "Professeur", "Etudiant"};
private String[] viewName = { "Administrateur", "Professeur", "Etudiant" };
private final CustomJButton[] buttonTab = {
new CustomJButton(viewName[0]),
new CustomJButton(viewName[1]),
@ -35,6 +36,7 @@ public class MainMenu extends JFrame {
/**
* Constructeur de base
*
* @param listener controller initialisé dans le main
*/
public MainMenu(Controller listener) {
@ -60,10 +62,12 @@ public class MainMenu extends JFrame {
}
/**
* Construit un objet MainMenu sur la vue sélectionnée et le mode d'affichage choisi
* @param listener controller initialisé dans le main
* Construit un objet MainMenu sur la vue sélectionnée et le mode d'affichage
* choisi
*
* @param listener controller initialisé dans le main
* @param selectedView vue à afficher
* @param screenStyle disposition d'affichage plein écran ou fenêtré
* @param screenStyle disposition d'affichage plein écran ou fenêtré
*/
public MainMenu(Controller listener, int selectedView, int screenStyle) {
super();
@ -82,6 +86,7 @@ public class MainMenu extends JFrame {
/**
* Initialise les paramètres de la fenêtre
*
* @param listener
*/
private void init(Controller listener) {
@ -106,6 +111,7 @@ public class MainMenu extends JFrame {
/**
* Action réalisée par les boutons du menu principal
*
* @param e
*/
private void action(ActionEvent e) {
@ -127,16 +133,16 @@ public class MainMenu extends JFrame {
JMenu menu = new JMenu("Menu"), view = new JMenu("Affichage");
if (!uniqueView) {
JMenuItem adminMenuItem = new JMenuItem("Vue "+viewName[0]);
JMenuItem adminMenuItem = new JMenuItem("Vue " + viewName[0]);
adminMenuItem.addActionListener((event) -> changeView(1));
JMenuItem profMenuItem = new JMenuItem("Vue "+viewName[1]);
JMenuItem profMenuItem = new JMenuItem("Vue " + viewName[1]);
profMenuItem.addActionListener((event) -> changeView(2));
JMenuItem studentMenuItem = new JMenuItem("Vue "+viewName[2]);
JMenuItem studentMenuItem = new JMenuItem("Vue " + viewName[2]);
studentMenuItem.addActionListener((event) -> changeView(3));
JMenuItem mainMenuItem = new JMenuItem("Retourner au menu principal");
JMenuItem mainMenuItem = new JMenuItem("Retourner au menu principal");
mainMenuItem.addActionListener(this::backtoMainMenu);
menu.add(adminMenuItem);
@ -145,13 +151,13 @@ public class MainMenu extends JFrame {
menu.add(mainMenuItem);
}
JMenuItem fullScreenMenuItem = new JMenuItem("Plein écran");
JMenuItem fullScreenMenuItem = new JMenuItem("Plein écran");
fullScreenMenuItem.addActionListener(this::setFullScreen);
JMenuItem notFullScreenMenuItem = new JMenuItem("Fenêtré");
JMenuItem notFullScreenMenuItem = new JMenuItem("Fenêtré");
notFullScreenMenuItem.addActionListener(this::unsetFullScreen);
JMenuItem quitMenuItem = new JMenuItem("Quitter");
JMenuItem quitMenuItem = new JMenuItem("Quitter");
quitMenuItem.addActionListener((event) -> System.exit(0));
menu.add(quitMenuItem);
@ -165,9 +171,9 @@ public class MainMenu extends JFrame {
this.setJMenuBar(menuBar);
}
/**
* Crée une vue avec le résultat de la base de données à côté
*
* @param sidePanel actions relatives à l'utilisateur
* @param origin
* @return panel contenant les boutons et la table
@ -178,17 +184,14 @@ public class MainMenu extends JFrame {
panel.setLayout(new GridLayout(1, 2));
if (origin.equals(viewName[0])){
if (origin.equals(viewName[0])) {
sidePanel.setBackground(adminColor);
System.out.println("admin");
} else if (origin.equals(viewName[1])) {
sidePanel.setBackground(profColor);
System.out.println("prof");
} else {
sidePanel.setBackground(studentColor);
System.out.println("student");
}
panel.add(sidePanel);
@ -201,6 +204,7 @@ public class MainMenu extends JFrame {
/**
* Permet de naviguer entre les vues
*
* @param index index de la vue
*/
private void changeView(int index) {
@ -224,7 +228,7 @@ public class MainMenu extends JFrame {
this.profCards.next(this.profPanel);
this.menuBar.setBackground(this.profColor);
} else if (index == 3){
} else if (index == 3) {
this.cardIndex = index;
this.currentView = STUDENT;
this.setTitle(this.viewName[2]);
@ -239,6 +243,7 @@ public class MainMenu extends JFrame {
/**
* Met à jour la table de cet objet
*
* @param table nouvelle table
*/
public void updateTable(JTable table) {
@ -259,6 +264,7 @@ public class MainMenu extends JFrame {
/**
* Crée le menu principal
*
* @return panel contenant le menu principal
*/
private JPanel firstCard() {
@ -272,7 +278,7 @@ public class MainMenu extends JFrame {
GridBagConstraints gbc = new GridBagConstraints();
gbc.insets = insets;
gbc.gridwidth = 1;
gbc.gridx = 0;
gbc.gridx = 0;
for (int i = 0; i < buttonTab.length; i++) {
gbc.gridy = i;
@ -288,6 +294,7 @@ public class MainMenu extends JFrame {
/**
* Initialise la vue sélectionnée
*
* @param index index de la vue choisie
*/
private void initView(int index) {
@ -331,6 +338,7 @@ public class MainMenu extends JFrame {
/**
* Crée la vue administrateur
*
* @return panel contenant la vue admin
*/
private JPanel adminView() {
@ -342,6 +350,7 @@ public class MainMenu extends JFrame {
/**
* Crée la vue professeur
*
* @return panel contenant la vue professeur
*/
private JPanel profView() {
@ -353,6 +362,7 @@ public class MainMenu extends JFrame {
/**
* Crée la vue étudiant
*
* @return panel contenant la vue étudiant
*/
private JPanel studentView() {
@ -372,6 +382,7 @@ public class MainMenu extends JFrame {
/**
* Change le mode d'affichage
*
* @param screenStyle
*/
private void setScreenStyle(int screenStyle) {
@ -387,6 +398,7 @@ public class MainMenu extends JFrame {
/**
* Passe la fenêtre en plein écran
*
* @param e
*/
private void setFullScreen(ActionEvent e) {
@ -398,6 +410,7 @@ public class MainMenu extends JFrame {
/**
* Passe la fenêtre en fenêtré
*
* @param e
*/
private void unsetFullScreen(ActionEvent e) {
@ -409,6 +422,7 @@ public class MainMenu extends JFrame {
/**
* Renvoie au menu principal
*
* @param e
*/
private void backtoMainMenu(ActionEvent e) {