/// <summary> /// Fetch data from the db based on the current filter. /// </summary> public void FetchData() { pDAO = new PollingStationDAO(DigitalVoterList.GetDefaultInstance()); mDAO = new MunicipalityDAO(DigitalVoterList.GetDefaultInstance()); vDAO = new VoterDAO(DigitalVoterList.GetDefaultInstance()); VoterFilter f = this.Filter; if (f.CPRNO != 0) { this.Voters = vDAO.Read(v => v.PrimaryKey == f.CPRNO); VoterDO voter = this.Voters.First(); this.PollingStations = pDAO.Read(ps => ps.PrimaryKey == voter.PollingStationId); PollingStationDO pollingStation = this.PollingStations.First(); this.Municipalities = mDAO.Read(m => m.PrimaryKey == pollingStation.MunicipalityId); } else if (f.PollingStation != null) { this.PollingStations = pDAO.Read(ps => ps.PrimaryKey == f.PollingStation.PrimaryKey); this.Voters = vDAO.Read(v => v.PollingStationId == f.PollingStation.PrimaryKey); this.Municipalities = mDAO.Read(m => m.PrimaryKey == f.PollingStation.MunicipalityId); } else if (f.Municipality != null) { this.Municipalities = mDAO.Read(m => m.PrimaryKey == f.Municipality.PrimaryKey); this.PollingStations = pDAO.Read(p => p.MunicipalityId == f.Municipality.PrimaryKey); this.Voters = Enumerable.Empty<VoterDO>(); foreach (var ps in this.PollingStations) { PollingStationDO ps1 = ps; this.Voters = this.Voters.Concat(vDAO.Read(v => v.PollingStationId == ps1.PrimaryKey)); } } }
public void SetUp() { if (!Directory.Exists(destination)) { Directory.CreateDirectory(destination); } // Create a municipality var mDAO = new MunicipalityDAO(); mDAO.Create(new MunicipalityDO(9998, "Teststreet 42", "4242 Testcity", "Municipality of Test")); IEnumerator <MunicipalityDO> muns = mDAO.Read(m => m.Name.StartsWith("Municipality of Test")).GetEnumerator(); muns.MoveNext(); this.mun = muns.Current; // Create 3 polling stations. var pDAO = new PollingStationDAO(); pDAO.Create(new PollingStationDO(this.mun.PrimaryKey, 10000, "Test Polling Station 1", "Teststreet 44")); pDAO.Create(new PollingStationDO(this.mun.PrimaryKey, 10001, "Test Polling Station 2", "Teststreet 45")); pDAO.Create(new PollingStationDO(this.mun.PrimaryKey, 10002, "Test Polling Station 3", "Teststreet 46")); IEnumerator <PollingStationDO> pss = pDAO.Read(po => po.Name.StartsWith("Test Polling Station")).GetEnumerator(); int pi = 0; while (pss.MoveNext()) { this.ps[pi++] = pss.Current; } // Create 10 voters. var vDAO = new VoterDAO(); vDAO.Create(new VoterDO(this.ps[0].PrimaryKey, 101264242, "Test Testson 1", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[1].PrimaryKey, 101264243, "Test Testson 2", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[2].PrimaryKey, 101264244, "Test Testson 3", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[0].PrimaryKey, 101264245, "Test Testson 4", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[0].PrimaryKey, 101264246, "Test Testson 5", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[1].PrimaryKey, 101264247, "Test Testson 6", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[1].PrimaryKey, 101264248, "Test Testson 7", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[2].PrimaryKey, 101264249, "Test Testson 8", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[2].PrimaryKey, 101264250, "Test Testson 9", "Teststreet 47", "4242 Testcity", false, false)); vDAO.Create(new VoterDO(this.ps[2].PrimaryKey, 101264251, "Test Testson 10", "Teststreet 47", "4242 Testcity", false, false)); IEnumerator <VoterDO> voters = vDAO.Read(vo => vo.Name.StartsWith("Test Testson")).GetEnumerator(); int vi = 0; while (voters.MoveNext()) { this.v[vi++] = voters.Current; } // Setup Voter Card Generator sub-system. this.filter = new VoterFilter(mun); this.vcg = new VoterCardGenerator(filter); this.vcgView = new VoterCardGeneratorWindow(this.vcg); this.vcgController = new VoterCardGeneratorController(this.vcg, this.vcgView); }
/// <summary> /// Do the municipalities on the VoterBox match the current selection? /// </summary> /// <returns>Answer to query (yes = true | no = false)</returns> public bool ValidateMunicipalities() { var serverMunicipalities = mDAO.Read(v => true).ToList(); foreach (var m in this.Municipalities) { if (!serverMunicipalities.Contains(m)) return false; } return true; }
/// <summary> Initializes a new instance of the <see cref="VoterSelection"/> class with proper values for the default selection. </summary> public VoterSelection() { pDAO = new PollingStationDAO(DigitalVoterList.GetDefaultInstance()); mDAO = new MunicipalityDAO(DigitalVoterList.GetDefaultInstance()); vDAO = new VoterDAO(DigitalVoterList.GetDefaultInstance()); // Call database to get initial values (no selection, ie. entire DB) try { Municipalities = mDAO.Read(o => true); PollingStations = pDAO.Read(o => true); voterCount = vDAO.Read(o => true).Count(); currentFilter = null; } catch (Exception e) { System.Windows.Forms.MessageBox.Show( string.Format("The system was not able to connect to the server. The system said: {0}", e.Message)); Environment.Exit(-1); } }