Exemplo n.º 1
0
        public void ChangeServiceInfo(ServiceInfo oldService, ServiceInfo newService)
        {
            var tmpService = _servicesContainer.GetServiceInfoById(oldService.Id);

            if (tmpService == null)
            {
                return;
            }

            _servicesContainer.UpdateService(oldService, newService);
        }
        public void Execute()
        {
            Console.WriteLine("Список услуг:");
            Console.WriteLine();
            PrintServices(_serviceInfoContainer.GetAvailableServices());
            Console.WriteLine();
            Console.WriteLine("Введите id услуги для изменения: ");
            var serviceId  = Console.ReadLine();
            var oldService = _serviceInfoContainer.GetServiceInfoById(serviceId);

            if (oldService == null)
            {
                Refresh("несуществующий id услуги");
                return;
            }
            Console.Clear();
            Console.WriteLine("Название услуги:");
            var name = Console.ReadLine();

            Console.WriteLine("Стоимость ед. услуги:");
            var cost = decimal.Parse(Console.ReadLine());

            Console.WriteLine("Ед. измерения:");
            var measurement = Console.ReadLine();
            var newService  = new ServiceInfo
            {
                Id           = Guid.NewGuid().ToString(),
                CostPerUnit  = cost,
                Name         = name,
                Measurement  = measurement,
                IsDeprecated = false
            };

            _serviceOperations.ChangeServiceInfo(oldService, newService);

            Console.Clear();
            Console.WriteLine("Услуга успешно изменена");
            Console.WriteLine();
            Console.WriteLine();

            _managerMenu.Print();
            _managerMenu.SetCommand(_managerMenu.ReadCommand());
            _managerMenu.Run();
        }