static void Main(string[] args) { ContoCorrente c; ContoCorrente d; //Creazione conto correnti Banca.aggiungiConto(new ContoCorrente(new Persona("Andrea", "Cecchini", "Rimini", new DateTime(2002, 05, 02), "CCCNDR05E02"), "AAACCCEEND")); Banca.aggiungiConto(new ContoCorrente(new Persona("Enrique", "Angelini", "Riccione", new DateTime(2000, 02, 10), "AAANRQ10E02"), "EEEAAANNRIQ")); Banca.aggiungiConto(new ContoOnline(new Persona("Matteo", "Canghiari", "Riccione", new DateTime(2002, 05, 14), "CCCATT05314"), "MMMCCCTTEO")); // Creazione movimenti // Esempio Versamento Console.WriteLine("-----------------------------------------------------"); Console.WriteLine("Il cliente Andrea Cecchini vuole versare 100 euro.IBAN:AAACCCEEND"); c = Banca.CercaConto("AAACCCEEND"); c.Versa(100); //Esempio Prelievo Console.WriteLine("-----------------------------------------------------"); Console.WriteLine("Il cliente Andrea Cecchini vuole prelevare 50 euro."); c = Banca.CercaConto("AAACCCEEND"); if (c.Preleva(50)) //nel caso in cui sia vero oltre che a ritornare il bool il metodo preleva { Console.WriteLine("Movimento accettato"); } else { Console.WriteLine("Movimento fallito"); } //Esempio Bonifico Console.WriteLine("-----------------------------------------------------"); Console.WriteLine("Il cliente Andrea Cecchini vuole effettuare un bonifico di 50 euro al seguente conto:EEEAAANNRIQ "); c = Banca.CercaConto("AAACCCEEND"); string iban_destinatario = "EEEAAANNRIQ"; if (c.Bonifico(iban_destinatario, 50)) //nel caso in cui sia vero oltre che a ritornare il bool il metodo effettua un bonifico { Console.WriteLine("Movimento accettato"); } else { Console.WriteLine("Movimento rifiutato"); } // Esempio Movimento di Conto Online Console.WriteLine("-----------------------------------------------------"); Console.WriteLine("Il cliente Matteo Canghiari vuole prelevare 100 dal suo conto online."); c = Banca.CercaConto("MMMCCCTTEO"); if (((ContoOnline)c).Preleva(100)) { Console.WriteLine("Movimento accettato"); } else { Console.WriteLine("Movimento fallito"); } Console.WriteLine("-----------------------------------------------------"); Console.WriteLine("Stampa dei vari conti correnti e relativi movimenti"); //Stampa Movimenti di tutti i conti; foreach (ContoCorrente k in Banca.ListaConti) { Console.WriteLine("\nIntestatario del conto corrente " + k.Intestatario.Nome); foreach (Movimento m in k.Movimenti) { if (m == null) { Console.WriteLine("Nessun movimento"); } else { if (m is Bonifico) { Console.WriteLine("Bonifico"); Console.WriteLine(("Iban destinatario: " + ((Bonifico)m).Destinatario)); } else { if (m is Prelievo) { Console.WriteLine("Prelievo"); } else { Console.WriteLine("Versamento"); } } Console.WriteLine("Data del movimento: " + m.DataMovimento.ToString()); Console.WriteLine("Importo del movimento : " + m.Importo + " euro"); Console.WriteLine("Identificativo del movimento: " + m.Id); Console.WriteLine("\n"); } } } Console.WriteLine("-----------------------------------------------------"); Console.WriteLine("Controllo Conto Online IBAN: MMMCCCTTEO"); c = Banca.CercaConto("MMMCCCTTEO"); Console.WriteLine(((ContoOnline)c).stampaSaldo()); Console.ReadKey(); }
static void Main(string[] args) { ContoCorrente c; ContoCorrente d; int scelta; Console.WriteLine("Inserisci il nome della banca: "); string nomeBanca = Console.ReadLine(); Console.WriteLine("Inserisci l'indirizzo della banca: "); string indirizzoBanca = Console.ReadLine(); Banca Banca = new Banca(nomeBanca, indirizzoBanca); do { Console.Write("\n"); Console.WriteLine("------------------------"); Console.WriteLine("----/AZIONI POSSIBILI/----"); Console.WriteLine("1 - Inserisci intestatario"); Console.WriteLine("2 - Elimina intestatario"); Console.WriteLine("3 - Effettua bonifico"); Console.WriteLine("4 - Effettua prelievo"); Console.WriteLine("5 - Effettua versamento"); Console.WriteLine("6 - Stampa clienti della banca e movimenti"); Console.WriteLine("7 - Stampa dati banca"); Console.Write("\n"); Console.WriteLine("8 - Esci"); Console.WriteLine("------------------------"); Console.Write("\n"); Console.Write("Selezione: "); scelta = Convert.ToInt16(Console.ReadLine()); Console.Write("\n"); switch (scelta) { case 1: Console.WriteLine("------------------------"); Console.Write("\n"); Console.Write("Inserisci nome: "); string nome = Console.ReadLine(); Console.Write("Inserisci cognome: "); string cognome = Console.ReadLine(); Console.Write("Inserisci luogo di nascita: "); string luogoNascita = Console.ReadLine(); Console.Write("Inserisci data di nascita (anno/mese/giorno): "); DateTime dataNascita = Convert.ToDateTime(Console.ReadLine()); Console.Write("Inserisci codice fiscale: "); string codiceFiscale = Console.ReadLine(); Persona intestatario = new Persona(nome, cognome, luogoNascita, dataNascita, codiceFiscale); Console.Write("Il conto creato è preferibile online (si/no): "); string risposta = Console.ReadLine(); if (risposta == "si") { Console.Write("Inserisci IBAN: "); string IBAN = Console.ReadLine(); ContoOnline contoOnline = new ContoOnline(intestatario, IBAN); Banca.aggiungiConto(contoOnline); } else { Console.Write("Inserisci IBAN: "); string IBAN = Console.ReadLine(); ContoCorrente contoCorrente = new ContoCorrente(intestatario, IBAN); Banca.aggiungiConto(contoCorrente); } break; case 2: Console.WriteLine("------------------------"); Console.Write("Inserisci l'IBAN dell'intestatario da eliminare: "); string ibanElimanare = Console.ReadLine(); Banca.EliminaConto(ibanElimanare); break; case 3: Console.WriteLine("------------------------"); Console.Write("\n"); Console.Write("Inserisci la somma del bonifico: "); int sommaBonifico = Convert.ToInt32(Console.ReadLine()); Console.Write("Inserisci IBAN mittente: "); string ibanMittente = Console.ReadLine(); Console.Write("Inserisci IBAN destinatario: "); string ibanDestinatario = Console.ReadLine(); c = Banca.CercaConto(ibanMittente); if (c.Bonifico(ibanDestinatario, sommaBonifico)) //nel caso in cui sia vero oltre che a ritornare il bool il metodo effettua un bonifico { Console.WriteLine("Movimento accettato."); } else { Console.WriteLine("Movimento rifiutato."); } break; case 4: Console.WriteLine("------------------------"); Console.Write("\n"); Console.Write("Inserisci la somma del prelievo: "); int sommaPrelievo = Convert.ToInt32(Console.ReadLine()); Console.Write("Inserisci l'IBAN dell'intestario: "); string ibanIntestatario = Console.ReadLine(); c = Banca.CercaConto(ibanIntestatario); if (c.Preleva(sommaPrelievo)) //nel caso in cui sia vero oltre che a ritornare il bool il metodo preleva { Console.WriteLine("Movimento accettato."); } else { Console.WriteLine("Movimento fallito."); } break; case 5: Console.WriteLine("------------------------"); Console.Write("\n"); Console.WriteLine("Inserisci la somma del versamento: "); int sommaVersamento = Convert.ToInt32(Console.ReadLine()); Console.Write("Inserisci l'IBAN dell'intestatario: "); string ibanVersamento = Console.ReadLine(); c = Banca.CercaConto(ibanVersamento); c.Versa(sommaVersamento); break; case 6: Console.WriteLine("------------------------"); Console.Write("\n"); if (Banca.ListaConti.Count != 0) { foreach (ContoCorrente k in Banca.ListaConti) { Console.WriteLine("\nIntestatario del conto corrente " + k.Intestatario.Nome); foreach (Movimento m in k.Movimenti) { if (m == null) { Console.WriteLine("Nessun movimento."); } else { if (m is Bonifico) { Console.WriteLine("Movimento richiesto: bonifico."); Console.WriteLine(("Iban destinatario: " + ((Bonifico)m).Destinatario)); } else { if (m is Prelievo) { Console.WriteLine("Moviemento richiesto: prelievo."); } else { Console.WriteLine("Movimento richiesto: versamento."); } } Console.WriteLine("Data del movimento: " + m.DataMovimento.ToString()); Console.WriteLine("Importo del movimento : " + m.Importo + " euro."); Console.WriteLine("Identificativo del movimento: " + m.Id); } } } } else { Console.WriteLine("Non è presente alcun conto all'interno della lista."); } break; case 7: Console.WriteLine("------------------------"); Console.Write("\n"); Console.Write("Stampa nome banca: " + Banca.Nome + "\n"); Console.Write("Stampa indirizzo banca: " + Banca.Indirizzo); Console.ReadLine(); break; } } while (scelta != 8); }