Subversion Repositories eFlore/Applications.del

Rev

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

Rev 973 Rev 1102
Line 3... Line 3...
3
import java.util.Iterator;
3
import java.util.Iterator;
4
import java.util.List;
4
import java.util.List;
5
import java.util.Map;
5
import java.util.Map;
Line 6... Line 6...
6
 
6
 
-
 
7
import org.tela_botanica.del.client.i18n.I18n;
7
import org.tela_botanica.del.client.i18n.I18n;
8
import org.tela_botanica.del.client.modeles.MoyenneVote;
8
import org.tela_botanica.del.client.modeles.PropositionDetermination;
9
import org.tela_botanica.del.client.modeles.PropositionDetermination;
-
 
10
import org.tela_botanica.del.client.modeles.VoteDetermination;
Line 9... Line 11...
9
import org.tela_botanica.del.client.modeles.VoteDetermination;
11
import org.tela_botanica.del.client.services.CalculVoteDeterminationService;
10
 
12
 
11
import com.google.gwt.core.client.GWT;
13
import com.google.gwt.core.client.GWT;
12
import com.google.gwt.i18n.client.DateTimeFormat;
14
import com.google.gwt.i18n.client.DateTimeFormat;
13
import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat;
15
import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat;
14
import com.google.gwt.uibinder.client.UiBinder;
16
import com.google.gwt.uibinder.client.UiBinder;
15
import com.google.gwt.uibinder.client.UiField;
17
import com.google.gwt.uibinder.client.UiField;
16
import com.google.gwt.user.client.ui.Composite;
18
import com.google.gwt.user.client.ui.Composite;
17
import com.google.gwt.user.client.ui.FlexTable;
19
import com.google.gwt.user.client.ui.FlexTable;
-
 
20
import com.google.gwt.user.client.ui.HTML;
-
 
21
import com.google.gwt.user.client.ui.HTMLPanel;
18
import com.google.gwt.user.client.ui.HTML;
22
import com.google.gwt.user.client.ui.HasWidgets;
19
import com.google.gwt.user.client.ui.HTMLPanel;
23
import com.google.gwt.user.client.ui.Label;
Line 20... Line 24...
20
import com.google.gwt.user.client.ui.Panel;
24
import com.google.gwt.user.client.ui.Panel;
Line 26... Line 30...
26
 
30
 
27
	interface DetailListeVotesDeterminationVueUIiBinder extends UiBinder<Widget, DetailListeVotesDeterminationVue> {
31
	interface DetailListeVotesDeterminationVueUIiBinder extends UiBinder<Widget, DetailListeVotesDeterminationVue> {
Line 28... Line 32...
28
	};
32
	};
29
	
33
	
-
 
34
	@UiField
-
 
35
	HTMLPanel titre, auteur, aucuneDonnees, detailVotePour, detailVoteContre;
-
 
36
	
Line 30... Line 37...
30
	@UiField
37
	@UiField
31
	HTMLPanel titre, auteur, aucuneDonnees;
38
	Label scorePour, scoreContre;
Line 32... Line -...
32
	
-
 
33
	@UiField
-
 
34
	Panel panneauChargement;
-
 
35
 
39
	
36
	@UiField
40
	@UiField
37
	FlexTable htmlTableau;
41
	Panel panneauChargement;
Line 38... Line 42...
38
	
42
 
Line 48... Line 52...
48
		
52
		
49
		HTML htmlAuteur = new HTML(I18n.getVocabulary().proposePar()+propositionDetermination.getAuteur());
53
		HTML htmlAuteur = new HTML(I18n.getVocabulary().proposePar()+propositionDetermination.getAuteur());
Line 50... Line 54...
50
		auteur.add(htmlAuteur);
54
		auteur.add(htmlAuteur);
51
		
-
 
Line 52... Line 55...
52
		Map<String, VoteDetermination> listeVotes = propositionDetermination.getVotesDeterminations();
55
		
-
 
56
		Map<String, VoteDetermination> listeVotes = propositionDetermination.getVotesDeterminations();
