public void TestGeefTotalenKosten_8SoortenInDictionary() { _analyse = new Analyse(); IDictionary <Soort, decimal> totalen = _analyse.GeefTotalenKosten(); int aantalSoorten = totalen.Count; Assert.Equal(8, aantalSoorten); }
public void VulKostenIn(Analyse analyse, ExcelWorksheet ws) { foreach (var pair in analyse.GeefTotalenKosten()) { Soort soort = pair.Key; decimal waarde = pair.Value; if (tabelBedragen.ContainsKey(soort)) { ws.Cells[tabelBedragen[soort]].Value = waarde; } } }
public void TestGeefTotalenKosten() { DummyApplicationDbContext dbContext = new DummyApplicationDbContext(); IDictionary <Soort, decimal> expected = new Dictionary <Soort, decimal> { { Soort.Loonkost, 80430.81M }, { Soort.ExtraKost, 1550M }, { Soort.BegeleidingsKost, 2437.11M }, { Soort.EnclaveKost, 72000M }, { Soort.VoorbereidingsKost, 21500M }, { Soort.PersoneelsKost, 17200M }, { Soort.GereedschapsKost, 12300M }, { Soort.OpleidingsKost, 4700M } }; _analyse = new Analyse { Departement = dbContext.Aldi, /* KOSTEN */ Loonkosten = dbContext.Loonkosten, ExtraKosten = dbContext.ExtraKosten, BegeleidingsKosten = dbContext.BegeleidingsKosten, OpleidingsKosten = dbContext.OpleidingsKosten, PersoneelsKosten = dbContext.PersoneelsKosten, GereedschapsKosten = dbContext.GereedschapsKosten, VoorbereidingsKosten = dbContext.VoorbereidingsKosten, EnclaveKosten = dbContext.EnclaveKosten }; IDictionary <Soort, decimal> totalen = _analyse.GeefTotalenKosten(); foreach (KeyValuePair <Soort, decimal> pair in totalen) { decimal totaal = Math.Round(pair.Value, 2); Assert.Equal(expected[pair.Key], totaal); } }
public IActionResult Index(Analyse analyse) { ResultaatViewModel model = new ResultaatViewModel(); try { analyse = _analyseRepository.GetByIdAll(analyse.AnalyseId); model.AnalyseKlaar = analyse.InArchief; model.AnalyseId = analyse.AnalyseId; if (analyse.Departement != null) { IDictionary <Soort, decimal> kostenResultaat = analyse.GeefTotalenKosten(); IDictionary <Soort, decimal> batenResultaat = analyse.GeefTotalenBaten(); decimal kostenTotaal = kostenResultaat.Sum(t => t.Value); decimal batenTotaal = batenResultaat.Sum(t => t.Value); model.Resultaten = kostenResultaat; foreach (var rij in batenResultaat) { model.Resultaten.Add(rij); } model.KostenTotaal = kostenTotaal; model.BatenTotaal = batenTotaal; model.Totaal = batenTotaal - kostenTotaal; ViewData["SubTotaalBaten"] = model.BatenTotaal; // kleur voor nettoresultaat bepalen if (model.Totaal < 0) { ViewData["klasseTotaal"] = "alert-danger"; } else if (model.Totaal == 0) { ViewData["klasseTotaal"] = "alert-warning"; } else { ViewData["klasseTotaal"] = "alert-success"; } } else { TempData["error"] = "Opgelet! U heeft nog geen werkgever geselecteerd. Er zal dus nog geen resultaat " + "berekend worden voor deze analyse."; } } catch (Exception e) { _exceptionLogRepository.Add(new ExceptionLog(e, "Resultaat", "Index")); _exceptionLogRepository.Save(); TempData["error"] = "Er ging onverwachts iets fout, probeer later opnieuw"; } return(View(model)); }