Subversion Repositories eFlore/Applications.del

Rev

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

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