13,20 → 13,16 |
import com.google.gwt.json.client.JSONObject; |
|
/** |
* Table de hachage composée d'informations sur les Valeurs des listes, renvoyé |
* par un objet de type DAO La clé est le nom de l'entite + le nom de l'entite |
* parente |
* Classe contenant les informations sur les Personnes renvoyées par un objet de type DAO. |
* |
* @author david delon |
* @author Grégoire DUCHÉ |
* |
*/ |
public class PersonneListe extends aDonneeListe<Personne> implements |
ListePaginable { |
public class PersonneListe extends aDonneeListe<Personne> implements ListePaginable { |
|
private static final long serialVersionUID = 2930530504922300155L; |
private int currentPage = 0; |
private int nbElementsPage = Integer.valueOf(((Dictionary) Dictionary |
.getDictionary("configuration")).get("nbElementsPage")); |
private int nbElementsPage = Integer.valueOf(((Dictionary) Dictionary.getDictionary("configuration")).get("nbElementsPage")); |
private int nbElementsTotal; |
private Rafraichissable vueARafraichir; |
|
40,8 → 36,7 |
/** |
* Constructeur avec paramètre |
* |
* @param taille |
* la taille de la table de hachage |
* @param taille la taille de la table de hachage |
*/ |
public PersonneListe(int taille) { |
super(taille); |
52,53 → 47,39 |
* |
* @param dates |
*/ |
public PersonneListe(JSONArray personneListe) { |
super(personneListe.size()); |
|
final int taillemax = personneListe.size(); |
for (int i = 0; i < taillemax; i++) { |
JSONObject personneCourante = personneListe.get(i).isObject(); |
|
if (personneCourante != null) { |
Personne personne = new Personne(personneCourante); |
this.put(personne.getId(), personne); |
} |
} |
public PersonneListe(JSONArray ListeDePersonnes) { |
super(ListeDePersonnes.size()); |
initialiserPersonneListe(ListeDePersonnes); |
} |
|
public PersonneListe(JSONArray personneListe, JSONNumber nbElements, |
Rafraichissable vueARafraichir) { |
super(personneListe.size()); |
|
public PersonneListe(JSONArray ListeDePersonnes, JSONNumber nbElements, Rafraichissable vueARafraichir) { |
super(ListeDePersonnes.size()); |
this.nbElementsTotal = Integer.valueOf(nbElements.toString()); |
final int taillemax = personneListe.size(); |
this.vueARafraichir = vueARafraichir; |
initialiserPersonneListe(ListeDePersonnes); |
} |
|
private void initialiserPersonneListe(JSONArray ListeDePersonnes) { |
final int taillemax = ListeDePersonnes.size(); |
for (int i = 0; i < taillemax; i++) { |
JSONObject personneCourante = personneListe.get(i).isObject(); |
|
JSONObject personneCourante = ListeDePersonnes.get(i).isObject(); |
if (personneCourante != null) { |
Personne personne = new Personne(personneCourante); |
this.put(personne.getId(), personne); |
} |
} |
|
this.vueARafraichir = vueARafraichir; |
} |
|
public int[] getPageTable() { |
int[] page = new int[4]; |
|
// nombre de pages au total |
page[0] = calculerNbPages(); |
|
// Page En Cours |
page[1] = currentPage; |
|
// nbElementsParPage |
page[2] = nbElementsPage; |
|
// et le dernier le nombre total d'éléments |
page[3] = nbElementsTotal; |
|
return page; |
} |
|
109,17 → 90,14 |
* @return le nombre de pages |
*/ |
public int calculerNbPages() { |
// A cause de la betise de java pour les conversion implicite on fait |
// quelques conversions manuellement |
// pour eviter qu'il arrondisse mal la division |
// nombre de pages = (nombre d'element / taille de la page) arrondie à |
// l'entier superieur |
|
// À cause de la bétise de java pour les conversion implicite, on fait quelques conversions manuellement |
// pour eviter qu'il arrondisse mal la division nombre de pages = (nombre d'element / taille de la page) |
// arrondie à l'entier supérieur. |
double nPage = (1.0 * nbElementsTotal) / (1.0 * nbElementsPage); |
double nPageRound = Math.ceil(nPage); |
Double nPageInt = new Double(nPageRound); |
|
// on convertit en entier |
// Convertion en entier |
return nPageInt.intValue(); |
} |
|
147,8 → 125,7 |
|
public void selectionnerPersonne() { |
Mediateur mediateur = (Mediateur) Registry.get(RegistreId.MEDIATEUR); |
mediateur.selectionnerPersonne(vueARafraichir, null, null, currentPage, |
nbElementsPage); |
mediateur.selectionnerPersonne(vueARafraichir, null, null, currentPage, nbElementsPage); |
} |
|
public void filtrerParNom(String nom) { |
155,8 → 132,6 |
Mediateur mediateur = (Mediateur) Registry.get(RegistreId.MEDIATEUR); |
Personne personne = new Personne(); |
personne.setNom("%" + nom + "%"); |
mediateur.selectionnerPersonne(vueARafraichir, personne, null, currentPage, |
nbElementsPage); |
mediateur.selectionnerPersonne(vueARafraichir, personne, null, currentPage, nbElementsPage); |
} |
|
} |