private PersonenManager StringToList(string[] personen, PersonenManager pm) { for (int i = 0; i < personen.Length; i++) { string[] Split = null; Split = personen[i].Split(';'); switch (Split[0]) { case "M": if (Split[3] != "") { throw new Exception("Ein Mitarbeiter hat keine Prämie!!!"); } pm.AddPerson(new Mitarbeiter(Split[0], Split[1], Split[2])); break; case "V": if (Split[3] == "") { throw new Exception("Ein Vorgesetzter hat eine Prämie!!!"); } pm.AddPerson(new Vorgesetzter(Split[0], Split[1], Split[2], Convert.ToDouble(Split[3]))); break; } } return(pm); }
static void ErstellenVonVorgesetzten(int anzahl, PersonenManager pm) { Vorgesetzter V = null; int counter = 0; while (counter < anzahl) { V = new Vorgesetzter(GetName(), GetMitarbeiterNr(), getPrämie()); pm.AddPerson(V); counter++; } }
static void ErstellenVonMitarbeiter(int anzahl, PersonenManager pm) { Mitarbeiter M = null; int counter = 0; while (counter < anzahl) { M = new Mitarbeiter(GetName(), GetMitarbeiterNr()); pm.AddPerson(M); counter++; } }
private PersonenManager StringToList(string[] personen, PersonenManager pm, byte Personentyp) { switch (Personentyp) { case 77: if (personen.Length > 2) { throw new Exception("Ein Mitarbeiter hat keine Prämie!!!"); } pm.AddPerson(new Mitarbeiter(personen[0], personen[1])); break; case 86: if (personen[2] == "") { throw new Exception("Ein Vorgesetzter hat eine Prämie!!!"); } pm.AddPerson(new Vorgesetzter(personen[0], personen[1], Convert.ToDouble(personen[2]))); break; } return(pm); }
static void Main(string[] args) { PersonenManagerSaverBinary pmsb = null; PersonenManagerSaverCSV pmsc = null; PersonenManager pm = null; try { string FileTyp; string FileName; char AuswahlSave = ' '; pm = new PersonenManager(); Person p = null; #region Auswahl ob Mitarbeiter oder Vorgesetzter char AuswahlPerson = ' '; int Anzahl = 0; AuswahlPerson = GetAValidChar('M', 'V', "Wollen Sie Mitarbeiter(M) oder Vorgesetzte(V) erzeugen!"); switch (AuswahlPerson) { case 'M': Anzahl = GetAValidNumber(1, 10, "Wie viele Mitarbeiter wollen Sie erstellen?"); ErstellenVonMitarbeiter(Anzahl, pm); break; case 'V': Anzahl = GetAValidNumber(1, 10, "Wie viele Vorgesetzte wollen Sie erstellen?"); ErstellenVonVorgesetzten(Anzahl, pm); pm.AddPerson(p); break; } #endregion #region Auswahl ob Binär oder in Csv Format Speichern AuswahlSave = GetAValidChar('B', 'C', "Wollen Sie Binär(B) oder im CSV(C) Format speichern? "); switch (AuswahlSave) { case 'B': pmsb = new PersonenManagerSaverBinary(); Console.WriteLine("Wie soll das File heißen: "); FileTyp = ".txt"; FileName = Console.ReadLine(); pmsb.Filename = FileName + FileTyp; pmsb.Save(pm); pm = pmsb.Load(); pm.PrintAll(); break; case 'C': pmsc = new PersonenManagerSaverCSV(); Console.WriteLine("Wie soll das File heißen: "); FileTyp = ".csv"; FileName = Console.ReadLine(); pmsc.Filename = FileName + FileTyp; pmsc.Save(pm); pm = pmsc.Load(); pm.PrintAll(); break; } #endregion } catch (Exception ex) { Console.WriteLine(ex.Message); } }