Subversion Repositories eFlore/Applications.del

Rev

Rev 960 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 960 Rev 966
Line 15... Line 15...
15
import org.tela_botanica.del.client.composants.observations.ObservationImagesPresenteur;
15
import org.tela_botanica.del.client.composants.observations.ObservationImagesPresenteur;
16
import org.tela_botanica.del.client.composants.observations.ObservationImagesVue;
16
import org.tela_botanica.del.client.composants.observations.ObservationImagesVue;
17
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
17
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
18
import org.tela_botanica.del.client.modeles.ModeRecherche;
18
import org.tela_botanica.del.client.modeles.ModeRecherche;
19
import org.tela_botanica.del.client.modeles.MoyenneVote;
19
import org.tela_botanica.del.client.modeles.MoyenneVote;
-
 
20
import org.tela_botanica.del.client.modeles.Observation;
20
import org.tela_botanica.del.client.modeles.ObservationServiceResultat;
21
import org.tela_botanica.del.client.modeles.ObservationServiceResultat;
21
import org.tela_botanica.del.client.modeles.Protocole;
22
import org.tela_botanica.del.client.modeles.Protocole;
22
import org.tela_botanica.del.client.modeles.ProtocoleServiceResultat;
23
import org.tela_botanica.del.client.modeles.ProtocoleServiceResultat;
23
import org.tela_botanica.del.client.modeles.VoteDetermination;
24
import org.tela_botanica.del.client.modeles.VoteDetermination;
24
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
25
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
Line 49... Line 50...
49
import com.google.gwt.user.client.ui.IsWidget;
50
import com.google.gwt.user.client.ui.IsWidget;
50
import com.google.gwt.user.client.ui.Panel;
51
import com.google.gwt.user.client.ui.Panel;
Line 51... Line 52...
51
 
52
 
Line -... Line 53...
-
 
53
public class DeterminationPresenteur extends Presenteur {
-
 
54
 
-
 
55
	/**
52
public class DeterminationPresenteur extends Presenteur {
56
	 * Vue de l'interface de détermination
53
 
57
	 * */
54
	public interface Vue extends IsWidget {
-
 
55
		public Panel getForum();
58
	public interface Vue extends IsWidget {
56
 
-
 
57
		public Panel getDetailImageObservation();
59
		public Panel getForum();
58
 
-
 
59
		public Panel getFormulaireRechercheEflore();
60
		public Panel getDetailImageObservation();
60
 
-
 
61
		public Panel getVoteProtocole();
61
		public Panel getFormulaireRechercheEflore();
62
 
-
 
63
		public Button getBoutonAjoutProposition();
62
		public Panel getVoteProtocole();
64
 
-
 
65
		public Button getBoutonAjoutCommentaire();
63
		public Button getBoutonAjoutProposition();
66
 
-
 
67
		public Button getBoutonAjoutPropositionBas();
64
		public Button getBoutonAjoutCommentaire();
68
 
-
 
69
		public Button getBoutonAjoutCommentaireBas();
65
		public Button getBoutonAjoutPropositionBas();
70
 
-
 
71
		public HasWidgets getMetadonnees();
-
 
72
 
-
 
73
		// public void ajouterLigneVoteProtocole(IsWidget vue);
66
		public Button getBoutonAjoutCommentaireBas();
74
		// public void ajouterLigneVoteProtocole(String nom, IsWidget vue);
-
 
75
		public HasWidgets getNouvelleLigneProtocole();
67
		public HasWidgets getMetadonnees();
76
 
68
		public HasWidgets getNouvelleLigneProtocole();
Line 77... Line 69...
77
		public void afficherNomTaxonProbable(String nomTaxon);
69
		public void afficherNomTaxonProbable(String nomTaxon);
-
 
70
	}
Line 78... Line 71...
78
	}
71
 
79
 
-
 
80
	private Vue vue;
72
	private Vue vue;
81
 
73
	private FenetreOverlaySimplePresenteur fenetreOverlaySimplePresenteur;
Line -... Line 74...
-
 
74
 
-
 
75
	// Déclaration des services à utiliser
-
 
76
	private ProtocoleService protocoleService;
82
	FenetreOverlaySimplePresenteur fenetreOverlaySimplePresenteur;
77
	private ObservationService observationService;
83
 
78
 
84
	private ProtocoleService protocoleService;
-
 
85
	private ObservationService observationService;
79
	private CacheClient cache = CacheClient.getInstance();
-
 
80
	
86
 
81
	
Line 87... Line 82...
87
	public DeterminationPresenteur(Vue vue, ObservationService observationService, ProtocoleService protocoleService) {
82
	public DeterminationPresenteur(Vue vue, ObservationService observationService, ProtocoleService protocoleService) {
Line 88... Line 83...
88
		this.vue = vue;
83
		this.vue = vue;
89
		this.observationService = observationService;
-
 
90
		this.protocoleService = protocoleService;
84
		this.protocoleService = protocoleService;
-
 
85
		this.observationService = observationService;
91
	}
86
	}
Line 92... Line 87...
92
 
87
 
93
	public void go(final HasWidgets composite) {
88
	public void go(final HasWidgets composite) {
94
 
89
 
Line 95... Line 90...
95
		// TODO afficher une icone de chargement si le chargement devient trop
90
		// TODO afficher une icone de chargement si le chargement devient trop long
96
		// long
91
		// car tout l'écran est asynchrone ici
Line 97... Line 92...
97
		// car tout l'écran est asynchrone ici
92
		final Observation observationCourante = cache.getObservationCourante();
98
		observationService.getObservation(CacheClient.getInstance().getObservationCourante().getId(), new ObservationsCallback() {
93
		observationService.getObservation(observationCourante.getId(), new ObservationsCallback() {
99
 
94
 
Line 120... Line 115...
120
		});
115
		});
121
		gererEvenements();
116
		gererEvenements();
122
	}
117
	}
Line 123... Line 118...
123
 
118
 
124
	private void chargerEtAjouterLignesVotesProtocole() {
119
	private void chargerEtAjouterLignesVotesProtocole() {
125
		if (CacheClient.getInstance().getListeProtocoles() == null) {
120
		if (cache.getListeProtocoles() == null) {
Line 126... Line 121...
126
			protocoleService.getProtocoles(new ProtocolesCallback() {
121
			protocoleService.getProtocoles(new ProtocolesCallback() {
127
 
122
 
128
				@Override
123
				@Override
129
				public void surRetour(ProtocoleServiceResultat protocolesRecus) {
124
				public void surRetour(ProtocoleServiceResultat protocolesRecus) {
130
					List<Protocole> listeProtocoles = protocolesRecus.getProtocoles();
125
					List<Protocole> listeProtocoles = protocolesRecus.getProtocoles();
131
					ajouterLignesVotesProtocole(listeProtocoles);
126
					ajouterLignesVotesProtocole(listeProtocoles);
132
				}
127
				}
133
			});
128
			});
134
		} else {
129
		} else {
135
			List<Protocole> listeProtocoles = CacheClient.getInstance().getListeProtocoles();
130
			List<Protocole> listeProtocoles = cache.getListeProtocoles();
136
			ajouterLignesVotesProtocole(listeProtocoles);
131
			ajouterLignesVotesProtocole(listeProtocoles);
Line 137... Line 132...
137
		}
132
		}
Line 144... Line 139...
144
			presenteurLigneProtocole.go(vue.getNouvelleLigneProtocole());
139
			presenteurLigneProtocole.go(vue.getNouvelleLigneProtocole());
145
		}
140
		}
146
	}
