Esempio n. 1
0
        public void ShowMenu()
        {
            serializer = CheckConfigurationFile();
            users      = serializer.Read();
            while (true)
            {
                Console.Clear();
                Console.WriteLine("Информация о юзерах");
                Console.WriteLine("Колличество юзеров в базе: " + users.Count);
                Console.WriteLine("Id| Name  |  Login  |  Password");
                foreach (User u in users)
                {
                    Console.WriteLine(u.ToString());
                }
                string[] s = Console.ReadLine().ToUpper().Split(' ');
                switch (s[0])
                {
                case "ADD":

                    User u = new User();
                    Console.WriteLine("Создание нового юзера");
                    Console.WriteLine("Введите Id");

                    int idNewUser;
                    if (!Int32.TryParse(Console.ReadLine(), out idNewUser))
                    {
                        Console.WriteLine("Id должен состоять только из цифр. Попробуйте еще раз.");
                        Console.ReadKey();
                        break;
                    }


                    User existUser = users.Find(i => i.Id == idNewUser);
                    if (existUser == null)
                    {
                        u.Id = idNewUser;
                    }
                    else
                    {
                        Console.WriteLine("Юзер с таким id уже существует. Добавление не удалось. Попробуйте еще раз.");
                        Console.ReadKey();
                        break;
                    }
                    Console.WriteLine("Введите Name");
                    u.Name = Convert.ToString(Console.ReadLine());
                    Console.WriteLine("Введите Login");
                    u.Login = Convert.ToString(Console.ReadLine());
                    Console.WriteLine("Введите Password");
                    u.Password = Convert.ToString(Console.ReadLine());
                    users.Add(u);
                    break;

                case "DEL":
                    if (s.Length == 1)
                    {
                        Console.WriteLine("Команда не распознана. Попробуйте еще раз.");
                        Console.ReadKey();
                        break;
                    }
                    else
                    {
                        User delUser = users.Find(i => i.Id == Convert.ToInt32(s[1]));
                        if (delUser == null)
                        {
                            Console.WriteLine("Юзер с таким id не найден. Попробуйт еще раз.");
                            Console.ReadKey();
                            break;
                        }
                        else
                        {
                            users.Remove(delUser);
                        }
                        break;
                    }

                case "EDIT":
                    if (s.Length == 1)
                    {
                        Console.WriteLine("Команда не распознана. Попробуйте еще раз.");
                        Console.ReadKey();
                        break;
                    }
                    else
                    {
                        User editUser = users.Find(i => i.Id == Convert.ToInt32(s[1]));
                        if (editUser == null)
                        {
                            Console.WriteLine("Юзер с таким id не найден. Попробуйт еще раз.");
                            Console.ReadKey();
                            break;
                        }

                        Console.WriteLine("Введите новый Id");
                        int idUser;
                        if (!Int32.TryParse(Console.ReadLine(), out idUser))
                        {
                            Console.WriteLine("Id должен состоять только из цифр. Попробуйте еще раз.");
                            Console.ReadKey();
                            break;
                        }
                        User newUser = new User();
                        newUser.Id = idUser;

                        Console.WriteLine("Введите новый Name");
                        newUser.Name = Convert.ToString(Console.ReadLine());

                        Console.WriteLine("Введите новый Login");
                        newUser.Login = Convert.ToString(Console.ReadLine());

                        Console.WriteLine("Введите новый Password");
                        newUser.Password = Convert.ToString(Console.ReadLine());

                        users.Add(newUser);
                        users.Remove(editUser);
                        break;
                    }

                case "HELP":
                    Console.WriteLine("Add - добавить юзера");
                    Console.WriteLine("Del (id нужного юзера) - удалить юзера по id");
                    Console.WriteLine("Edit (id нужного юзера) - редактировать юзера по id");
                    Console.ReadKey();
                    break;

                case "E":
                    serializer.Write(users);
                    return;

                default:
                    break;
                }
            }
        }
Esempio n. 2
0
 private void LoadDatabase(ISerializable ser)
 {
     employees = ser.Read();
     ShowMenu();
 }
Esempio n. 3
0
 private void LoadDatabase(ISerializable ser)
 {
     employees = ser.Read();
     ShowMenu();
 }