예제 #1
0
        public Vaccine AddNewVaccine(Dictionary <string, string> data)
        {
            Vaccine vaccine = CreateNewVaccine(data);

            Vaccines.Add(vaccine);
            SaveVaccines();
            return(vaccine);
        }
예제 #2
0
        public Vaccine UpdateVaccine(int index, Dictionary <string, string> data)
        {
            Vaccine oldVaccine = Vaccines[index],
                    newVaccine = new Vaccine(
                data["GazdaNév"] == "" ? oldVaccine.Hostname : data["GazdaNév"],
                data["Cím"] == "" ? oldVaccine.Address : data["Cím"],
                data["KutyaNév"] == "" ? oldVaccine.DogName : data["KutyaNév"],
                data["ChipSzám"] == "" ? oldVaccine.ChipID : Int32.Parse(data["ChipSzám"]),
                data["ElsőOltás"] == "" ? oldVaccine.First : data["Elsőoltás"].ToLower() == "igen"
                );

            Vaccines[index] = newVaccine;
            SaveVaccines();
            return(newVaccine);
        }
예제 #3
0
        protected override bool MenuFunctions()
        {
            Console.WriteLine("\nA kiválasztáshoz írd be az egyik menüpont sorszámát:");
            string input = Console.ReadLine();

            if (input == "0")
            {
                Environment.Exit(-1);
                return(false);
            }
            else if (input == "1")
            {
                Dictionary <string, string> inputs = GetInputs();
                Vaccine vaccine = _data.AddNewVaccine(inputs);

                Console.WriteLine();
                _logger.Success("Sikeresen létehoztál egy új oltási bejegyzést!");
                Console.WriteLine(vaccine.ToString());

                WaitToKey();
                return(true);
            }
            else if (input == "2")
            {
                if (_data.GetVaccineCount() != 0)
                {
                    Console.Clear();

                    PrintVaccines();
                    _logger.Info($"Összesen {_data.GetVaccineCount()} oltási bejegyzést találtam.");

                    WaitToKey();
                    return(true);
                }
                else
                {
                    throw new ArgumentException("Az adatbázis jelenleg üres!");
                }
            }
            else if (input == "3")
            {
                if (_data.GetVaccineCount() != 0)
                {
                    Console.Clear();
                    int index = GetVaccineIndex("módosítani");

                    Console.Clear();
                    _logger.Info("Ha egy részt nem töltesz ki akkor a régi érték marad meg!");
                    WaitToKey();

                    Dictionary <string, string> inputs = GetInputs();
                    Vaccine vaccine = _data.UpdateVaccine(index, inputs);

                    Console.Clear();
                    _logger.Success("Sikeresen módosítottál egy bejegyzést!");
                    Console.WriteLine(vaccine.ToString());

                    WaitToKey();
                    return(true);
                }
                else
                {
                    throw new ArgumentException("Az adatbázis jelenleg üres!");
                }
            }
            else if (input == "4")
            {
                if (_data.GetVaccineCount() != 0)
                {
                    Console.Clear();

                    int     index   = GetVaccineIndex("törölni");
                    Vaccine vaccine = _data.GetVaccine(index);

                    Console.Clear();
                    _data.RemoveVaccine(index);
                    _logger.Success("Sikeresen töröltél egy oltási bejegyzést!\n");
                    Console.WriteLine(vaccine.ToString());

                    WaitToKey();
                    return(true);
                }
                else
                {
                    throw new ArgumentException("Az adatbázis jelenleg üres!");
                }
            }
            else
            {
                throw new KeyNotFoundException($"Ismeretlen sorszám - ('{input}')");
            }
        }