-
 
57
		
-
 
58
		int votesAnonymesPour = 0;
-
 
59
		int votesAnonymesContre = 0;
-
 
60
		MoyenneVote moyenne = CalculVoteDeterminationService.calculerVoteDetermination(propositionDetermination);
53
		htmlTableau.clear();
61
		scorePour.setText(String.valueOf(moyenne.getScore()) + '%');
54
		
62
		scoreContre.setText(String.valueOf(100 - moyenne.getScore()) + '%');
-
 
63
		
-
 
64
		for (Iterator<String> iterator = listeVotes.keySet().iterator(); iterator.hasNext();) {
-
 
65
			VoteDetermination voteDetermination = listeVotes.get(iterator.next());
55
		creerEntetes();
66
			if (voteDetermination.getVote() == 1) {
-
 
67
				//Votes pour
-
 
68
				if (voteDetermination.getAuteur() != null) {
-
 
69
					ajouterVote(voteDetermination, detailVotePour);
-
 
70
				} else {
-
 
71
					votesAnonymesPour++;
-
 
72
				}
-
 
73
			} else {
-
 
74
				//Votes contre
-
 
75
				if (voteDetermination.getAuteur() != null) {
-
 
76
					ajouterVote(voteDetermination, detailVoteContre);
-
 
77
				} else {
56
		for (Iterator<String> iterator = listeVotes.keySet().iterator(); iterator.hasNext();) {
78
					votesAnonymesContre++;
57
			VoteDetermination voteDetermination = listeVotes.get(iterator.next());	
-
 
58
			ajouterVote(voteDetermination);
-
 
59
		}
-
 
60
	}
-
 
61
	
-
 
62
	private void creerEntetes() {
-
 
63
		htmlTableau.setHTML(1, 1, I18n.getVocabulary().contributeur());
-
 
64
		htmlTableau.setHTML(1, 2, I18n.getVocabulary().valeurVote());
-
 
65
		htmlTableau.setHTML(1, 3, I18n.getVocabulary().date());
-
 
66
	}
-
 
Line 67... Line 79...
67
	
79
				}
68
	@Override
80
			}
69
	public void ajouterVote(VoteDetermination vote) {
-
 
70
		
-
 
71
		int index = htmlTableau.getRowCount() + 1;
-
 
72
		String valeurVote = (vote.getVote() == 1) ? I18n.getVocabulary().oui() : I18n.getVocabulary().non();
-
 
73
		
-
 
74
		String contributeur;
81
		}
75
		try {
82
		
Line 76... Line 83...
76
			contributeur = Integer.parseInt(vote.getContributeur())+"";
83
		if (votesAnonymesPour > 0) {
-
 
84
			LigneVotePresenteur presenteurVote= new LigneVotePresenteur(new LigneVoteVue(), votesAnonymesPour);
77
		} catch (Exception e) {
85
			presenteurVote.go(detailVotePour);
78
			contributeur = I18n.getVocabulary().anonyme();
86
		}
-
 
87
		
79
		}
88
		if (votesAnonymesContre > 0) {
80
		
89
			LigneVotePresenteur presenteurVote= new LigneVotePresenteur(new LigneVoteVue(), votesAnonymesContre);
81
		if(vote.getAuteur() != null) {
90
			presenteurVote.go(detailVoteContre);
82
			contributeur = vote.getAuteur().getNomComplet();
91
		}
83
		}
-
 
84
		
92
	}
Line 85... Line 93...
85
		htmlTableau.setHTML(index, 1, contributeur);
93
	
86
		htmlTableau.setHTML(index, 2, valeurVote+"");
94
	public void ajouterVote(VoteDetermination vote, HasWidgets panel) {
87
		htmlTableau.setHTML(index, 3, DateTimeFormat.getFormat("dd/MM/yyyy").format(vote.getDate()));
95
		LigneVotePresenteur presenteurVote = new LigneVotePresenteur(new LigneVoteVue(), vote);