diff --git a/Program.cs b/Program.cs index 82d0c42..f68e7ee 100644 --- a/Program.cs +++ b/Program.cs @@ -51,339 +51,6 @@ class Program { } static void Demo() { - //Unit tests: - /* - Quanti clienti considerare? 2 - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 1 - Inserire i dati di quale cliente? - 1 - 2 - Scelta: 1 - Inserire il nome: Verde - Inserire il cognome: Bassanetti - Inserire il codice fiscale: BSSVRD12345 - Inserire l'età: 17 - Inserire il numero di prenotazioni: 2Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 2 - Inserire la prenotazione di quale cliente? - 1 - 2 - Scelta: 1 - Quale periodo dell'anno scegliere? - 1. Primavera - 2. Estate - 3. Autunno - 4. Inverno - Scelta: 1 - Per quanti giorni prenotare? 2 - Per quante persone prenotare? 1 - Prenotazione inserita correttamente. - Premere un tasto per continuare. . . - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 2 - Inserire la prenotazione di quale cliente? - 1 - 2 - Scelta: 1 - Quale periodo dell'anno scegliere? - 1. Primavera - 2. Estate - 3. Autunno - 4. Inverno - Scelta: 2 - Per quanti giorni prenotare? 3 - Per quante persone prenotare? 2 - Prenotazione inserita correttamente. - Premere un tasto per continuare. . . - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 1 - Inserire i dati di quale cliente? - 1 - 2 - Scelta: 2 - Inserire il nome: Clarciccia - Inserire il cognome: Bassanetti - Inserire il codice fiscale: BSSCRC67890 - Inserire l'età: 3 - Inserire il numero di prenotazioni: 2Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 2 - Inserire la prenotazione di quale cliente? - 1 - 2 - Scelta: 2 - Quale periodo dell'anno scegliere? - 1. Primavera - 2. Estate - 3. Autunno - 4. Inverno - Scelta: 3 - Per quanti giorni prenotare? 4 - Per quante persone prenotare? 3 - Prenotazione inserita correttamente. - Premere un tasto per continuare. . . - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 2 - Inserire la prenotazione di quale cliente? - 1 - 2 - Scelta: 2 - Quale periodo dell'anno scegliere? - 1. Primavera - 2. Estate - 3. Autunno - 4. Inverno - Scelta: 4 - Per quanti giorni prenotare? 5 - Per quante persone prenotare? 4 - Prenotazione inserita correttamente. - Premere un tasto per continuare. . . - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 3 - Nome: Verde - Cognome: Bassanetti - Età: 17 - Codice fiscale: BSSVRD12345 - Numero prenotazioni: 2 - - Prenotazione n. 1: - Codice univoco: W7VP4H3DYCSQRCB8 - Periodo dell'anno: primavera - Giorni prenotati: 2 - Costo: 1534 - Numero persone: 1 - Codice fiscale a cui è intestata la prenotazione: BSSVRD12345 - - Prenotazione n. 2: - Codice univoco: LIE3BRME9MEHP7LA - Periodo dell'anno: estate - Giorni prenotati: 3 - Costo: 3873 - Numero persone: 2 - Codice fiscale a cui è intestata la prenotazione: BSSVRD12345 - - Nome: Clarciccia - Cognome: Bassanetti - Età: 3 - Codice fiscale: BSSCRC67890 - Numero prenotazioni: 2 - - Prenotazione n. 1: - Codice univoco: LQXJHLIPB0CFML7V - Periodo dell'anno: autunno - Giorni prenotati: 4 - Costo: 946 - Numero persone: 3 - Codice fiscale a cui è intestata la prenotazione: BSSCRC67890 - - Prenotazione n. 2: - Codice univoco: T5V16ROJWG2F2XA2 - Periodo dell'anno: inverno - Giorni prenotati: 5 - Costo: 1880 - Numero persone: 4 - Codice fiscale a cui è intestata la prenotazione: BSSCRC67890 - - Premere un tasto per continuare. . . - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 4 - Cancellare la prenotazione di quale cliente? - 1 - 2 - Scelta: 1 - Scegliere una prenotazione: - 1. W7VP4H3DYCSQRCB8 - 2. LIE3BRME9MEHP7LA - Scelta: 2 - Prenotazione cancellata con successo. - Premere un tasto per continuare. . . - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 6 - Aggiungere una prenotazione a quale cliente? - 1 - 2 - Scelta: 2 - Prenotazione aggiunta con successo - Premere un tasto per continuare. . . - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 2 - Inserire la prenotazione di quale cliente? - 1 - 2 - Scelta: 2 - Quale periodo dell'anno scegliere? - 1. Primavera - 2. Estate - 3. Autunno - 4. Inverno - Scelta: 4 - Per quanti giorni prenotare? 3 - Per quante persone prenotare? 4 - Prenotazione inserita correttamente. - Premere un tasto per continuare. . . - Scegliere un'opzione: - 1. Inserire i dati dei clienti - 2. Inserire una prenotazione - 3. Mostra informazioni cliente - 4. Cancella prenotazione - 5. Mostra tutte le prenotazioni - 6. Aggiungi prenotazione - 0. Esci - Scelta: 3 - Nome: Verde - Cognome: Bassanetti - Età: 17 - Codice fiscale: BSSVRD12345 - Numero prenotazioni: 2 - - Prenotazione n. 1: - Codice univoco: W7VP4H3DYCSQRCB8 - Periodo dell'anno: primavera - Giorni prenotati: 2 - Costo: 1534 - Numero persone: 1 - Codice fiscale a cui è intestata la prenotazione: BSSVRD12345 - - Nome: Clarciccia - Cognome: Bassanetti - Età: 3 - Codice fiscale: BSSCRC67890 - Numero prenotazioni: 3 - - Prenotazione n. 1: - Codice univoco: LQXJHLIPB0CFML7V - Periodo dell'anno: autunno - Giorni prenotati: 4 - Costo: 946 - Numero persone: 3 - Codice fiscale a cui è intestata la prenotazione: BSSCRC67890 - - Prenotazione n. 2: - Codice univoco: T5V16ROJWG2F2XA2 - Periodo dell'anno: inverno - Giorni prenotati: 5 - Costo: 1880 - Numero persone: 4 - Codice fiscale a cui è intestata la prenotazione: BSSCRC67890 - - Prenotazione n. 3: - Codice univoco: WSE2B1H2KJ81ZB4D - Periodo dell'anno: inverno - Giorni prenotati: 3 - Costo: 5058 - Numero persone: 4 - Codice fiscale a cui è intestata la prenotazione: BSSCRC67890 - - Premere un tasto per continuare. . . - Cliente n. 1 - - Prenotazione n. 1: - Codice univoco: W7VP4H3DYCSQRCB8 - Periodo dell'anno: primavera - Giorni prenotati: 2 - Costo: 1534 - Numero persone: 1 - Codice fiscale a cui è intestata la prenotazione: BSSVRD12345 - - Cliente n. 2 - - Prenotazione n. 1: - Codice univoco: LQXJHLIPB0CFML7V - Periodo dell'anno: autunno - Giorni prenotati: 4 - Costo: 946 - Numero persone: 3 - Codice fiscale a cui è intestata la prenotazione: BSSCRC67890 - - Prenotazione n. 2: - Codice univoco: T5V16ROJWG2F2XA2 - Periodo dell'anno: inverno - Giorni prenotati: 5 - Costo: 1880 - Numero persone: 4 - Codice fiscale a cui è intestata la prenotazione: BSSCRC67890 - - Prenotazione n. 3: - Codice univoco: WSE2B1H2KJ81ZB4D - Periodo dell'anno: inverno - Giorni prenotati: 3 - Costo: 5058 - Numero persone: 4 - Codice fiscale a cui è intestata la prenotazione: BSSCRC67890 - - Premere un tasto per continuare. . . - - */ Cliente[] clienti = new Cliente[2]; string nome, cognome, codiceFiscale; int eta = 0; @@ -465,6 +132,7 @@ class Program { { string[] periodi = ["primavera", "estate", "autunno", "inverno"]; int giorniPrenotati = 0, numeroPersone = 0, scelta; + bool exit = false; Console.WriteLine("Scegliere un'opzione:"); Console.WriteLine("1. Inserire i dati dei clienti"); @@ -551,24 +219,40 @@ class Program { } while (numeroPersone <= 0); - eccezione = false; + for (int i = 0; i < clienti[0].GetPrenotazioni().Length && !exit; i++) { + if (clienti[0].GetPrenotazioni()[i] != null) { + exit = clienti[0].GetPrenotazioni()[i].GetPeriodo() == periodi[scelta - 1] || + clienti[0].GetPrenotazioni()[i].GetGiorniPrenotati() == Convert.ToString(giorniPrenotati) || + clienti[0].GetPrenotazioni()[i].GetNumeroPersone() == Convert.ToString(numeroPersone); + } + } - try { - clienti[0].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + if (!exit) { + + eccezione = false; + + try { + clienti[0].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + } + catch (Exception e) { + Console.WriteLine(e.Message); + eccezione = true; + } + if (!eccezione) { + Console.WriteLine("Prenotazione inserita correttamente."); + } + Pausa(); } - catch (Exception e) { - Console.WriteLine(e.Message); - eccezione = true; + else { + Console.WriteLine("Prenotazione già esistente."); + Pausa(); } - if (!eccezione) { - Console.WriteLine("Prenotazione inserita correttamente."); - } - Pausa(); } //inserimento prenotazione 2 cliente1 { string[] periodi = ["primavera", "estate", "autunno", "inverno"]; int giorniPrenotati = 0, numeroPersone = 0, scelta; + bool exit = false; Console.WriteLine("Scegliere un'opzione:"); Console.WriteLine("1. Inserire i dati dei clienti"); @@ -655,19 +339,34 @@ class Program { } while (numeroPersone <= 0); - eccezione = false; + for (int i = 0; i < clienti[0].GetPrenotazioni().Length && !exit; i++) { + if (clienti[0].GetPrenotazioni()[i] != null) { + exit = clienti[0].GetPrenotazioni()[i].GetPeriodo() == periodi[scelta - 1] || + clienti[0].GetPrenotazioni()[i].GetGiorniPrenotati() == Convert.ToString(giorniPrenotati) || + clienti[0].GetPrenotazioni()[i].GetNumeroPersone() == Convert.ToString(numeroPersone); + } + } - try { - clienti[0].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + if (!exit) { + + eccezione = false; + + try { + clienti[0].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + } + catch (Exception e) { + Console.WriteLine(e.Message); + eccezione = true; + } + if (!eccezione) { + Console.WriteLine("Prenotazione inserita correttamente."); + } + Pausa(); } - catch (Exception e) { - Console.WriteLine(e.Message); - eccezione = true; + else { + Console.WriteLine("Prenotazione già esistente."); + Pausa(); } - if (!eccezione) { - Console.WriteLine("Prenotazione inserita correttamente."); - } - Pausa(); } //inserimento cliente2 { @@ -744,6 +443,7 @@ class Program { { string[] periodi = ["primavera", "estate", "autunno", "inverno"]; int giorniPrenotati = 0, numeroPersone = 0, scelta; + bool exit = false; Console.WriteLine("Scegliere un'opzione:"); Console.WriteLine("1. Inserire i dati dei clienti"); @@ -830,24 +530,40 @@ class Program { } while (numeroPersone <= 0); - eccezione = false; + for (int i = 0; i < clienti[1].GetPrenotazioni().Length && !exit; i++) { + if (clienti[1].GetPrenotazioni()[i] != null) { + exit = clienti[1].GetPrenotazioni()[i].GetPeriodo() == periodi[scelta - 1] || + clienti[1].GetPrenotazioni()[i].GetGiorniPrenotati() == Convert.ToString(giorniPrenotati) || + clienti[1].GetPrenotazioni()[i].GetNumeroPersone() == Convert.ToString(numeroPersone); + } + } - try { - clienti[1].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + if (!exit) { + + eccezione = false; + + try { + clienti[1].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + } + catch (Exception e) { + Console.WriteLine(e.Message); + eccezione = true; + } + if (!eccezione) { + Console.WriteLine("Prenotazione inserita correttamente."); + } + Pausa(); } - catch (Exception e) { - Console.WriteLine(e.Message); - eccezione = true; + else { + Console.WriteLine("Prenotazione già esistente."); + Pausa(); } - if (!eccezione) { - Console.WriteLine("Prenotazione inserita correttamente."); - } - Pausa(); } //inserimento prenotazione 2 cliente2 { string[] periodi = ["primavera", "estate", "autunno", "inverno"]; int giorniPrenotati = 0, numeroPersone = 0, scelta; + bool exit = false; Console.WriteLine("Scegliere un'opzione:"); Console.WriteLine("1. Inserire i dati dei clienti"); @@ -934,19 +650,34 @@ class Program { } while (numeroPersone <= 0); - eccezione = false; + for (int i = 0; i < clienti[1].GetPrenotazioni().Length && !exit; i++) { + if (clienti[1].GetPrenotazioni()[i] != null) { + exit = clienti[1].GetPrenotazioni()[i].GetPeriodo() == periodi[scelta - 1] || + clienti[1].GetPrenotazioni()[i].GetGiorniPrenotati() == Convert.ToString(giorniPrenotati) || + clienti[1].GetPrenotazioni()[i].GetNumeroPersone() == Convert.ToString(numeroPersone); + } + } - try { - clienti[1].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + if (!exit) { + + eccezione = false; + + try { + clienti[1].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + } + catch (Exception e) { + Console.WriteLine(e.Message); + eccezione = true; + } + if (!eccezione) { + Console.WriteLine("Prenotazione inserita correttamente."); + } + Pausa(); } - catch (Exception e) { - Console.WriteLine(e.Message); - eccezione = true; + else { + Console.WriteLine("Prenotazione già esistente."); + Pausa(); } - if (!eccezione) { - Console.WriteLine("Prenotazione inserita correttamente."); - } - Pausa(); } //stampa di tutti i clienti e tutte le prenotazioni { @@ -1272,6 +1003,7 @@ class Program { case 2: string[] periodi = ["primavera", "estate", "autunno", "inverno"]; int giorniPrenotati = 0, numeroPersone = 0; + bool exit = false; do { Console.WriteLine("Inserire la prenotazione di quale cliente? "); @@ -1374,19 +1106,34 @@ class Program { } while (numeroPersone <= 0); - eccezione = false; + for (int i = 0; i < clienti[input - 1].GetPrenotazioni().Length && !exit; i++) { + if (clienti[input - 1].GetPrenotazioni()[i] != null) { + exit = clienti[input - 1].GetPrenotazioni()[i].GetPeriodo() == periodi[scelta - 1] || + clienti[input - 1].GetPrenotazioni()[i].GetGiorniPrenotati() == Convert.ToString(giorniPrenotati) || + clienti[input - 1].GetPrenotazioni()[i].GetNumeroPersone() == Convert.ToString(numeroPersone); + } + } - try { - clienti[input - 1].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + if (!exit) { + + eccezione = false; + + try { + clienti[input - 1].InserisciPrenotazione(periodi[scelta - 1], Convert.ToString(giorniPrenotati), Convert.ToString(numeroPersone)); + } + catch (Exception e) { + Console.WriteLine(e.Message); + eccezione = true; + } + if (!eccezione) { + Console.WriteLine("Prenotazione inserita correttamente."); + } + Pausa(); } - catch (Exception e) { - Console.WriteLine(e.Message); - eccezione = true; + else { + Console.WriteLine("Prenotazione già esistente."); + Pausa(); } - if (!eccezione) { - Console.WriteLine("Prenotazione inserita correttamente."); - } - Pausa(); break; case 3: diff --git a/bin/Debug/net9.0/agenzia_viaggi.dll b/bin/Debug/net9.0/agenzia_viaggi.dll index 13f2524..ef5efd3 100644 Binary files a/bin/Debug/net9.0/agenzia_viaggi.dll and b/bin/Debug/net9.0/agenzia_viaggi.dll differ diff --git a/bin/Debug/net9.0/agenzia_viaggi.pdb b/bin/Debug/net9.0/agenzia_viaggi.pdb index 052b388..1526067 100644 Binary files a/bin/Debug/net9.0/agenzia_viaggi.pdb and b/bin/Debug/net9.0/agenzia_viaggi.pdb differ diff --git a/obj/Debug/net9.0/agenzia_viaggi.AssemblyInfo.cs b/obj/Debug/net9.0/agenzia_viaggi.AssemblyInfo.cs index bd6ba01..8989817 100644 --- a/obj/Debug/net9.0/agenzia_viaggi.AssemblyInfo.cs +++ b/obj/Debug/net9.0/agenzia_viaggi.AssemblyInfo.cs @@ -13,10 +13,10 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("agenzia_viaggi")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+d78b3c74cce949654f006f3b1870bdcad2e4dc0a")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+9eac5a5ec45cf7e6cb0f9452f425a08d185e86e1")] [assembly: System.Reflection.AssemblyProductAttribute("agenzia_viaggi")] [assembly: System.Reflection.AssemblyTitleAttribute("agenzia_viaggi")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] -// Generato dalla classe WriteCodeFragment di MSBuild. +// Generated by the MSBuild WriteCodeFragment class. diff --git a/obj/Debug/net9.0/agenzia_viaggi.AssemblyInfoInputs.cache b/obj/Debug/net9.0/agenzia_viaggi.AssemblyInfoInputs.cache index dbf37f7..bb643fb 100644 --- a/obj/Debug/net9.0/agenzia_viaggi.AssemblyInfoInputs.cache +++ b/obj/Debug/net9.0/agenzia_viaggi.AssemblyInfoInputs.cache @@ -1 +1 @@ -a4716dc6adf8bf596c298cd537a77cb2e9d160b0120bcf4da3eca3db58ce525f +3c7d8fec6052be50a3529960f37448ffce5cb2d4ff973de00c355bb1dfcee246 diff --git a/obj/Debug/net9.0/agenzia_viaggi.dll b/obj/Debug/net9.0/agenzia_viaggi.dll index 13f2524..ef5efd3 100644 Binary files a/obj/Debug/net9.0/agenzia_viaggi.dll and b/obj/Debug/net9.0/agenzia_viaggi.dll differ diff --git a/obj/Debug/net9.0/agenzia_viaggi.pdb b/obj/Debug/net9.0/agenzia_viaggi.pdb index 052b388..1526067 100644 Binary files a/obj/Debug/net9.0/agenzia_viaggi.pdb and b/obj/Debug/net9.0/agenzia_viaggi.pdb differ diff --git a/obj/Debug/net9.0/ref/agenzia_viaggi.dll b/obj/Debug/net9.0/ref/agenzia_viaggi.dll index f5c4f78..df36e13 100644 Binary files a/obj/Debug/net9.0/ref/agenzia_viaggi.dll and b/obj/Debug/net9.0/ref/agenzia_viaggi.dll differ diff --git a/obj/Debug/net9.0/refint/agenzia_viaggi.dll b/obj/Debug/net9.0/refint/agenzia_viaggi.dll index f5c4f78..df36e13 100644 Binary files a/obj/Debug/net9.0/refint/agenzia_viaggi.dll and b/obj/Debug/net9.0/refint/agenzia_viaggi.dll differ