public static void KiesHoofdmenu() { char?keuze = null; while (keuze != 'X') { string input; if (Account == null) { input = "AX"; } else // Profiel if (Account is Profiel) { input = "AXNR"; } else // Medewerker { input = "AXGBD"; } Console.ForegroundColor = ConsoleColor.Blue; Console.WriteLine(); Console.WriteLine($"================="); Console.WriteLine($"H O O F D M E N U - {LoginGegevens}"); Console.WriteLine($"================="); Console.WriteLine("<A>ccount"); if (Account is Medewerker) { Console.WriteLine("<G>oedkeuring nieuw profiel"); Console.WriteLine("<B>lokkeren van een profiel"); Console.WriteLine("<D>eblokkeren van een profiel"); } if (Account is Profiel) { Console.WriteLine("<N>ieuw bericht"); Console.WriteLine($"<R>aadplegen berichten van uw hoofdgemeente {(Account.Adres.Straat.Gemeente.HoofdGemeente == null ? Account.Adres.Straat.Gemeente.GemeenteNaam : Account.Adres.Straat.Gemeente.HoofdGemeente.GemeenteNaam)}"); } Console.WriteLine("e<X>it"); Console.WriteLine(); keuze = ConsoleHelper.LeesString($"Geef uw keuze ({input})", 1, OptionMode.Mandatory).ToUpper().ToCharArray()[0]; while (!input.Contains((char)keuze)) { ConsoleHelper.ToonFoutBoodschap($"Verkeerde keuze ({input}): "); keuze = ConsoleHelper.LeesString($"Geef uw keuze ({input})", 1, OptionMode.Mandatory).ToUpper().ToCharArray()[0]; } Console.ForegroundColor = DarkMode ? ConsoleColor.White : ConsoleColor.Black; switch (keuze) { case 'A': KiesAccountMenu(); break; case 'B': BlokkerenProfiel(); break; case 'D': DeblokkerenProfiel(); break; case 'G': GoedkeurenNieuwProfiel(); break; case 'N': InvoerenNieuwBericht(Account); break; case 'R': RaadplegenBerichten(Account); break; } } }
public static void RaadplegenBerichten(Persoon persoon) { Console.ForegroundColor = DarkMode ? ConsoleColor.White : ConsoleColor.Blue; Console.WriteLine($"Kies berichten voor hoofdgemeente: {persoon.Adres.Straat.Gemeente.HoofdGemeente.GemeenteNaam}"); using var context = new EFEindproefContext(); var berichten = from b in context.Berichten where b.GemeenteId == persoon.Adres.Straat.Gemeente.HoofdGemeente.GemeenteId select b; Console.WriteLine(""); foreach (var item in berichten.ToList()) { if (item.HoofdBerichtId == null) { Console.WriteLine("---------------------------------------"); Console.WriteLine($"--{item.BerichtId}-- Van: {persoon.LoginNaam} Op: {item.BerichtTijdstip}"); Console.WriteLine($"Type: {item.BerichtType.BerichtTypeNaam}"); Console.WriteLine($"Titel: {item.BerichtTitel}"); Console.WriteLine($"Tekst: {item.BerichtTekst}"); Console.WriteLine("---------------------------------------"); } else { Console.WriteLine($" --{item.BerichtId}-- Van: {persoon.LoginNaam} Op: {item.BerichtTijdstip}"); Console.WriteLine($" Tekst: {item.BerichtTekst}"); Console.WriteLine("------------------------------------------------"); } } Console.WriteLine(""); int IntKeuze; do { Console.Write("Geef het volgnummer uit de lijst: "); if (int.TryParse(Console.ReadLine(), out int keuze2)) { if (keuze2 > 0 && keuze2 < 1000) { IntKeuze = keuze2; break; } } Console.WriteLine("Geen geldige ingave"); } while (true); var bericht = (from b in context.Berichten where b.BerichtId == IntKeuze select b).FirstOrDefault(); Console.WriteLine(""); Console.WriteLine($"Gekozen bericht is {bericht.BerichtTijdstip} - {bericht.BerichtTitel} - {bericht.BerichtTekst}"); Console.WriteLine(""); string input; char? keuze = null; if (bericht.PersoonId != persoon.PersoonId) { input = "AX"; keuze = ConsoleHelper.LeesString($"Geef uw keuze ( e<X>it, <A>ntwoorden) ({input})", 1, OptionMode.Mandatory).ToUpper().ToCharArray()[0]; while (!input.Contains((char)keuze)) { ConsoleHelper.ToonFoutBoodschap($"Verkeerde keuze ({input}): "); keuze = ConsoleHelper.LeesString($"Geef uw keuze ({input})", 1, OptionMode.Mandatory).ToUpper().ToCharArray()[0]; } if (keuze == 'X') { KiesHoofdmenu(); } if (keuze == 'A') { AntwoordBericht(bericht); } } else { input = "AXWV"; keuze = ConsoleHelper.LeesString($"Geef uw keuze ( e<X>it, <A>ntwoorden , <W>ijzigen, <V>erwijderen) ({input})", 1, OptionMode.Mandatory).ToUpper().ToCharArray()[0]; while (!input.Contains((char)keuze)) { ConsoleHelper.ToonFoutBoodschap($"Verkeerde keuze ({input}): "); keuze = ConsoleHelper.LeesString($"Geef uw keuze ({input})", 1, OptionMode.Mandatory).ToUpper().ToCharArray()[0]; } if (keuze == 'V') { VerwijderBericht(bericht); } if (keuze == 'W') { WijzigBericht(bericht); } if (keuze == 'X') { KiesHoofdmenu(); } if (keuze == 'A') { AntwoordBericht(bericht); } } }
public static void KiesAccountMenu() { string input; char?keuze = null; while (keuze != 'X') { if (Account == null) { input = "IRX"; } else if (Account is Profiel) { input = "UTWVX"; } else { input = "UTX"; } Console.ForegroundColor = ConsoleColor.Blue; Console.WriteLine(); Console.WriteLine($"==================="); Console.WriteLine($"A C C O U N T M E N U - {LoginGegevens}"); Console.WriteLine($"==================="); if (Account == null) { Console.WriteLine("<I>nloggen"); Console.WriteLine("<R>egistreren"); } else { Console.WriteLine("<U>itloggen"); Console.WriteLine("<T>oon profielgegevens"); if (Account is Profiel) { Console.WriteLine("<W>ijzig profielgegevens"); Console.WriteLine("<V>erwijder profiel"); } } Console.WriteLine("e<X>it"); Console.WriteLine(); keuze = ConsoleHelper.LeesString($"Geef uw keuze ({input})", 1, OptionMode.Mandatory).ToUpper().ToCharArray()[0]; while (!input.Contains((char)keuze)) { ConsoleHelper.ToonFoutBoodschap($"Verkeerde keuze ({input}): "); keuze = ConsoleHelper.LeesString($"Geef uw keuze ({input})", 1, OptionMode.Mandatory).ToUpper().ToCharArray()[0]; } Console.ForegroundColor = DarkMode ? ConsoleColor.White : ConsoleColor.Blue; switch (keuze) { case 'I': Inloggen(); break; case 'U': Uitloggen(); break; case 'R': Registeren(); break; case 'T': ToonGegegevens(Account); break; case 'W': WijzigGegevens(Account); break; case 'V': VerwijderGegevens(Account); break; } if (keuze == 'X') { KiesHoofdmenu(); } } }