private static InschrijvingDataModel MapToDataModel(InschrijvingViewModel inschrijving, string sessionId, long bedrag) { return(new InschrijvingDataModel { Commentaar = inschrijving.Commentaar, Email = inschrijving.Email, Naam = inschrijving.Naam, Privacyverklaring = inschrijving.Privacyverklaring, SessionId = sessionId, LidVanClub = inschrijving.LidVanClub, KindOpSchool = inschrijving.KindOpSchool, GratisLidmaatschap = inschrijving.GratisLidmaatschap, Straatnaam = inschrijving.Straatnaam, Postcode = inschrijving.Postcode, Plaats = inschrijving.Plaats, Telefoon = inschrijving.Telefoon, Kinderen = inschrijving.Kinderen.Select(k => new KindDataModel { Achternaam = k.Achternaam, Anekdote = k.Anekdote, Geslacht = k.Geslacht, Leeftijd = k.Leeftijd, Voornaam = k.Voornaam }).ToArray(), Bedrag = bedrag }); }
// GET: Inschrijvingen/Edit/5 public async Task <IActionResult> Edit(Guid?id) { // mag de huidige gebruiker (indien gekend) deze gegevens zien // als het resultaat null is, mag hij de gegevens zien // als het resultaat niet null is, toon dan de gepaste pagina (login of unauthorized) IActionResult actionResult = CredentialBeheerder.CheckIfAllowed(_role, TempData, _context);; if (actionResult != null) { return(actionResult); } if (id == null) { return(NotFound()); } // haal de inschrijvingen voor de activiteit uit de db var inschrijvingenVoorActiviteit = await _context.Inschrijvingen .AsNoTracking() .Where(i => i.Id_Activiteit == id) .Include(i => i.Lid) .ToListAsync(); // geen inschrijvingen if (inschrijvingenVoorActiviteit == null) { return(NotFound()); } // haal de activiteit uit de db var activiteit = _context.Activiteiten .AsNoTracking() .Where(a => a.Id == id) .FirstOrDefault(); // niet gevonden if (activiteit == null) { return(NotFound()); } // onthoud het aantal inschrijvingen activiteit.AantalInschrijvingen = inschrijvingenVoorActiviteit.Count; // haal een lijst met alle leden uit de db var leden = await _context.Leden .OrderBy(l => l.Achternaam) .ThenBy(l => l.Voornaam) .ToListAsync(); var model = new InschrijvingViewModel() { AlleLeden = leden, // enkel de leden van de inschrijvingen nodig IngeschrevenLeden = inschrijvingenVoorActiviteit.Select(l => l.Lid).ToList(), Activiteit = activiteit, Id_Activiteit = activiteit.Id }; return(View(model)); }
private static IEnumerable <SessionLineItemOptions> CreateLineItemsFromInschrijving(InschrijvingViewModel inschrijving, ILogger log) { log.LogInformation($"KindOpSchool is {inschrijving.KindOpSchool} and LidVanClub is {inschrijving.LidVanClub}"); if (!inschrijving.KindOpSchool && !inschrijving.LidVanClub) { log.LogInformation("Person needs a club subscription. Creating line item"); yield return(new SessionLineItemOptions { Name = "Lidmaatschap Nederlandse Club Oslo", Description = "2020", Amount = 17500, Currency = "nok", Quantity = 1 }); } log.LogInformation($"AantalKinderen is {inschrijving.Kinderen.Count()}"); foreach (var kind in inschrijving.Kinderen) { log.LogInformation("Creating line item for kind"); yield return(new SessionLineItemOptions { Name = "Inschrijving Sinterklaas", Description = kind.Voornaam + " " + kind.Achternaam, Amount = 10000, Currency = "nok", Quantity = 1 }); } }