예제 #1
0
        public static void add_service(string[] user_input_array)
        {
            if (user_input_array.Length < 3)
            {
                Console.WriteLine("Для добавления услуги необходимо название и цена!!!");
                return;
            }
            int price = 0;

            try
            {
                price = Convert.ToInt32(user_input_array[2]);
            }
            catch (FormatException ex)
            {
                Console.WriteLine(ex.Message);
                Console.WriteLine("Цена должна быть целым положительным числом");
                return;
            }
            if (price < 0)
            {
                Console.WriteLine("Цена должна быть целым положительным числом");
                return;
            }

            if (Barbershop.add_service(user_input_array[1], price))
            {
                Console.WriteLine("Услуга успешно добавлена!");
            }
            else
            {
                Console.WriteLine("Услуга не была добавлена :(((");
            }
        }
예제 #2
0
 private static void TrackBarbershop(Barbershop barbershop)
 {
     while (true)
     {
         Logger.Write(barbershop.ToString());
         Logger.Flush();
         Thread.Sleep(1000);
     }
 }
예제 #3
0
        public Barber(Barbershop barbershop)
        {
            this.barbershop = barbershop;

            lock (locker)
            {
                Name = $"Barber №{counter++}";
            }
        }
예제 #4
0
        public Client(Barbershop barbershop)
        {
            this.barbershop = barbershop;

            lock (locker)
            {
                Name     = $"Client №{counter++}";
                waitTime = TimeSpan.FromSeconds(random.Next(5, 10));
            }
        }
예제 #5
0
        static void Main(string[] args)
        {
            AppDomain.CurrentDomain.ProcessExit += (s, e) => Logger.Dispose();

            var random     = new Random();
            var barberShop = new Barbershop();

            Task.Run(() => TrackBarbershop(barberShop));
            CreateBarber(barberShop);
            CreateBarber(barberShop);
            while (true)
            {
                CreateClient(barberShop);
                Thread.Sleep(GetRandomInterval(random));
            }
        }
예제 #6
0
 public static void add_customer(string[] user_input_array)
 {
     if (user_input_array.Length < 3)
     {
         Console.WriteLine("Для добавления пользователя необходимо имя и фамилия!!!");
         return;
     }
     if (Barbershop.add_customer(user_input_array[1], user_input_array[2]))
     {
         Console.WriteLine("Клиент успешно добавлен!)");
     }
     else
     {
         Console.WriteLine("Клиент не был добавлен :(((");
     }
 }
예제 #7
0
 public static void add_customer(string[] user_input_array)
 {
     if (user_input_array.Length < 3)
     {
         Console.WriteLine("Для добавления клиента нужно имя и фамилия");
         return;
     }
     if (Barbershop.add_customer(user_input_array[1], user_input_array[2]))
     {
         Console.WriteLine("Клиент успешно добавлен");
     }
     else
     {
         Console.WriteLine("Клиент не был добавлен");
     }
 }
예제 #8
0
 public static void add_employee(string[] user_input_array)
 {
     if (user_input_array.Length < 4)
     {
         Console.WriteLine("для добавления работника необходимо имя,фамилия и должность!!!");
         return;
     }
     if (Barbershop.add_employee(user_input_array[1], user_input_array[2], user_input_array[3]))
     {
         Console.WriteLine("Работник добавлен!");
     }
     else
     {
         Console.WriteLine("Работник не был добавлен:(");
     }
 }
예제 #9
0
        static void Main(string[] args)
        {
            print_menu();
            string user_input = "";

            while (user_input != "q")
            {
                Console.WriteLine("Введите команду");
                user_input = Console.ReadLine();
                string[] user_input_array = user_input.Split(' ');
                if (user_input_array.Length == 0)
                {
                    Console.WriteLine("Пожалуйста, введиете команду");
                    continue;
                }
                switch (user_input_array[0])
                {
                case "add_customer":
                    add_customer(user_input_array);
                    break;

                case "add_service":
                    add_service(user_input_array);
                    break;

                case "print_all":
                    Barbershop.print();
                    break;

                case "add_employee":
                    add_employee(user_input_array);
                    break;

                case "q":
                    break;

                default:
                    Console.WriteLine("Некоректный ввод");
                    break;
                }
            }
        }
예제 #10
0
        public static void add_service(string[] user_input_array)
        {
            if (user_input_array.Length < 3)
            {
                Console.WriteLine("Для добавления услуги нужно название и цена");
                return;
            }

            int price;

            try
            {
                price = Convert.ToInt32(user_input_array[2]);
            }
            catch (FormatException ex)
            {
                Console.WriteLine(ex.Message);
                Console.WriteLine("Цена должна быть целым числом");
                return;
            }
            catch (OverflowException ex)
            {
                Console.WriteLine(ex.Message);
                Console.WriteLine("Цена слишком большая");
                return;
            }

            if (Barbershop.add_service(user_input_array[1], price))
            {
                Console.WriteLine("Услуга успешно добавлена");
            }
            else
            {
                Console.WriteLine("Услуга не была добавлена");
            }
        }
예제 #11
0
 private static void CreateClient(Barbershop barbershop)
 {
     Task.Run(() => new Client(barbershop).GetHaircut());
 }
예제 #12
0
 private static void CreateBarber(Barbershop barbershop)
 {
     Task.Run(() => new Barber(barbershop).Work());
 }