private void VoegBivakStatusMededelingenToe(BivakAangifteLijstInfo aangiftestatus, IList <Mededeling> mededelingen) { if (aangiftestatus == null) { return; } if (aangiftestatus.Bivakinfos == null) { return; } if (aangiftestatus.AlgemeneStatus == BivakAangifteStatus.NogNietVanBelang || aangiftestatus.AlgemeneStatus == BivakAangifteStatus.Ok) { return; } if (aangiftestatus.AlgemeneStatus == BivakAangifteStatus.Ontbrekend && aangiftestatus.Bivakinfos.Count == 0) { var url = Url.Action("Nieuw", "Uitstappen"); mededelingen.Add(new Mededeling { Type = MededelingsType.Probleem, Info = String.Format(Resources.BivakAangifteNogInTeVullen, url) }); } else { foreach (var bivakstatus in aangiftestatus.Bivakinfos) { if (bivakstatus.Status == BivakAangifteStatus.PlaatsEnContactOntbreekt) { var url = Url.Action("Bekijken", "Uitstappen", new { id = bivakstatus.ID }); mededelingen.Add(new Mededeling { Type = MededelingsType.Probleem, Info = String.Format(Resources.BeideNogInvullenOpBivakAangifte, bivakstatus.Omschrijving, url) }); } if (bivakstatus.Status == BivakAangifteStatus.PlaatsOntbreekt) { var url = Url.Action("PlaatsBewerken", "Uitstappen", new { id = bivakstatus.ID }); mededelingen.Add(new Mededeling { Type = MededelingsType.Probleem, Info = String.Format(Resources.AdresNogInvullenOpBivakAangifte, bivakstatus.Omschrijving, url) }); } else if (bivakstatus.Status == BivakAangifteStatus.ContactOntbreekt) { var url = Url.Action("Bekijken", "Uitstappen", new { id = bivakstatus.ID }); mededelingen.Add(new Mededeling { Type = MededelingsType.Probleem, Info = String.Format(Resources.PersoonNogInvullenOpBivakAangifte, bivakstatus.Omschrijving, url) }); } } } }
public BivakAangifteLijstInfo BivakStatusOphalen(int groepId) { var resultaat = new BivakAangifteLijstInfo(); var gwjQuery = _groepsWerkJaarRepo.Select(); var groepsWerkJaar = gwjQuery.Where(gwj => gwj.Groep.ID == groepId).OrderByDescending(gwj => gwj.WerkJaar).FirstOrDefault(); if (groepsWerkJaar == null || !_autorisatieMgr.IsGav(groepsWerkJaar)) { throw FaultExceptionHelper.GeenGav(); } if (!_uitstappenMgr.BivakAangifteVanBelang(groepsWerkJaar)) { resultaat.AlgemeneStatus = BivakAangifteStatus.NogNietVanBelang; } else { resultaat.Bivakinfos = (from u in groepsWerkJaar.Uitstap where u.IsBivak select new BivakAangifteInfo { ID = u.ID, Omschrijving = u.Naam, Status = _uitstappenMgr.StatusBepalen(u) }).ToList(); if (resultaat.Bivakinfos.FirstOrDefault() == null) { resultaat.AlgemeneStatus = BivakAangifteStatus.Ontbrekend; } else if (resultaat.Bivakinfos.Any(bi => bi.Status != BivakAangifteStatus.Ok)) { resultaat.AlgemeneStatus = BivakAangifteStatus.Ontbrekend; } else { resultaat.AlgemeneStatus = BivakAangifteStatus.Ok; } } return(resultaat); }