141
	}
Line 147... Line 142...
147
 
142
 
148
	private void calculerEtAfficherVoteDeterminationPlusPopulaire() {
143
	private void calculerEtAfficherVoteDeterminationPlusPopulaire() {
-
 
144
		
-
 
145
		Observation observation = cache.getObservationCourante();
-
 
146
		String nomTaxon = observation.getNomRetenu();
149
 
147
		
150
		List<MoyenneVote> votesOrdonnes = CalculVoteDeterminationService.calculerVoteDeterminationPlusPopulaire(CacheClient.getInstance().getObservationCourante().getPropositionDeterminations());
148
		List<MoyenneVote> votesOrdonnes = CalculVoteDeterminationService.calculerVoteDeterminationPlusPopulaire(cache.getObservationCourante().getPropositionDeterminations());
151
		if (votesOrdonnes.size() > 0) {
149
		if (votesOrdonnes.size() > 0) {
152
			String nomTaxon = votesOrdonnes.get(0).getIntituleAssocie();
-
 
153
			vue.afficherNomTaxonProbable(nomTaxon);
150
			nomTaxon = votesOrdonnes.get(0).getIntituleAssocie();
-
 
151
		}
-
 
152
		
154
		}
153
		vue.afficherNomTaxonProbable(nomTaxon);
Line 155... Line 154...
155
	}
154
	}
156
 
155
 
157
	public void gererEvenements() {
156
	public void gererEvenements() {
Line 169... Line 168...
169
				fenetreOverlaySimplePresenteur.ouvrirFenetreModale(new FormulairePropositionPresenteur(new FormulairePropositionVue(), new PropositionDeterminationServiceConcret()));
168
				fenetreOverlaySimplePresenteur.ouvrirFenetreModale(new FormulairePropositionPresenteur(new FormulairePropositionVue(), new PropositionDeterminationServiceConcret()));
170
			}
169
			}
171
		};
170
		};
172
		vue.getBoutonAjoutProposition().addClickHandler(clicAjoutProposition);
171
		vue.getBoutonAjoutProposition().addClickHandler(clicAjoutProposition);
173
		vue.getBoutonAjoutPropositionBas().addClickHandler(clicAjoutProposition);
172
		vue.getBoutonAjoutPropositionBas().addClickHandler(clicAjoutProposition);
174
 
173
		
175
		ClickHandler clicAjoutCommentaire = new ClickHandler() {
174
		ClickHandler clicAjoutCommentaire = new ClickHandler() {
176
			@Override
175
			@Override
177
			public void onClick(ClickEvent event) {
176
			public void onClick(ClickEvent event) {
178
				FormulaireCommentairePresenteur commentairePresenteur = new FormulaireCommentairePresenteur(CacheClient.getInstance().getObservationCourante(), new CommentaireServiceConcret(), new FormulaireCommentaireVue());
177
				FormulaireCommentairePresenteur commentairePresenteur = new FormulaireCommentairePresenteur(cache.getObservationCourante(), new CommentaireServiceConcret(), new FormulaireCommentaireVue());
179
				fenetreOverlaySimplePresenteur = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue());
178
				fenetreOverlaySimplePresenteur = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue());
180
				fenetreOverlaySimplePresenteur.ouvrirFenetreModale(commentairePresenteur);
179
				fenetreOverlaySimplePresenteur.ouvrirFenetreModale(commentairePresenteur);
181
			}
180
			}
182
		};
181
		};
183
		vue.getBoutonAjoutCommentaire().addClickHandler(clicAjoutCommentaire);
182
		vue.getBoutonAjoutCommentaire().addClickHandler(clicAjoutCommentaire);