Ajout doc Models
This commit is contained in:
parent
db48814c4f
commit
fae6867477
@ -2,6 +2,9 @@ package fr.iutfbleau.projetIHM2022FI2.API;
|
||||
|
||||
import java.util.Set;
|
||||
import javax.swing.JFrame;
|
||||
/**
|
||||
* Le Model de L'IHM
|
||||
*/
|
||||
public interface Model {
|
||||
/**
|
||||
* Fonction pour refresh/changer de groupe d'affichage
|
||||
@ -13,13 +16,20 @@ public void showGroupe(Groupe g);
|
||||
* @return JFrame la fenetre
|
||||
*/
|
||||
public JFrame getFenetre();
|
||||
|
||||
public Set<Etudiant> getEtudiant();
|
||||
/**
|
||||
* permet d'obtenir l'ensemble des etudiants
|
||||
* @return
|
||||
*/
|
||||
public Set<Etudiant> getEtudiant();
|
||||
|
||||
// ***********************
|
||||
// FONCTION POUR SUPRIMER UN ETUDIANT
|
||||
// ***********************
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un etudiant.
|
||||
* @param e l'etudiant a supprimer
|
||||
* @return boolean true si l'etudiant a ete supprimer, false sinon
|
||||
*/
|
||||
public boolean deleteEtu(Etudiant e);
|
||||
|
||||
|
||||
|
@ -21,15 +21,26 @@ import fr.iutfbleau.projetIHM2022FI2.MNP.ETU.View.FenetreGroupe;
|
||||
* Le Model de L'IHM
|
||||
*/
|
||||
public class ModelEtu implements Model{
|
||||
|
||||
// le panel qui contient la fenetre de groupe
|
||||
private JPanel panGroupe;
|
||||
// la fenetre de groupe
|
||||
private FenetreGroupe fenGr;
|
||||
//la fenetre d'etudiant
|
||||
private FenetreEtudiant fenEtu;
|
||||
// le groupe courant
|
||||
private AbstractGroupeFactory promo;
|
||||
// le changement courant
|
||||
private AbstractChangementFactory changement;
|
||||
// la fenetre principale
|
||||
private JFrame fenetre;
|
||||
// l'etudiant courant
|
||||
private Etudiant Selected;
|
||||
|
||||
/**
|
||||
* Constructeur du Model
|
||||
* @param facto le groupe courant
|
||||
* @param change le changement courant
|
||||
*/
|
||||
public ModelEtu(AbstractGroupeFactory facto, AbstractChangementFactory change){
|
||||
this.fenetre=new JFrame();
|
||||
this.fenetre.setSize(1200, 720);
|
||||
@ -92,6 +103,11 @@ public class ModelEtu implements Model{
|
||||
return fenetre;
|
||||
}
|
||||
|
||||
/**
|
||||
* Permet d'obtenir les étudiants du groupe courant.
|
||||
* @return les étudiants du groupe courant
|
||||
*/
|
||||
|
||||
@Override
|
||||
public Set<Etudiant> getEtudiant(){
|
||||
return this.promo.getPromotion().getEtudiants();
|
||||
@ -131,7 +147,11 @@ public class ModelEtu implements Model{
|
||||
// **************************
|
||||
// FONCTION POUR LES CHANGEMENTS
|
||||
// ******************************
|
||||
|
||||
/**
|
||||
* Permet de changer de groupe.
|
||||
* @param e l'étudiant qui change de groupe
|
||||
* @param g le groupe dans lequel l'étudiant va
|
||||
*/
|
||||
@Override
|
||||
public void changeGroupe(Etudiant e, Groupe b){
|
||||
if(b==null)
|
||||
@ -161,7 +181,10 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
this.showGroupe(this.fenGr.getG());
|
||||
}
|
||||
|
||||
/**
|
||||
* pemet d'obtenir les sous groupes du groupe courant.
|
||||
* @return les sous groupes du groupe courant
|
||||
*/
|
||||
@Override
|
||||
public Set<Groupe> getGroupePartition(){
|
||||
this.promo.refreshALL(this.fenGr.getG().getPointPoint());
|
||||
@ -175,35 +198,60 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
return retour;
|
||||
}
|
||||
|
||||
/**
|
||||
* ajoute un étudiant dans un groupe.
|
||||
* @param e l'étudiant à ajouter
|
||||
* @param g le groupe dans lequel l'étudiant va
|
||||
* @return true si l'ajout a réussi, false sinon
|
||||
*/
|
||||
@Override
|
||||
public boolean addEtudiant(Groupe g, Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* supprime un groupe.
|
||||
* @param g le groupe à supprimer
|
||||
*/
|
||||
@Override
|
||||
public void delete(Groupe g) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* rennome un groupe.
|
||||
* @param g le groupe à renommer
|
||||
* @param nom le nouveau nom du groupe
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
public void rename(String name, Groupe g) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction permetant de créer une partition d'un groupe
|
||||
* @param g le groupe a partitionner
|
||||
* @param n le nombre de partition
|
||||
* @param name le nom des partition
|
||||
*/
|
||||
@Override
|
||||
public void partition(Groupe g, int n, String name) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction permettant de créer un sous-groupe d'un groupe
|
||||
* @param g le groupe parent
|
||||
* @param name le nom du sous-groupe
|
||||
* @param min le nombre min d'etudiant
|
||||
* @param max le nombre max d'etudiant
|
||||
* @param ajout la liste des étudiants a ajouter au groupe
|
||||
*/
|
||||
@Override
|
||||
public void free(Groupe g, String name, int min, int max, Set<Etudiant> ajout) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -211,33 +259,56 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* ajoute une nouvelle promotion
|
||||
* @param min le nombre min
|
||||
* @param max le nombre max
|
||||
* @param name le nom
|
||||
* @param ajout les etudiant a ajouter a la promo
|
||||
*/
|
||||
@Override
|
||||
public void addPromo(int min, int max, String name, Set<Etudiant> ajout) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un etudiant.
|
||||
* @param e l'etudiant a supprimer
|
||||
* @return boolean true si l'etudiant a ete supprimer, false sinon
|
||||
|
||||
*/
|
||||
@Override
|
||||
public boolean deleteEtu(Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour afficher une fenetre listnatn les changements
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
public void listChange() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour effectuer un changement
|
||||
* @param Changement le changement a effecteur
|
||||
*/
|
||||
@Override
|
||||
public void change(Changement change) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction supprimant un changement
|
||||
*
|
||||
* @param to_delete la changement a delete
|
||||
*/
|
||||
@Override
|
||||
public void deleteChange(Changement to_delete) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -245,13 +316,20 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction affichant les raison d'un changement
|
||||
*
|
||||
* @param change le changement
|
||||
*/
|
||||
@Override
|
||||
public void showRaisonChange(Changement change) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction affichant une fentre pour trouver un etudiant et tous ses groupes asociée
|
||||
*/
|
||||
@Override
|
||||
public void findEtu() {
|
||||
// TODO Auto-generated method stub
|
||||
@ -259,6 +337,11 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour recuperer les etudiant avec ce nom
|
||||
* @param name le nom de(s) etudiants
|
||||
* @return la liste
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtu(String name) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -266,6 +349,10 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*affiche les groupe d'un etudiant
|
||||
* @param e l'etudiant
|
||||
*/
|
||||
@Override
|
||||
public void showGroupOfEtudiant(Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
|
@ -20,13 +20,27 @@ import fr.iutfbleau.projetIHM2022FI2.Permanent.View.Chargement;
|
||||
*/
|
||||
public class ModelProf implements Model{
|
||||
|
||||
// le panel qui contient la fenetre de groupe
|
||||
private JPanel panGroupe;
|
||||
// la fenetre de groupe
|
||||
private FenetreGroupe fenGr;
|
||||
//la fenetre d'etudiant
|
||||
private FenetreEtudiant fenEtu;
|
||||
// le groupe courant
|
||||
private AbstractGroupeFactory promo;
|
||||
// le changement courant
|
||||
private AbstractChangementFactory changement;
|
||||
// la fenetre principale
|
||||
private JFrame fenetre;
|
||||
// l'etudiant courant
|
||||
private Etudiant Selected;
|
||||
|
||||
/**
|
||||
* Constructeur du Model.
|
||||
*
|
||||
* @param agf le groupe principal
|
||||
* @param chan le changement courant
|
||||
*/
|
||||
public ModelProf(AbstractGroupeFactory agf, AbstractChangementFactory chan){
|
||||
this.fenetre=new JFrame();
|
||||
this.fenetre.setSize(1200, 720);
|
||||
@ -87,7 +101,10 @@ public class ModelProf implements Model{
|
||||
public JFrame getFenetre() {
|
||||
return fenetre;
|
||||
}
|
||||
|
||||
/**
|
||||
* permet d'obtenir l'ensemble des etudiants
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtudiant(){
|
||||
return this.promo.getPromotion().getEtudiants();
|
||||
@ -96,7 +113,11 @@ public class ModelProf implements Model{
|
||||
// **************************
|
||||
// FONCTION POUR LES CHANGEMENTS
|
||||
// ******************************
|
||||
|
||||
/**
|
||||
* Créer un changement depuis le groupe courant
|
||||
* @param e l'etudiant
|
||||
* @param b le groupe a changer
|
||||
*/
|
||||
@Override
|
||||
public void changeGroupe(Etudiant e, Groupe b){
|
||||
if(b==null)
|
||||
@ -126,7 +147,11 @@ public class ModelProf implements Model{
|
||||
}
|
||||
this.showGroupe(this.fenGr.getG());
|
||||
}
|
||||
|
||||
/**
|
||||
* Retourn les groupe auquel on peut demander a changer depuis le groupe courant
|
||||
*
|
||||
* @return la liste des groupes
|
||||
*/
|
||||
@Override
|
||||
public Set<Groupe> getGroupePartition(){
|
||||
this.promo.refreshALL(this.fenGr.getG().getPointPoint());
|
||||
@ -140,14 +165,22 @@ public class ModelProf implements Model{
|
||||
}
|
||||
return retour;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour ajouter un étudiant au groupe
|
||||
* @param g
|
||||
* @param e
|
||||
* @return boolean pour savoir si il a pus être ajouter
|
||||
*/
|
||||
@Override
|
||||
public boolean addEtudiant(Groupe g, Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un groupe
|
||||
* @param g le groupe a supprimer
|
||||
*/
|
||||
@Override
|
||||
public void delete(Groupe g) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -155,6 +188,11 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour renomer un groupe
|
||||
* @param name
|
||||
* @param g
|
||||
*/
|
||||
@Override
|
||||
public void rename(String name, Groupe g) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -162,6 +200,12 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction permetant de créer une partition d'un groupe
|
||||
* @param g le groupe a partitionner
|
||||
* @param n le nombre de partition
|
||||
* @param name le nom des partition
|
||||
*/
|
||||
@Override
|
||||
public void partition(Groupe g, int n, String name) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -169,26 +213,47 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction permettant de créer un sous-groupe d'un groupe
|
||||
* @param g le groupe parent
|
||||
* @param name le nom du sous-groupe
|
||||
* @param min le nombre min d'etudiant
|
||||
* @param max le nombre max d'etudiant
|
||||
* @param ajout la liste des étudiants a ajouter au groupe
|
||||
*/
|
||||
@Override
|
||||
public void free(Groupe g, String name, int min, int max, Set<Etudiant> ajout) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* ajoute une nouvelle promotion
|
||||
* @param min le nombre min
|
||||
* @param max le nombre max
|
||||
* @param name le nom
|
||||
* @param ajout les etudiant a ajouter a la promo
|
||||
*/
|
||||
@Override
|
||||
public void addPromo(int min, int max, String name, Set<Etudiant> ajout) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un etudiant.
|
||||
* @param e l'etudiant a supprimer
|
||||
* @return boolean true si l'etudiant a ete supprimer, false sinon
|
||||
*/
|
||||
@Override
|
||||
public boolean deleteEtu(Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour afficher une fenetre listnatn les changements
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
public void listChange() {
|
||||
// TODO Auto-generated method stub
|
||||
@ -196,13 +261,21 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour effectuer un changement
|
||||
* @param Changement le changement a effecteur
|
||||
*/
|
||||
@Override
|
||||
public void change(Changement change) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction supprimant un changement
|
||||
*
|
||||
* @param to_delete la changement a delete
|
||||
*/
|
||||
@Override
|
||||
public void deleteChange(Changement to_delete) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -210,27 +283,41 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction affichant les raison d'un changement
|
||||
*
|
||||
* @param change le changement
|
||||
*/
|
||||
@Override
|
||||
public void showRaisonChange(Changement change) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction affichant une fentre pour trouver un etudiant et tous ses groupes asociée
|
||||
*/
|
||||
@Override
|
||||
public void findEtu() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour recuperer les etudiant avec ce nom
|
||||
* @param name le nom de(s) etudiants
|
||||
* @return la liste
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtu(String name) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*affiche les groupe d'un etudiant
|
||||
* @param e l'etudiant
|
||||
*/
|
||||
@Override
|
||||
public void showGroupOfEtudiant(Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
|
@ -26,13 +26,24 @@ import fr.iutfbleau.projetIHM2022FI2.Permanent.View.Chargement;
|
||||
*/
|
||||
public class ModelRoot implements Model{
|
||||
|
||||
// le panel qui contient la fenetre de groupe
|
||||
private JPanel panGroupe;
|
||||
// la fenetre de groupe
|
||||
private FenetreGroupe fenGr;
|
||||
//la fenetre d'etudiant
|
||||
private FenetreEtudiant fenEtu;
|
||||
// le groupe courant
|
||||
private AbstractGroupeFactory promo;
|
||||
// le changement courant
|
||||
private AbstractChangementFactory changement;
|
||||
private FenetreChangement fenChange;
|
||||
// la fenetre principale
|
||||
private JFrame fenetre;
|
||||
|
||||
/**
|
||||
* Constructeur du model.
|
||||
* @param agf le groupe courant
|
||||
* @param change le changement courant
|
||||
*/
|
||||
public ModelRoot(AbstractGroupeFactory agf, AbstractChangementFactory change){
|
||||
this.fenetre=new JFrame();
|
||||
this.fenetre.setSize(1200, 720);
|
||||
@ -90,7 +101,10 @@ public class ModelRoot implements Model{
|
||||
public JFrame getFenetre() {
|
||||
return fenetre;
|
||||
}
|
||||
|
||||
/**
|
||||
* permet d'obtenir l'ensemble des etudiants
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtudiant(){
|
||||
return this.promo.getEtudiants(null);
|
||||
@ -99,7 +113,11 @@ public class ModelRoot implements Model{
|
||||
// ***********************
|
||||
// FONCTION POUR SUPRIMER UN ETUDIANT
|
||||
// ***********************
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un etudiant.
|
||||
* @param e l'etudiant a supprimer
|
||||
* @return boolean true si l'etudiant a ete supprimer, false sinon
|
||||
*/
|
||||
@Override
|
||||
public boolean deleteEtu(Etudiant e){
|
||||
if(this.deleteEtutoChildren(e, this.fenGr.getG())){
|
||||
@ -110,7 +128,12 @@ public class ModelRoot implements Model{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Permet de savoir si un étudiant peut être supprimé
|
||||
* @param e l'étudiant à supprimer
|
||||
* @param g le groupe dans lequel on cherche
|
||||
* @return true si possible, false sinon
|
||||
*/
|
||||
private boolean deleteEtutoChildren(Etudiant e, Groupe g){
|
||||
if(g.getMax()<g.getEtudiants().size()-1)
|
||||
return false;
|
||||
@ -270,7 +293,13 @@ public class ModelRoot implements Model{
|
||||
}
|
||||
this.showGroupe(g);
|
||||
}
|
||||
|
||||
/**
|
||||
* ajoute une nouvelle promotion
|
||||
* @param min le nombre min
|
||||
* @param max le nombre max
|
||||
* @param name le nom
|
||||
* @param ajout les etudiant a ajouter a la promo
|
||||
*/
|
||||
@Override
|
||||
public void addPromo(int min, int max, String name, Set<Etudiant> ajout){
|
||||
Chargement ch=new Chargement(this.fenetre);
|
||||
@ -286,7 +315,11 @@ public class ModelRoot implements Model{
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Créer un changement depuis le groupe courant
|
||||
* @param e l'etudiant
|
||||
* @param b le groupe a changer
|
||||
*/
|
||||
@Override
|
||||
public void changeGroupe(Etudiant e, Groupe b){
|
||||
if(b==null)
|
||||
@ -316,7 +349,11 @@ public class ModelRoot implements Model{
|
||||
}
|
||||
this.showGroupe(this.fenGr.getG());
|
||||
}
|
||||
|
||||
/**
|
||||
* Retourn les groupe auquel on peut demander a changer depuis le groupe courant
|
||||
*
|
||||
* @return la liste des groupes
|
||||
*/
|
||||
@Override
|
||||
public Set<Groupe> getGroupePartition(){
|
||||
this.promo.refreshALL(this.fenGr.getG().getPointPoint());
|
||||
@ -333,13 +370,20 @@ public class ModelRoot implements Model{
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see fr.iutfbleau.projetIHM2022FI2.API.Model#listChange()
|
||||
*/
|
||||
/**
|
||||
* Fonction pour afficher une fenetre listnatn les changements
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
public void listChange() {
|
||||
this.fenChange=new FenetreChangement(changement, this);
|
||||
JOptionPane.showMessageDialog(this.fenetre, new JScrollPane(this.fenChange), "liste des changements", JOptionPane.OK_OPTION);
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour effectuer un changement
|
||||
* @param Changement le changement a effecteur
|
||||
*/
|
||||
@Override
|
||||
public void change(Changement change) {
|
||||
this.changement.applyChangement(change);
|
||||
@ -349,17 +393,29 @@ public class ModelRoot implements Model{
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction supprimant un changement
|
||||
*
|
||||
* @param to_delete la changement a delete
|
||||
*/
|
||||
@Override
|
||||
public void deleteChange(Changement to_delete) {
|
||||
this.changement.deleteChangement(to_delete);
|
||||
this.fenChange.refresh();
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction affichant les raison d'un changement
|
||||
*
|
||||
* @param change le changement
|
||||
*/
|
||||
@Override
|
||||
public void showRaisonChange(Changement change) {
|
||||
JOptionPane.showMessageDialog(this.fenetre, new JLabel(change.getRaison()), "Raison de la demande", JOptionPane.OK_OPTION);
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction affichant une fentre pour trouver un etudiant et tous ses groupes asociée
|
||||
*/
|
||||
@Override
|
||||
public void findEtu() {
|
||||
JScrollPane scroll=new JScrollPane(new FindBarFenetre(this).getPanel());
|
||||
@ -370,11 +426,20 @@ public class ModelRoot implements Model{
|
||||
/* (non-Javadoc)
|
||||
* @see fr.iutfbleau.projetIHM2022FI2.API.Model#getEtu(java.lang.String)
|
||||
*/
|
||||
|
||||
/**
|
||||
* Fonction pour recuperer les etudiant avec ce nom
|
||||
* @param name le nom de(s) etudiants
|
||||
* @return la liste
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtu(String name) {
|
||||
return this.promo.getEtudiants(name);
|
||||
}
|
||||
|
||||
/**
|
||||
*affiche les groupe d'un etudiant
|
||||
* @param e l'etudiant
|
||||
*/
|
||||
@Override
|
||||
public void showGroupOfEtudiant(Etudiant e){
|
||||
Set<Groupe> liste=this.promo.getGroupesOfEtudiant(e);
|
||||
|
@ -21,15 +21,23 @@ import fr.iutfbleau.projetIHM2022FI2.MP.ETU.View.FenetreGroupe;
|
||||
* Le Model de L'IHM
|
||||
*/
|
||||
public class ModelEtu implements Model{
|
||||
|
||||
// le panel qui contient la fenetre de groupe
|
||||
private JPanel panGroupe;
|
||||
// la fenetre de groupe
|
||||
private FenetreGroupe fenGr;
|
||||
//la fenetre d'etudiant
|
||||
private FenetreEtudiant fenEtu;
|
||||
// le groupe courant
|
||||
private AbstractGroupeFactory promo;
|
||||
// le changement courant
|
||||
private AbstractChangementFactory changement;
|
||||
// la fenetre principale
|
||||
private JFrame fenetre;
|
||||
// l'etudiant courant
|
||||
private Etudiant Selected;
|
||||
|
||||
/**
|
||||
* Constructeur du Model
|
||||
*/
|
||||
public ModelEtu(){
|
||||
this.fenetre=new JFrame();
|
||||
this.fenetre.setSize(1200, 720);
|
||||
@ -92,7 +100,10 @@ public class ModelEtu implements Model{
|
||||
public JFrame getFenetre() {
|
||||
return fenetre;
|
||||
}
|
||||
|
||||
/**
|
||||
* Permet d'obtenir les étudiants du groupe courant.
|
||||
* @return les étudiants du groupe courant
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtudiant(){
|
||||
return this.promo.getPromotion().getEtudiants();
|
||||
@ -132,7 +143,11 @@ public class ModelEtu implements Model{
|
||||
// **************************
|
||||
// FONCTION POUR LES CHANGEMENTS
|
||||
// ******************************
|
||||
|
||||
/**
|
||||
* Permet de changer de groupe.
|
||||
* @param e l'étudiant qui change de groupe
|
||||
* @param g le groupe dans lequel l'étudiant va
|
||||
*/
|
||||
@Override
|
||||
public void changeGroupe(Etudiant e, Groupe b){
|
||||
if(b==null)
|
||||
@ -162,7 +177,10 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
this.showGroupe(this.fenGr.getG());
|
||||
}
|
||||
|
||||
/**
|
||||
* pemet d'obtenir les sous groupes du groupe courant.
|
||||
* @return les sous groupes du groupe courant
|
||||
*/
|
||||
@Override
|
||||
public Set<Groupe> getGroupePartition(){
|
||||
this.promo.refreshALL(this.fenGr.getG().getPointPoint());
|
||||
@ -176,35 +194,60 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
return retour;
|
||||
}
|
||||
|
||||
/**
|
||||
* ajoute un étudiant dans un groupe.
|
||||
* @param e l'étudiant à ajouter
|
||||
* @param g le groupe dans lequel l'étudiant va
|
||||
* @return true si l'ajout a réussi, false sinon
|
||||
*/
|
||||
@Override
|
||||
public boolean addEtudiant(Groupe g, Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* supprime un groupe.
|
||||
* @param g le groupe à supprimer
|
||||
*/
|
||||
@Override
|
||||
public void delete(Groupe g) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* rennome un groupe.
|
||||
* @param g le groupe à renommer
|
||||
* @param nom le nouveau nom du groupe
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
public void rename(String name, Groupe g) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction permetant de créer une partition d'un groupe
|
||||
* @param g le groupe a partitionner
|
||||
* @param n le nombre de partition
|
||||
* @param name le nom des partition
|
||||
*/
|
||||
@Override
|
||||
public void partition(Groupe g, int n, String name) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction permettant de créer un sous-groupe d'un groupe
|
||||
* @param g le groupe parent
|
||||
* @param name le nom du sous-groupe
|
||||
* @param min le nombre min d'etudiant
|
||||
* @param max le nombre max d'etudiant
|
||||
* @param ajout la liste des étudiants a ajouter au groupe
|
||||
*/
|
||||
@Override
|
||||
public void free(Groupe g, String name, int min, int max, Set<Etudiant> ajout) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -212,33 +255,56 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* ajoute une nouvelle promotion
|
||||
* @param min le nombre min
|
||||
* @param max le nombre max
|
||||
* @param name le nom
|
||||
* @param ajout les etudiant a ajouter a la promo
|
||||
*/
|
||||
@Override
|
||||
public void addPromo(int min, int max, String name, Set<Etudiant> ajout) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un etudiant.
|
||||
* @param e l'etudiant a supprimer
|
||||
* @return boolean true si l'etudiant a ete supprimer, false sinon
|
||||
|
||||
*/
|
||||
@Override
|
||||
public boolean deleteEtu(Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour afficher une fenetre listnatn les changements
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
public void listChange() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour effectuer un changement
|
||||
* @param Changement le changement a effecteur
|
||||
*/
|
||||
@Override
|
||||
public void change(Changement change) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction supprimant un changement
|
||||
*
|
||||
* @param to_delete la changement a delete
|
||||
*/
|
||||
@Override
|
||||
public void deleteChange(Changement to_delete) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -246,13 +312,20 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction affichant les raison d'un changement
|
||||
*
|
||||
* @param change le changement
|
||||
*/
|
||||
@Override
|
||||
public void showRaisonChange(Changement change) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction affichant une fentre pour trouver un etudiant et tous ses groupes asociée
|
||||
*/
|
||||
@Override
|
||||
public void findEtu() {
|
||||
// TODO Auto-generated method stub
|
||||
@ -260,6 +333,11 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour recuperer les etudiant avec ce nom
|
||||
* @param name le nom de(s) etudiants
|
||||
* @return la liste
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtu(String name) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -267,6 +345,10 @@ public class ModelEtu implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*affiche les groupe d'un etudiant
|
||||
* @param e l'etudiant
|
||||
*/
|
||||
@Override
|
||||
public void showGroupOfEtudiant(Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
|
@ -22,13 +22,24 @@ import fr.iutfbleau.projetIHM2022FI2.Permanent.View.Chargement;
|
||||
*/
|
||||
public class ModelProf implements Model{
|
||||
|
||||
// le panel qui contient la fenetre de groupe
|
||||
private JPanel panGroupe;
|
||||
// la fenetre de groupe
|
||||
private FenetreGroupe fenGr;
|
||||
//la fenetre d'etudiant
|
||||
private FenetreEtudiant fenEtu;
|
||||
// le groupe courant
|
||||
private AbstractGroupeFactory promo;
|
||||
// le changement courant
|
||||
private AbstractChangementFactory changement;
|
||||
// la fenetre principale
|
||||
private JFrame fenetre;
|
||||
// l'etudiant courant
|
||||
private Etudiant Selected;
|
||||
|
||||
/**
|
||||
* Constructeur du Model.
|
||||
*/
|
||||
public ModelProf(){
|
||||
this.fenetre=new JFrame();
|
||||
this.fenetre.setSize(1200, 720);
|
||||
@ -90,7 +101,10 @@ public class ModelProf implements Model{
|
||||
public JFrame getFenetre() {
|
||||
return fenetre;
|
||||
}
|
||||
|
||||
/**
|
||||
* permet d'obtenir l'ensemble des etudiants
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtudiant(){
|
||||
return this.promo.getPromotion().getEtudiants();
|
||||
@ -99,7 +113,11 @@ public class ModelProf implements Model{
|
||||
// **************************
|
||||
// FONCTION POUR LES CHANGEMENTS
|
||||
// ******************************
|
||||
|
||||
/**
|
||||
* Créer un changement depuis le groupe courant
|
||||
* @param e l'etudiant
|
||||
* @param b le groupe a changer
|
||||
*/
|
||||
@Override
|
||||
public void changeGroupe(Etudiant e, Groupe b){
|
||||
if(b==null)
|
||||
@ -129,7 +147,11 @@ public class ModelProf implements Model{
|
||||
}
|
||||
this.showGroupe(this.fenGr.getG());
|
||||
}
|
||||
|
||||
/**
|
||||
* Retourn les groupe auquel on peut demander a changer depuis le groupe courant
|
||||
*
|
||||
* @return la liste des groupes
|
||||
*/
|
||||
@Override
|
||||
public Set<Groupe> getGroupePartition(){
|
||||
this.promo.refreshALL(this.fenGr.getG().getPointPoint());
|
||||
@ -143,14 +165,22 @@ public class ModelProf implements Model{
|
||||
}
|
||||
return retour;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour ajouter un étudiant au groupe
|
||||
* @param g
|
||||
* @param e
|
||||
* @return boolean pour savoir si il a pus être ajouter
|
||||
*/
|
||||
@Override
|
||||
public boolean addEtudiant(Groupe g, Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un groupe
|
||||
* @param g le groupe a supprimer
|
||||
*/
|
||||
@Override
|
||||
public void delete(Groupe g) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -158,6 +188,11 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour renomer un groupe
|
||||
* @param name
|
||||
* @param g
|
||||
*/
|
||||
@Override
|
||||
public void rename(String name, Groupe g) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -165,6 +200,12 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction permetant de créer une partition d'un groupe
|
||||
* @param g le groupe a partitionner
|
||||
* @param n le nombre de partition
|
||||
* @param name le nom des partition
|
||||
*/
|
||||
@Override
|
||||
public void partition(Groupe g, int n, String name) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -172,12 +213,26 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction permettant de créer un sous-groupe d'un groupe
|
||||
* @param g le groupe parent
|
||||
* @param name le nom du sous-groupe
|
||||
* @param min le nombre min d'etudiant
|
||||
* @param max le nombre max d'etudiant
|
||||
* @param ajout la liste des étudiants a ajouter au groupe
|
||||
*/
|
||||
@Override
|
||||
public void free(Groupe g, String name, int min, int max, Set<Etudiant> ajout) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* ajoute une nouvelle promotion
|
||||
* @param min le nombre min
|
||||
* @param max le nombre max
|
||||
* @param name le nom
|
||||
* @param ajout les etudiant a ajouter a la promo
|
||||
*/
|
||||
|
||||
@Override
|
||||
public void addPromo(int min, int max, String name, Set<Etudiant> ajout) {
|
||||
@ -185,13 +240,20 @@ public class ModelProf implements Model{
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un etudiant.
|
||||
* @param e l'etudiant a supprimer
|
||||
* @return boolean true si l'etudiant a ete supprimer, false sinon
|
||||
*/
|
||||
@Override
|
||||
public boolean deleteEtu(Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour afficher une fenetre listnatn les changements
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
public void listChange() {
|
||||
// TODO Auto-generated method stub
|
||||
@ -199,13 +261,21 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour effectuer un changement
|
||||
* @param Changement le changement a effecteur
|
||||
*/
|
||||
@Override
|
||||
public void change(Changement change) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction supprimant un changement
|
||||
*
|
||||
* @param to_delete la changement a delete
|
||||
*/
|
||||
@Override
|
||||
public void deleteChange(Changement to_delete) {
|
||||
// TODO Auto-generated method stub
|
||||
@ -213,27 +283,41 @@ public class ModelProf implements Model{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction affichant les raison d'un changement
|
||||
*
|
||||
* @param change le changement
|
||||
*/
|
||||
@Override
|
||||
public void showRaisonChange(Changement change) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction affichant une fentre pour trouver un etudiant et tous ses groupes asociée
|
||||
*/
|
||||
@Override
|
||||
public void findEtu() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction pour recuperer les etudiant avec ce nom
|
||||
* @param name le nom de(s) etudiants
|
||||
* @return la liste
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtu(String name) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*affiche les groupe d'un etudiant
|
||||
* @param e l'etudiant
|
||||
*/
|
||||
@Override
|
||||
public void showGroupOfEtudiant(Etudiant e) {
|
||||
// TODO Auto-generated method stub
|
||||
|
@ -26,13 +26,22 @@ import fr.iutfbleau.projetIHM2022FI2.Permanent.View.Chargement;
|
||||
*/
|
||||
public class ModelRoot implements Model{
|
||||
|
||||
// le panel qui contient la fenetre de groupe
|
||||
private JPanel panGroupe;
|
||||
// la fenetre de groupe
|
||||
private FenetreGroupe fenGr;
|
||||
//la fenetre d'etudiant
|
||||
private FenetreEtudiant fenEtu;
|
||||
// le groupe courant
|
||||
private AbstractGroupeFactory promo;
|
||||
// le changement courant
|
||||
private AbstractChangementFactory changement;
|
||||
private FenetreChangement fenChange;
|
||||
// la fenetre principale
|
||||
private JFrame fenetre;
|
||||
|
||||
/**
|
||||
* Constructeur du model.
|
||||
*/
|
||||
public ModelRoot(){
|
||||
this.fenetre=new JFrame();
|
||||
this.fenetre.setSize(1200, 720);
|
||||
@ -91,7 +100,10 @@ public class ModelRoot implements Model{
|
||||
public JFrame getFenetre() {
|
||||
return fenetre;
|
||||
}
|
||||
|
||||
/**
|
||||
* permet d'obtenir l'ensemble des etudiants
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtudiant(){
|
||||
return this.promo.getEtudiants(null);
|
||||
@ -100,7 +112,11 @@ public class ModelRoot implements Model{
|
||||
// ***********************
|
||||
// FONCTION POUR SUPRIMER UN ETUDIANT
|
||||
// ***********************
|
||||
|
||||
/**
|
||||
* Fonction pour supprimer un etudiant.
|
||||
* @param e l'etudiant a supprimer
|
||||
* @return boolean true si l'etudiant a ete supprimer, false sinon
|
||||
*/
|
||||
@Override
|
||||
public boolean deleteEtu(Etudiant e){
|
||||
if(this.deleteEtutoChildren(e, this.fenGr.getG())){
|
||||
@ -111,7 +127,12 @@ public class ModelRoot implements Model{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Permet de savoir si un étudiant peut être supprimé
|
||||
* @param e l'étudiant à supprimer
|
||||
* @param g le groupe dans lequel on cherche
|
||||
* @return true si possible, false sinon
|
||||
*/
|
||||
private boolean deleteEtutoChildren(Etudiant e, Groupe g){
|
||||
if(g.getMax()<g.getEtudiants().size()-1)
|
||||
return false;
|
||||
@ -271,7 +292,13 @@ public class ModelRoot implements Model{
|
||||
}
|
||||
this.showGroupe(g);
|
||||
}
|
||||
|
||||
/**
|
||||
* ajoute une nouvelle promotion
|
||||
* @param min le nombre min
|
||||
* @param max le nombre max
|
||||
* @param name le nom
|
||||
* @param ajout les etudiant a ajouter a la promo
|
||||
*/
|
||||
@Override
|
||||
public void addPromo(int min, int max, String name, Set<Etudiant> ajout){
|
||||
Chargement ch=new Chargement(this.fenetre);
|
||||
@ -287,7 +314,11 @@ public class ModelRoot implements Model{
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Créer un changement depuis le groupe courant
|
||||
* @param e l'etudiant
|
||||
* @param b le groupe a changer
|
||||
*/
|
||||
@Override
|
||||
public void changeGroupe(Etudiant e, Groupe b){
|
||||
if(b==null)
|
||||
@ -317,7 +348,11 @@ public class ModelRoot implements Model{
|
||||
}
|
||||
this.showGroupe(this.fenGr.getG());
|
||||
}
|
||||
|
||||
/**
|
||||
* Retourn les groupe auquel on peut demander a changer depuis le groupe courant
|
||||
*
|
||||
* @return la liste des groupes
|
||||
*/
|
||||
@Override
|
||||
public Set<Groupe> getGroupePartition(){
|
||||
this.promo.refreshALL(this.fenGr.getG().getPointPoint());
|
||||
@ -334,13 +369,20 @@ public class ModelRoot implements Model{
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see fr.iutfbleau.projetIHM2022FI2.API.Model#listChange()
|
||||
*/
|
||||
/**
|
||||
* Fonction pour afficher une fenetre listnatn les changements
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
public void listChange() {
|
||||
this.fenChange=new FenetreChangement(changement, this);
|
||||
JOptionPane.showMessageDialog(this.fenetre, new JScrollPane(this.fenChange), "liste des changements", JOptionPane.OK_OPTION);
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction pour effectuer un changement
|
||||
* @param Changement le changement a effecteur
|
||||
*/
|
||||
@Override
|
||||
public void change(Changement change) {
|
||||
this.changement.applyChangement(change);
|
||||
@ -350,17 +392,29 @@ public class ModelRoot implements Model{
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction supprimant un changement
|
||||
*
|
||||
* @param to_delete la changement a delete
|
||||
*/
|
||||
@Override
|
||||
public void deleteChange(Changement to_delete) {
|
||||
this.changement.deleteChangement(to_delete);
|
||||
this.fenChange.refresh();
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction affichant les raison d'un changement
|
||||
*
|
||||
* @param change le changement
|
||||
*/
|
||||
@Override
|
||||
public void showRaisonChange(Changement change) {
|
||||
JOptionPane.showMessageDialog(this.fenetre, new JLabel(change.getRaison()), "Raison de la demande", JOptionPane.OK_OPTION);
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction affichant une fentre pour trouver un etudiant et tous ses groupes asociée
|
||||
*/
|
||||
@Override
|
||||
public void findEtu() {
|
||||
JScrollPane scroll=new JScrollPane(new FindBarFenetre(this).getPanel());
|
||||
@ -371,11 +425,20 @@ public class ModelRoot implements Model{
|
||||
/* (non-Javadoc)
|
||||
* @see fr.iutfbleau.projetIHM2022FI2.API.Model#getEtu(java.lang.String)
|
||||
*/
|
||||
|
||||
/**
|
||||
* Fonction pour recuperer les etudiant avec ce nom
|
||||
* @param name le nom de(s) etudiants
|
||||
* @return la liste
|
||||
*/
|
||||
@Override
|
||||
public Set<Etudiant> getEtu(String name) {
|
||||
return this.promo.getEtudiants(name);
|
||||
}
|
||||
|
||||
/**
|
||||
*affiche les groupe d'un etudiant
|
||||
* @param e l'etudiant
|
||||
*/
|
||||
@Override
|
||||
public void showGroupOfEtudiant(Etudiant e){
|
||||
Set<Groupe> liste=this.promo.getGroupesOfEtudiant(e);
|
||||
|
Loading…
Reference in New Issue
Block a user