//Deze method kopieërt een bestaade film. private static void CopyMovie() { JsonSerializerOptions options = new JsonSerializerOptions(); options.WriteIndented = true; Console.WriteLine("Welke film wilt u kopiëeren?"); Movies.DisplayMovies(0); Movies chosenMovie = null; int choice1 = -1; 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}"); int movieID = Movies.ChangeID(); Console.WriteLine($"Vul een nieuwe starttijd in. Oude is: {Program.movies[choice1 - 1].startTime}"); DateTime startTime = Movies.ChangeStart(); Console.WriteLine($"Vul een nieuwe zaal in. Oude is {Program.movies[choice1 - 1].screenNumber + 1}."); int screenNumber = Movies.ChangeScreen(); Console.WriteLine($"Starttijd : {chosenMovie.startTime}, Zaal: {chosenMovie.screenNumber + 1} "); Console.WriteLine("Kloppen al deze gegevens? Zo ja, vul 'y' in."); string snackInput = Console.ReadLine(); if (snackInput == "y" || snackInput == "Y") { Movies movieToAdd = new Movies(movieID, chosenMovie.MovieName, startTime, screenNumber, chosenMovie.runTime, chosenMovie.genre, chosenMovie.director, chosenMovie.movieType, chosenMovie.Synopsis); Program.movies.Add(movieToAdd); 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..."); } }
//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..."); } }