//Deze method geeft de manager de mogelijkheid om een nieuwe film in het systeem toe te voegen. private static void AddMovie() { JsonSerializerOptions options = new JsonSerializerOptions(); options.WriteIndented = true; int movieID = Movies.ChangeID(); Console.WriteLine("Vul de titel in:"); string movieName = Console.ReadLine(); Console.WriteLine("Vul de speeltijd in minuten in."); int runTime = -1; while (runTime < 0) { try { runTime = int.Parse(Console.ReadLine()); } catch (Exception e) { Console.WriteLine("Vul een positief getal in."); } } Console.WriteLine("Vul de regisseur in:"); string director = Console.ReadLine(); Console.WriteLine("Vul de genre in:"); string genre = Console.ReadLine(); Console.WriteLine("Vul het soort film in. Alleen 'Base', '3D', 'IMAX' en 'Auro3D' zijn valiede opties."); string movieType = Console.ReadLine(); while (true) { if (movieType == "3D" || movieType == "Base" || movieType == "Auro3D" || movieType == "IMAX") { break; } else { Console.WriteLine("Alleen 'Base', '3D', 'IMAX' en 'Auro3D' zijn valiede opties."); movieType = Console.ReadLine(); } } Console.WriteLine("Vul een beschrijving in:"); string synopsis = Console.ReadLine(); Console.WriteLine("Selecteer een zaal. (getal tussen 1 en 5)"); int screenNumber = Movies.ChangeScreen(); Console.WriteLine("Vul een geldige starttijd in."); Console.WriteLine("De ingevulde dag kan niet de huidige dag zijn."); DateTime startTime = Movies.ChangeStart(); Screen tempScreen = (Screen)Screen.screenList[screenNumber]; Console.WriteLine("Kloppen al deze gegevens? Zo ja, vul 'y' in."); Console.WriteLine($"ID: {movieID}, Titel: {movieName}, Starttijd: {startTime}, Zaal: {tempScreen.ScreenNumber} \n" + $"Duur : {runTime} minuten, Genre(s) : {genre}, Regisseur: {director}, Type: {movieType}. Beschrijving: \n {synopsis}"); string snackInput = Console.ReadLine(); if (snackInput == "y" || snackInput == "Y") { Movies newMovie = new Movies(movieID, movieName, startTime, screenNumber, runTime, genre, director, movieType, synopsis); Program.movies.Add(newMovie); var jsonString = JsonSerializer.Serialize(Program.movies, options); File.WriteAllText("movies.json", jsonString); Console.WriteLine("Film toegevoegd."); } else { Console.WriteLine("Terugkeren naar het hoofdmenu..."); } }
private static void ChangeMovie() { JsonSerializerOptions options = new JsonSerializerOptions(); options.WriteIndented = true; Console.WriteLine("Van welke film wilt u de data veranderen?"); Movies.DisplayMovies(0); Movies chosenMovie = null; int choice1 = 0; while (chosenMovie == null) { try { choice1 = int.Parse(Console.ReadLine()); if (choice1 > 0 || choice1 <= Program.movies.Count) { chosenMovie = Program.movies[choice1 - 1]; } } catch (Exception e) { Console.WriteLine("Voer een geldige optie in."); } } Console.WriteLine($"U heeft gekozen voor film {chosenMovie.movieID}"); Console.WriteLine("Welke data wilt u veranderen? \n Starttijd / Zaal / Beschrijving"); string choice2 = ""; while (choice2.ToLower() != "Starttijd".ToLower() && choice2.ToLower() != "Zaal".ToLower() && choice2.ToLower() != "Beschrijving".ToLower()) { choice2 = Console.ReadLine(); if (choice2.ToLower() != "Starttijd".ToLower() && choice2.ToLower() != "Zaal".ToLower() && choice2.ToLower() != "Beschrijving".ToLower()) { Console.WriteLine("Verkeerde invoer. Kies een van de bovenstaande opties."); } } if (choice2.ToLower() == "Starttijd".ToLower()) { Console.WriteLine($"Vul een nieuwe starttijd in. Oude is {Program.movies[choice1 - 1].startTime}"); chosenMovie.startTime = Movies.ChangeStart(); } else if (choice2.ToLower() == "Zaal".ToLower()) { Console.WriteLine($"Vul een nieuwe zaal in. Oude is {Program.movies[choice1 - 1].screenNumber + 1}."); chosenMovie.screenNumber = Movies.ChangeScreen(); } else if (choice2.ToLower() == "Beschrijving".ToLower()) { Console.WriteLine($"Vul een nieuwe beschrijving in. Oude: {Program.movies[choice1 - 1].Synopsis}."); chosenMovie.Synopsis = Console.ReadLine(); Console.WriteLine($"Nieuwe bescrijving is: {chosenMovie.Synopsis}"); } Console.WriteLine("Kloppen al deze gegevens? Zo ja, vul 'y' in."); string snackInput = Console.ReadLine(); if (snackInput == "y" || snackInput == "Y") { Program.movies[choice1 - 1].startTime = chosenMovie.startTime; Program.movies[choice1 - 1].screenNumber = chosenMovie.screenNumber; Program.movies[choice1 - 1].Synopsis = chosenMovie.Synopsis; var jsonString = JsonSerializer.Serialize(Program.movies, options); File.WriteAllText("movies.json", jsonString); Console.WriteLine("Film data veranderd."); } else { Console.WriteLine("Proces afgesloten. Terugkeren naar het hoofdmenu..."); } }