user story 9
comme la plupart était déjà fait, j'ai juste : - ajouté un 3e bouton sur le menu pour consulter les demandes - mis à jour la fonction "finaliserDemande()" pour qu'on ne puisse finaliser que les demandes 'en cours' (car les demandes 'acceptés' n'ont pas été attribuées)
This commit is contained in:
parent
f15d31a14d
commit
4881462c38
2 changed files with 97 additions and 6 deletions
|
@ -132,16 +132,35 @@ public class BenevoleDemandesPage extends JFrame {
|
|||
int demandeId = (int) tableModel.getValueAt(selectedRow, 0);
|
||||
|
||||
try (Connection connection = DatabaseConnection.getConnection()) {
|
||||
String sql = "UPDATE demandes_aide SET statut = 'finalisée' WHERE id = ?";
|
||||
PreparedStatement statement = connection.prepareStatement(sql);
|
||||
statement.setInt(1, demandeId);
|
||||
statement.executeUpdate();
|
||||
// Verifier si la demande est bien 'en cours' d'abord
|
||||
String checkSql = "SELECT statut FROM demandes_aide WHERE id = ?";
|
||||
PreparedStatement checkStatement = connection.prepareStatement(checkSql);
|
||||
checkStatement.setInt(1, demandeId);
|
||||
ResultSet resultSet = checkStatement.executeQuery();
|
||||
|
||||
JOptionPane.showMessageDialog(this, "Demande finalisée avec succès.");
|
||||
loadDemandesAcceptees(); // Recharger les demandes après la finalisation
|
||||
if (resultSet.next()) {
|
||||
String currentStatus = resultSet.getString("statut");
|
||||
|
||||
if ("en cours".equals(currentStatus)) {
|
||||
// Mise à jour seulement si le statut est 'en cours'
|
||||
String updateSql = "UPDATE demandes_aide SET statut = 'finalisée' WHERE id = ?";
|
||||
PreparedStatement updateStatement = connection.prepareStatement(updateSql);
|
||||
updateStatement.setInt(1, demandeId);
|
||||
updateStatement.executeUpdate();
|
||||
|
||||
JOptionPane.showMessageDialog(this, "Demande finalisée avec succès.");
|
||||
} else {
|
||||
// Statut n'est pas 'en cours'
|
||||
JOptionPane.showMessageDialog(this, "Demande non finalisée car le statut n'est pas 'en cours'. (Statut actuel : " + currentStatus + ")");
|
||||
}
|
||||
loadDemandesAcceptees(); // Recharger les demandes après tentative/réssuite de finalisation
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
JOptionPane.showMessageDialog(this, "Erreur lors de la finalisation de la demande.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
72
src/main/java/controller/MainMenu.java
Normal file
72
src/main/java/controller/MainMenu.java
Normal file
|
@ -0,0 +1,72 @@
|
|||
package controller;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
public class MainMenu extends JFrame {
|
||||
private JButton ajouterUtilisateurButton;
|
||||
private JButton soumettreDemandeButton;
|
||||
private JButton consulterDemandeButton;
|
||||
|
||||
public MainMenu() {
|
||||
setTitle("Menu Principal");
|
||||
setSize(400, 300);
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
setLocationRelativeTo(null);
|
||||
setLayout(new GridBagLayout());
|
||||
|
||||
GridBagConstraints gbc = new GridBagConstraints();
|
||||
gbc.insets = new Insets(10, 10, 10, 10);
|
||||
gbc.fill = GridBagConstraints.HORIZONTAL;
|
||||
|
||||
ajouterUtilisateurButton = new JButton("Ajouter un utilisateur");
|
||||
gbc.gridx = 0;
|
||||
gbc.gridy = 0;
|
||||
add(ajouterUtilisateurButton, gbc);
|
||||
|
||||
soumettreDemandeButton = new JButton("Soumettre une demande d'aide");
|
||||
gbc.gridx = 0;
|
||||
gbc.gridy = 1;
|
||||
add(soumettreDemandeButton, gbc);
|
||||
|
||||
consulterDemandeButton = new JButton("Consulter les demandes d'aide acceptées");
|
||||
gbc.gridx = 0;
|
||||
gbc.gridy = 2;
|
||||
add(consulterDemandeButton, gbc);
|
||||
|
||||
ajouterUtilisateurButton.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
AjoutUtilisateur ajoutUtilisateur = new AjoutUtilisateur();
|
||||
ajoutUtilisateur.setVisible(true);
|
||||
dispose();
|
||||
}
|
||||
});
|
||||
|
||||
soumettreDemandeButton.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
SoumettreDemande soumettreDemande = new SoumettreDemande(1); // Test avec un utilisateur par défaut
|
||||
soumettreDemande.setVisible(true);
|
||||
dispose();
|
||||
}
|
||||
});
|
||||
|
||||
consulterDemandeButton.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
BenevoleDemandesPage benevoleDemandesPage = new BenevoleDemandesPage(1); // Test avec un utilisateur par défaut
|
||||
benevoleDemandesPage.setVisible(true);
|
||||
dispose();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
MainMenu menu = new MainMenu();
|
||||
menu.setVisible(true);
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue