示例#1
0
        private static void RemoveDevice(PhonesController phones_ctrl)
        {
            Console.Clear();
            Console.WriteLine("Выберите название и нажмите Enter:");
            //Если список смартфонов пуст, возвращаемся в меню
            if (phones_ctrl.Phones.Count == 0)
            {
                Console.WriteLine("Список смартфонов пуст. Нажмите Enter чтобы продолжить.");
                Console.ReadLine();
                return;
            }
            for (int i = 0; i < phones_ctrl.Phones.Count; i++)
            {
                Console.WriteLine($"{i + 1} - {phones_ctrl.Phones[i]}");
            }
            int numPhoneforRemove;

            while (true)
            {
                if (int.TryParse(Console.ReadLine(), out int numPhone) && numPhone <= phones_ctrl.Phones.Count)
                {
                    numPhoneforRemove = numPhone - 1;
                    var phoneName = phones_ctrl.Phones[numPhone - 1].Name;
                    Console.WriteLine($"Вы выбрали: {phoneName}");
                    phones_ctrl.AddnSetCurrent(phoneName);
                    break;
                }
                else
                {
                    Console.WriteLine("Некорректный ввод!");
                }
            }


            var models_controller = new ModelsController(phones_ctrl.current_phone);

            if (models_controller.Models.Count == 0)
            {
                Console.WriteLine($"У {phones_ctrl.current_phone.Name} не найдено моделей. Нажмите любую кнопку чтобы продолжить.");
                Console.ReadKey();
                return;
            }

            Console.WriteLine("Для удаления выберите модель и нажмите Enter.");
            //models_controller.RemoveModel(2);
            for (int i = 0; i < models_controller.Models.Count; i++)
            {
                Console.WriteLine($"{i + 1} - {models_controller.Models[i]}");
            }
            string modelName;

            while (true)
            {
                if (int.TryParse(Console.ReadLine(), out int numModel) && numModel <= models_controller.Models.Count)
                {
                    modelName = models_controller.Models[numModel - 1].Name;
                    models_controller.RemoveModel(numModel - 1);
                    break;
                }
                else
                {
                    Console.WriteLine("Некорректный ввод!");
                }
            }


            var characteristicksCtrl = new CharactersController(modelName);

            characteristicksCtrl.Remove();
            if (models_controller.Models.Count == 0)
            {
                phones_ctrl.RemovePhone(numPhoneforRemove, true);
            }
            Console.WriteLine($"Модель {modelName} удален. Нажмите Enter кнопку чтобы продолжить.");
            Console.ReadLine();
        }