Dummy Voters Fetcher fetching dummy voters
parent
c90be520fe
commit
d2c9893ccf
|
@ -11,6 +11,7 @@ import polling_station_dashboard.search.addVoter.java.AddVoterLoader;
|
|||
import javafx.scene.control.Button;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -55,20 +56,24 @@ public class SearchHandler implements EventHandler {
|
|||
private void VotersCheck() throws IOException {
|
||||
List<String> filters = GetFilters();
|
||||
|
||||
List<Object> voters = votersFetcher.FetchVoters(filters);
|
||||
List<HashMap<String,String>> voters = votersFetcher.FetchVoters(filters);
|
||||
|
||||
if (voters.isEmpty())
|
||||
{
|
||||
AddVoterAddButton();
|
||||
}
|
||||
else if(1==1)
|
||||
else if(voters.get(0).get("EligibleToVote").equals("no"))
|
||||
{
|
||||
// founded the voter but he cant vote
|
||||
}
|
||||
else
|
||||
else if(voters.get(0).get("EligibleToVote").equals("yes"))
|
||||
{
|
||||
// founded the voter and he can vote
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new IOException("The given voter have no valid EligibleToVote field");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,16 +1,60 @@
|
|||
package polling_station_dashboard.search.VotersFetcher;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* Created by Vladimir Eliezer Tokarev on 18/06/2016.
|
||||
* This object used for receiving empty list of object for the logic of add voter could be tested
|
||||
* is implemented in this dummy way for testing the normal gui flow
|
||||
*/
|
||||
public class DummyVotersFetcher implements VotersFetcher {
|
||||
|
||||
private List<HashMap<String,String>> dummyVoters;
|
||||
|
||||
public DummyVotersFetcher()
|
||||
{
|
||||
this.dummyVoters = new ArrayList<>();
|
||||
|
||||
// voter that cant vote
|
||||
HashMap<String, String> voter1 = new HashMap<>();
|
||||
voter1.put("IDNumber", "123123123");
|
||||
voter1.put("EligibleToVote", "no");
|
||||
voter1.put("Status", "HasNotVoted");
|
||||
voter1.put("Channel", "IDCMaths");
|
||||
|
||||
// voter that can vote
|
||||
HashMap<String, String> voter2 = new HashMap<>();
|
||||
voter2.put("IDNumber", "234234234");
|
||||
voter2.put("EligibleToVote", "yes");
|
||||
voter2.put("Status", "HasNotVoted");
|
||||
voter2.put("Channel", "IDCPhysics");
|
||||
|
||||
this.dummyVoters.add(voter1);
|
||||
this.dummyVoters.add(voter2);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets list of filters and return all the voters from dummy voters that have those filters
|
||||
* @param filters list of strings
|
||||
*/
|
||||
@Override
|
||||
public List<Object> FetchVoters(List<String> filters) {
|
||||
return new ArrayList<>();
|
||||
public List<HashMap<String,String>> FetchVoters(List<String> filters)
|
||||
{
|
||||
List<HashMap<String,String>> votersWithFilters = new ArrayList<>();
|
||||
|
||||
for (String filter : filters) {
|
||||
for (HashMap<String, String> voter: this.dummyVoters) {
|
||||
Iterator it = voter.entrySet().iterator();
|
||||
while (it.hasNext()) {
|
||||
Map.Entry pair = (Map.Entry) it.next();
|
||||
if (((String) pair.getKey()).contains(filter) || ((String) pair.getValue()).contains(filter)) {
|
||||
votersWithFilters.add(voter);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return votersWithFilters;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package polling_station_dashboard.search.VotersFetcher;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -8,5 +9,5 @@ import java.util.List;
|
|||
*/
|
||||
public interface VotersFetcher {
|
||||
|
||||
List<Object> FetchVoters(List<String> filters);
|
||||
List<HashMap<String,String>> FetchVoters(List<String> filters);
|
||||
}
|
||||
|
|
|
@ -4,6 +4,8 @@ import javafx.fxml.FXML;
|
|||
import javafx.scene.layout.Pane;
|
||||
import javafx.stage.Stage;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
/**
|
||||
* Created by Vladimir Eliezer Tokarev on 11/06/2016.
|
||||
* This object controls the add voter panel behavior
|
||||
|
@ -12,6 +14,7 @@ public class AddVoterController {
|
|||
|
||||
private Stage currentStage;
|
||||
|
||||
|
||||
public void SetStage(Stage primaryStage)
|
||||
{
|
||||
this.currentStage = primaryStage;
|
||||
|
|
Loading…
Reference in New Issue