Line 52... |
Line 52... |
52 |
import com.extjs.gxt.ui.client.widget.grid.RowNumberer;
|
52 |
import com.extjs.gxt.ui.client.widget.grid.RowNumberer;
|
53 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
53 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
54 |
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
|
54 |
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
|
55 |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
|
55 |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
|
56 |
import com.google.gwt.core.client.GWT;
|
56 |
import com.google.gwt.core.client.GWT;
|
- |
|
57 |
import com.google.gwt.user.client.Window;
|
- |
|
58 |
import com.extjs.gxt.ui.client.widget.form.CheckBox;
|
Line 57... |
Line 59... |
57 |
|
59 |
|
Line 58... |
Line 60... |
58 |
public class CollectionFormPublication extends FormulaireOnglet implements Rafraichissable {
|
60 |
public class CollectionFormPublication extends FormulaireOnglet implements Rafraichissable {
|
59 |
|
61 |
|
Line 65... |
Line 67... |
65 |
private ToolBar barreOutils = null;
|
67 |
private ToolBar barreOutils = null;
|
66 |
private GrillePaginable<ModelData> grille;
|
68 |
private GrillePaginable<ModelData> grille;
|
Line 67... |
Line 69... |
67 |
|
69 |
|
68 |
private CollectionAPublicationListe publicationsAjoutees = null;
|
70 |
private CollectionAPublicationListe publicationsAjoutees = null;
|
- |
|
71 |
private CollectionAPublicationListe publicationsSupprimees = null;
|
69 |
private CollectionAPublicationListe publicationsSupprimees = null;
|
72 |
private CollectionAPublicationListe publicationsModifiees = null;
|
70 |
private ChampComboBoxRechercheTempsReelPaginable publicationsSaisiesComboBox = null;
|
73 |
private ChampComboBoxRechercheTempsReelPaginable publicationsSaisiesComboBox = null;
|
71 |
private Button publicationsBoutonSupprimer = null;
|
74 |
private Button publicationsBoutonSupprimer = null;
|
Line 72... |
Line 75... |
72 |
private Button publicationsBoutonModifier = null;
|
75 |
private Button publicationsBoutonModifier = null;
|
Line -... |
Line 76... |
- |
|
76 |
|
- |
|
77 |
private FenetreForm fenetreFormulaire = null;
|
73 |
|
78 |
|
Line 74... |
Line 79... |
74 |
private FenetreForm fenetreFormulaire = null;
|
79 |
public boolean publicationsSontModifiees = false;
|
75 |
|
80 |
|
76 |
public CollectionFormPublication(Formulaire formulaireCourrant) {
|
81 |
public CollectionFormPublication(Formulaire formulaireCourrant) {
|
Line 96... |
Line 101... |
96 |
private void initialiser() {
|
101 |
private void initialiser() {
|
97 |
// Remise à zéro des modification dans la liste des auteurs
|
102 |
// Remise à zéro des modification dans la liste des auteurs
|
98 |
idGenere = 1;
|
103 |
idGenere = 1;
|
99 |
publicationsAjoutees = new CollectionAPublicationListe();
|
104 |
publicationsAjoutees = new CollectionAPublicationListe();
|
100 |
publicationsSupprimees = new CollectionAPublicationListe();
|
105 |
publicationsSupprimees = new CollectionAPublicationListe();
|
- |
|
106 |
publicationsModifiees = new CollectionAPublicationListe();
|
Line 101... |
Line 107... |
101 |
|
107 |
|
102 |
collection = ((CollectionForm) formulaire).collection;
|
108 |
collection = ((CollectionForm) formulaire).collection;
|
Line 103... |
Line 109... |
103 |
}
|
109 |
}
|
Line 259... |
Line 265... |
259 |
ModelType modelTypePublications = new ModelType();
|
265 |
ModelType modelTypePublications = new ModelType();
|
260 |
modelTypePublications.setRoot("publications");
|
266 |
modelTypePublications.setRoot("publications");
|
261 |
modelTypePublications.setTotalName("nbElements");
|
267 |
modelTypePublications.setTotalName("nbElements");
|
262 |
modelTypePublications.addField("ccapu_id_collection");
|
268 |
modelTypePublications.addField("ccapu_id_collection");
|
263 |
modelTypePublications.addField("ccapu_id_publication");
|
269 |
modelTypePublications.addField("ccapu_id_publication");
|
- |
|
270 |
modelTypePublications.addField("ccapu_source");
|
264 |
modelTypePublications.addField("cc_nom");
|
271 |
modelTypePublications.addField("cc_nom");
|
265 |
modelTypePublications.addField("cc_id_collection");
|
272 |
modelTypePublications.addField("cc_id_collection");
|
266 |
modelTypePublications.addField("cpu_id_publication");
|
273 |
modelTypePublications.addField("cpu_id_publication");
|
267 |
modelTypePublications.addField("cpu_fmt_nom_complet");
|
274 |
modelTypePublications.addField("cpu_fmt_nom_complet");
|
268 |
modelTypePublications.addField("cpu_titre");
|
275 |
modelTypePublications.addField("cpu_titre");
|
Line 356... |
Line 363... |
356 |
ModelType modelTypeCollectionAPublication = new ModelType();
|
363 |
ModelType modelTypeCollectionAPublication = new ModelType();
|
357 |
modelTypeCollectionAPublication.setRoot("collectionsAPublication");
|
364 |
modelTypeCollectionAPublication.setRoot("collectionsAPublication");
|
358 |
modelTypeCollectionAPublication.setTotalName("nbElements");
|
365 |
modelTypeCollectionAPublication.setTotalName("nbElements");
|
359 |
modelTypeCollectionAPublication.addField("ccapu_id_collection");
|
366 |
modelTypeCollectionAPublication.addField("ccapu_id_collection");
|
360 |
modelTypeCollectionAPublication.addField("ccapu_id_publication");
|
367 |
modelTypeCollectionAPublication.addField("ccapu_id_publication");
|
- |
|
368 |
modelTypeCollectionAPublication.addField("ccapu_source");
|
361 |
modelTypeCollectionAPublication.addField("ccapu_mark_licence");
|
369 |
modelTypeCollectionAPublication.addField("ccapu_mark_licence");
|
362 |
modelTypeCollectionAPublication.addField("cpu_id_publication");
|
370 |
modelTypeCollectionAPublication.addField("cpu_id_publication");
|
363 |
modelTypeCollectionAPublication.addField("cpu_fmt_auteur");
|
371 |
modelTypeCollectionAPublication.addField("cpu_fmt_auteur");
|
364 |
modelTypeCollectionAPublication.addField("cpu_titre");
|
372 |
modelTypeCollectionAPublication.addField("cpu_titre");
|
365 |
modelTypeCollectionAPublication.addField("cpu_collection");
|
373 |
modelTypeCollectionAPublication.addField("cpu_collection");
|
Line 383... |
Line 391... |
383 |
"<span style='font-weight:bold;'>"+i18nC.publicationEditeur()+" :</span> {_editeur_}"+
|
391 |
"<span style='font-weight:bold;'>"+i18nC.publicationEditeur()+" :</span> {_editeur_}"+
|
384 |
"</p>");
|
392 |
"</p>");
|
385 |
RowExpander expansionPlugin = new RowExpander();
|
393 |
RowExpander expansionPlugin = new RowExpander();
|
386 |
expansionPlugin.setTemplate(infoTpl);
|
394 |
expansionPlugin.setTemplate(infoTpl);
|
387 |
colonnes.add(expansionPlugin);
|
395 |
colonnes.add(expansionPlugin);
|
- |
|
396 |
|
- |
|
397 |
ColumnConfig sourceColonne = new ColumnConfig("ccapu_source", i18nC.collectionPublicationSource(), 35);
|
- |
|
398 |
sourceColonne.setRenderer(new GridCellRenderer<ModelData>() {
|
- |
|
399 |
@Override
|
- |
|
400 |
public Object render(ModelData model, String property,
|
- |
|
401 |
ColumnData config, int rowIndex, int colIndex,
|
- |
|
402 |
ListStore<ModelData> store, Grid<ModelData> grid) {
|
- |
|
403 |
|
- |
|
404 |
CheckBox cbSource = new CheckBox();
|
- |
|
405 |
boolean source = model.get("ccapu_source") != null && model.get("ccapu_source").equals("1");
|
- |
|
406 |
cbSource.setValue(source);
|
- |
|
407 |
|
- |
|
408 |
final Integer ligne = rowIndex;
|
- |
|
409 |
final ModelData ceModele = model;
|
- |
|
410 |
|
- |
|
411 |
cbSource.addListener(Events.Change, new Listener<BaseEvent>() {
|
- |
|
412 |
@Override
|
- |
|
413 |
public void handleEvent(BaseEvent be) {
|
- |
|
414 |
String estSource = ((CheckBox)be.getSource()).getValue() ? "1" : "0";
|
- |
|
415 |
ceModele.set("ccapu_source", estSource);
|
- |
|
416 |
if (!(ceModele.get("_etat_") != null && ceModele.get("_etat_").equals(aDonnee.ETAT_AJOUTE))) {
|
- |
|
417 |
ceModele.set("_etat_", aDonnee.ETAT_MODIFIE);
|
- |
|
418 |
}
|
- |
|
419 |
grille.getStore().commitChanges();
|
- |
|
420 |
}
|
- |
|
421 |
});
|
- |
|
422 |
return cbSource;
|
- |
|
423 |
}
|
- |
|
424 |
});
|
- |
|
425 |
colonnes.add(sourceColonne);
|
- |
|
426 |
|
388 |
colonnes.add(numeroPlugin);
|
427 |
colonnes.add(numeroPlugin);
|
389 |
colonnes.add(new ColumnConfig("cpu_fmt_auteur", i18nC.publicationAuteurs(), 150));
|
428 |
colonnes.add(new ColumnConfig("cpu_fmt_auteur", i18nC.publicationAuteurs(), 140));
|
390 |
colonnes.add(new ColumnConfig("cpu_titre", i18nC.publicationTitre(), 150));
|
429 |
colonnes.add(new ColumnConfig("cpu_titre", i18nC.publicationTitre(), 135));
|
391 |
colonnes.add(new ColumnConfig("cpu_collection", i18nC.publicationRevueCollection(), 75));
|
430 |
colonnes.add(new ColumnConfig("cpu_collection", i18nC.publicationRevueCollection(), 75));
|
392 |
colonnes.add(creerColonneEditeur());
|
431 |
colonnes.add(creerColonneEditeur());
|
393 |
colonnes.add(creerColonneAnneePublication());
|
432 |
colonnes.add(creerColonneAnneePublication());
|
394 |
colonnes.add(new ColumnConfig("cpu_indication_nvt", i18nC.publicationNvt(), 75));
|
433 |
colonnes.add(new ColumnConfig("cpu_indication_nvt", i18nC.publicationNvt(), 75));
|
395 |
colonnes.add(new ColumnConfig("cpu_fascicule", i18nC.publicationFascicule(), 75));
|
434 |
colonnes.add(new ColumnConfig("cpu_fascicule", i18nC.publicationFascicule(), 75));
|
Line 534... |
Line 573... |
534 |
for (int i = 0; i < nbrePublication; i++) {
|
573 |
for (int i = 0; i < nbrePublication; i++) {
|
535 |
ModelData publicationLiee = grille.getStore().getAt(i);
|
574 |
ModelData publicationLiee = grille.getStore().getAt(i);
|
536 |
CollectionAPublication cap = new CollectionAPublication(grille.getStore().getAt(i), false);
|
575 |
CollectionAPublication cap = new CollectionAPublication(grille.getStore().getAt(i), false);
|
537 |
if (publicationLiee.get("_etat_") != null) {
|
576 |
if (publicationLiee.get("_etat_") != null) {
|
538 |
if (publicationLiee.get("_etat_").equals(aDonnee.ETAT_MODIFIE)) {
|
577 |
if (publicationLiee.get("_etat_").equals(aDonnee.ETAT_MODIFIE)) {
|
539 |
// Comme il est impossible de modifier les relations nous supprimons l'ancien enregistrement et ajoutons un nouveau avec le nouveau id_role
|
- |
|
540 |
publicationsSupprimees.put("id"+idGenere++, cap);
|
578 |
publicationsModifiees.put(cap.getIdPublication(), cap);
|
541 |
|
- |
|
542 |
CollectionAPublication relationAAjouter = (CollectionAPublication) cap.cloner(new CollectionAPublication());
|
- |
|
543 |
publicationsAjoutees.put("id"+idGenere++, relationAAjouter);
|
- |
|
544 |
}
|
579 |
}
|
545 |
if (publicationLiee.get("_etat_").equals(aDonnee.ETAT_AJOUTE)) {
|
580 |
if (publicationLiee.get("_etat_").equals(aDonnee.ETAT_AJOUTE)) {
|
546 |
publicationsAjoutees.put("id"+idGenere++, cap);
|
581 |
publicationsAjoutees.put("id"+idGenere++, cap);
|
547 |
}
|
582 |
}
|
548 |
// Initialisation de la grille
|
583 |
// Initialisation de la grille
|
Line 553... |
Line 588... |
553 |
}
|
588 |
}
|
554 |
}
|
589 |
}
|
Line 555... |
Line 590... |
555 |
|
590 |
|
556 |
public void soumettre() {
|
591 |
public void soumettre() {
|
557 |
if (mode.equals(Formulaire.MODE_MODIFIER)) {
|
592 |
if (mode.equals(Formulaire.MODE_MODIFIER)) {
|
558 |
if (publicationsAjoutees.size() == 0 && publicationsSupprimees.size() == 0) {
|
593 |
if (publicationsAjoutees.size() == 0 && publicationsSupprimees.size() == 0 && publicationsModifiees.size() == 0) {
|
559 |
//InfoLogger.display("Modification des publications liées", "Rien n'a été enregistré car le formulaire n'a pas été modifié.");
|
594 |
//InfoLogger.display("Modification des publications liées", "Rien n'a été enregistré car le formulaire n'a pas été modifié.");
|
- |
|
595 |
} else {
|
- |
|
596 |
//Window.alert(publicationsAjoutees.size()+" | "+publicationsSupprimees.size()+" | "+publicationsModifiees.size());
|
560 |
} else {
|
597 |
publicationsSontModifiees = true;
|
561 |
// Ajout des relations CollectionAPublication
|
598 |
// Ajout des relations CollectionAPublication
|
562 |
if (publicationsAjoutees.size() != 0) {
|
599 |
if (publicationsAjoutees.size() != 0) {
|
563 |
mediateur.ajouterCollectionAPublication(this, collection.getId(), publicationsAjoutees);
|
600 |
mediateur.ajouterCollectionAPublication(this, collection.getId(), publicationsAjoutees);
|
- |
|
601 |
}
|
- |
|
602 |
|
- |
|
603 |
// Modification des relations CollectionAPublication
|
- |
|
604 |
if (publicationsModifiees.size() != 0) {
|
- |
|
605 |
mediateur.modifierCollectionAPublication(this, publicationsModifiees);
|
- |
|
606 |
}
|
564 |
}
|
607 |
|
565 |
// Suppression des relations CollectionAPublication
|
608 |
// Suppression des relations CollectionAPublication
|
566 |
if (publicationsSupprimees.size() != 0) {
|
609 |
if (publicationsSupprimees.size() != 0) {
|
567 |
mediateur.supprimerCollectionAPublication(this, publicationsSupprimees);
|
610 |
mediateur.supprimerCollectionAPublication(this, publicationsSupprimees);
|
568 |
}
|
611 |
}
|