/// <summary> /// Добавление нового пользователя в контроллер /// </summary> /// <param name="users"></param> /// <param name="groups"></param> /// <param name="name"></param> /// <param name="date"></param> /// <param name="group"></param> private static void AddUser(UserController users, GroupController groups, string name, string date, string group) { if (string.IsNullOrWhiteSpace(date) && string.IsNullOrWhiteSpace(group)) // если нет даты и группы { users.Add(name); PrintUser(users); return; } if (string.IsNullOrWhiteSpace(date) == false && string.IsNullOrWhiteSpace(group)) { users.Add(name, date); PrintUser(users); return; } if (string.IsNullOrWhiteSpace(date) && string.IsNullOrWhiteSpace(group) == false) { Group gr = groups.GetGroup(group); users.Add(name, gr); PrintUser(users); return; } if (string.IsNullOrWhiteSpace(date) == false && string.IsNullOrWhiteSpace(group) == false) { Group gr = groups.GetGroup(group); users.Add(name, gr, date); PrintUser(users); return; } }
/// <summary> /// Выводит на консоль возможные операции /// </summary> /// <param name="groups"></param> /// <param name="users"></param> private static void StartMenu(GroupController groups, UserController users) { InformMessage("Если хотите вывести список всех групп введите -"); Console.WriteLine("\t \"all groups\""); InformMessage("Если хотите добавить группу введите- "); Console.WriteLine("\t \"add group\""); InformMessage("Если хотите вывести список всех студентов введите -"); Console.WriteLine("\t \"all users\""); InformMessage("Если хотите добавить группу введите -"); Console.WriteLine("\t \"add user\""); InformMessage("Если хотите очистить окно введите -"); Console.WriteLine("\t \"clear\""); switch (Console.ReadLine().ToLower()) { case "all groups": PrintGroup(groups); break; case "add group": AddGroup(groups); break; case "all users": PrintUser(users); break; case "add user": MessageAddUser(users, groups); break; case "clear": Console.Clear(); break; default: ErrorMessage(new Exception("команда не опознана")); break; } }
static void Main(string[] args) { GroupController groups = new GroupController(); // список групп UserController users = new UserController(); // список юзеров InformMessage2("Вас приветствует программа \"отдел кадров\""); // приветствие while (true) { StartMenu(groups, users); } }
/// <summary> /// генерация стартовых пользователей /// </summary> public UserController() { GroupController groupController = new GroupController(); // список групп foreach (var item in us) { DateTime date = RandomDateTime(); // случайная дата Group group = RandomGroup(groupController); // случайная группа User user = new User(item, date, group); users.Add(user); } }
/// <summary> /// Добавляет новую группу /// </summary> /// <param name="controller"></param> private static void AddGroup(GroupController controller) { InformMessage("Введите имя новой группы:"); string s = Console.ReadLine(); try { controller.Add(s); PrintGroup(controller); } catch (Exception ex) { ErrorMessage(ex); return; } }
/// <summary> /// Добавление нового пользователя /// </summary> /// <param name="users"></param> /// <param name="groups"></param> private static void MessageAddUser(UserController users, GroupController groups) { InformMessage("Введите имя пользователя:"); string name = Console.ReadLine(); InformMessage("Введите дату рождения в формате \"Год.месяц.день:"); Console.WriteLine("или оставьте пустым"); string date = Console.ReadLine(); InformMessage("введите группу"); Console.WriteLine("или оставьте пустым"); string group = Console.ReadLine(); try { AddUser(users, groups, name, date, group); } catch (Exception ex) { ErrorMessage(ex); } }
/// <summary> /// возвращает случайную группу /// </summary> /// <param name="groupController"></param> /// <returns></returns> private Group RandomGroup(GroupController groupController) { Random random = new Random(); return(groupController.Groups()[random.Next(0, groupController.Groups().Count)]); }
private static void PrintGroup(GroupController controller) { Print(controller.Groups(), "Список групп:"); }