990,12 → 990,15 |
|
private void collecterStructurePersonnel() { |
if (personnelOnglet.getData("acces").equals(true)) { |
personnelGrilleMagazin.commitChanges(); |
int nbrePersonne = personnelGrilleMagazin.getCount(); |
for (int i = 0; i < nbrePersonne; i++) { |
StructureAPersonne personne = personnelGrilleMagazin.getAt(i); |
|
|
// Seules les lignes ajoutées ou modifiées sont prises en compte. |
if (personnelGrilleMagazin.getModifiedRecords().contains(personnelGrilleMagazin.getRecord(personne)) == true) { |
Record record = personnelGrilleMagazin.getRecord(personne); |
if (personnelGrilleMagazin.getModifiedRecords().contains(record) == true |
|| (personne.get("etat") != null && personne.get("etat").equals(StructureAPersonne.ETAT_AJOUTE) )) { |
|
// Gestion de l'id de la structure |
if (mode.equals("MODIF")) { |
1059,7 → 1062,7 |
personne.setSpecialite(specialite); |
|
// Ajout de la personne dans la liste correspondant à son état (ajouté ou modifié) |
if (personne.get("etat") != null && personne.get("etat").equals("A")) {// Une personne ajoutée |
if (personne.get("etat") != null && personne.get("etat").equals(StructureAPersonne.ETAT_AJOUTE)) {// Une personne ajoutée |
personnelAjoute.put(""+i, personne); |
} else {// Une personne modifiée |
personnelModifie.put(personne.getId(), personne); |
1412,14 → 1415,6 |
grillePersonnel.setAutoExpandColumn("specialite"); |
grillePersonnel.setStripeRows(true); |
grillePersonnel.setTrackMouseOver(true); |
grillePersonnel.addListener(Events.Change, new Listener<GridEvent<StructureAPersonne>>() { |
|
public void handleEvent(GridEvent<StructureAPersonne> ge) { |
// CommitChanges évite que la grille perde la valeur des combobox éditables |
personnelGrilleMagazin.commitChanges(); |
} |
|
}); |
cp.add(grillePersonnel); |
personnelOnglet.add(cp); |
|
2071,54 → 2066,6 |
private void ajouterMembreAGrillePersonnel(StructureAPersonne personnel) { |
grillePersonnel.stopEditing(); |
personnelGrilleMagazin.insert(personnel, 0); |
|
// Nous modifions l'enregistrement pour que le modèle soit pris en compte lors de la collecte. |
Record record = personnelGrilleMagazin.getRecord(personnelGrilleMagazin.getAt(0)); |
record.beginEdit(); |
|
if (!personnel.getFonction().equals("")) { |
Object fonction = fonctionEditor.preProcessValue(personnel.getFonction()); |
if (fonction != null && fonction instanceof Valeur) { |
record.set("fonction", ((Valeur)fonction).getNom()); |
} |
} |
|
if (!personnel.getPrenom().equals("")) { |
record.set("prenom", personnel.getPrenom()); |
} |
|
if (!personnel.getNom().equals("")) { |
record.set("nom", personnel.getNom()); |
} |
|
if (!personnel.getTelephoneFixe().equals("")) { |
record.set("tel_fix", personnel.getTelephoneFixe()); |
} |
|
if (!personnel.getFax().equals("")) { |
record.set("tel_fax", personnel.getFax()); |
} |
|
if (!personnel.getCourriel().equals("")) { |
record.set("courriel", personnel.selectionnerCourriel(1)); |
} |
|
if (!personnel.getStatut().equals("")) { |
record.set("statut", personnel.getStatut()); |
} |
|
String tempsDeTravail = personnel.getBotaTravailHebdoTps(); |
record.set("travail", (tempsDeTravail.matches("^[0-9]+$") ? Integer.parseInt(tempsDeTravail) : 0)); |
|
if (!personnel.getSpecialite().equals("")) { |
record.set("specialite", personnel.afficherSpecialite()); |
} |
|
record.set("contact", (personnel.getContact().equals("1") ? true : false)); |
|
record.set("etat", personnel.get("etat")); |
record.endEdit(); |
|
grillePersonnel.startEditing(0, 0); |
} |
|