Subversion Repositories eFlore/Applications.del

Rev

Rev 297 | Rev 1098 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 297 Rev 966
1
package org.tela_botanica.del.client.services;
1
package org.tela_botanica.del.client.services;
2
 
2
 
3
import java.util.ArrayList;
3
import java.util.ArrayList;
4
import java.util.List;
4
import java.util.List;
5
import java.util.Map;
5
import java.util.Map;
6
import java.util.Set;
6
import java.util.Set;
7
 
7
 
8
import org.tela_botanica.del.client.modeles.MoyenneVote;
8
import org.tela_botanica.del.client.modeles.MoyenneVote;
9
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;
10
import org.tela_botanica.del.client.modeles.VoteDetermination;
-
 
11
import com.google.gwt.user.client.Window;
11
 
12
 
12
 
13
 
13
public class CalculVoteDeterminationService {
14
public class CalculVoteDeterminationService {
14
	
15
	
15
	public static List<MoyenneVote> calculerVoteDeterminationPlusPopulaire(List<PropositionDetermination> propositions) {
16
	public static List<MoyenneVote> calculerVoteDeterminationPlusPopulaire(List<PropositionDetermination> propositions) {
16
				
-
 
17
		List<MoyenneVote> pairesVotes = new ArrayList<MoyenneVote>();
17
		List<MoyenneVote> pairesVotes = new ArrayList<MoyenneVote>();
18
		
18
		
19
		for (PropositionDetermination proposition : propositions) {
19
		for (PropositionDetermination proposition : propositions) {
20
			pairesVotes.add(calculerVoteDetermination(proposition));
20
			pairesVotes.add(calculerVoteDetermination(proposition));
21
		}
21
		}
22
		
22
		
23
		java.util.Collections.sort(pairesVotes);
23
		java.util.Collections.sort(pairesVotes);
24
		
24
		
25
		return pairesVotes;
25
		return pairesVotes;
26
	}
26
	}
27
	
27
	
28
	public static MoyenneVote calculerVoteDetermination(PropositionDetermination propositionDetermination) {
28
	public static MoyenneVote calculerVoteDetermination(PropositionDetermination propositionDetermination) {
29
		
29
		
30
		Map<String,VoteDetermination> votes = propositionDetermination.getVotesDeterminations();
30
		Map<String,VoteDetermination> votes = propositionDetermination.getVotesDeterminations();
31
		int scoreVote = 0;
31
		int scoreVote = 0;
32
		
32
		
33
		if(votes.size() > 0) {
33
		if(votes.size() > 0) {
34
			Set<String> cles = votes.keySet();
34
			Set<String> cles = votes.keySet();
35
			for (String cle : cles) {
35
			for (String cle : cles) {
36
				scoreVote += votes.get(cle).getVote();
36
				scoreVote += votes.get(cle).getVote();
37
			}
37
			}
38
			
38
			
39
			scoreVote = (scoreVote*100)/votes.size();
39
			scoreVote = (scoreVote*100)/votes.size();
40
		} else {
40
		} else {
41
			scoreVote = -1;
41
			scoreVote = -1;
42
		}
42
		}
43
		
43
		
44
		return new MoyenneVote(scoreVote, propositionDetermination);
44
		return new MoyenneVote(scoreVote, propositionDetermination);
45
	}
45
	}
46
}
46
}