presence123/Demo/UI/MainMenu.cs

108 lines
4.4 KiB
C#
Raw Permalink Normal View History

2024-10-30 09:06:35 +00:00
using Demo.UI;
using System;
namespace Demo.UI
{
public class MainMenu
{
private readonly UserConsole _userConsole;
private readonly GroupConsole _groupConsole;
public MainMenu(UserConsole userConsole, GroupConsole groupConsole)
{
_userConsole = userConsole;
_groupConsole = groupConsole;
}
public void ShowMenu()
{
while (true)
{
Console.WriteLine("1. Показать всех пользователей");
Console.WriteLine("2. Показать все группы");
Console.WriteLine("3. Добавить группу");
Console.WriteLine("4. Обновить группу");
Console.WriteLine("5. Найти группу по id");
Console.WriteLine("6. Обновить пользователя");
Console.WriteLine("7. Удалить пользователя");
Console.WriteLine("8. Найти пользователя");
Console.WriteLine("9. Выход");
Console.WriteLine("Выберете команду:");
string choice = Console.ReadLine();
switch (choice)
{
case "1":
_userConsole.ShowAllUsers();
break;
case "2":
_groupConsole.ShowAllGroups();
break;
case "3":
Console.Write("Введите название новой группы: ");
string newGroupName = Console.ReadLine();
_groupConsole.AddGroup(newGroupName);
break;
case "4":
Console.WriteLine("Введите ID группы:");
if (int.TryParse(Console.ReadLine(), out int groupId))
{
_groupConsole.UpdateGroup(groupId);
}
else
{
Console.WriteLine("Ошибка: Введите корректный идентификатор группы.");
}
break;
case "5":
Console.WriteLine("Введите id группы");
int id = int.Parse(Console.ReadLine());
_groupConsole.GetGroupById(id);
break;
case "6":
Console.WriteLine("Введите юзер GUID:");
if (Guid.TryParse(Console.ReadLine(), out Guid userGuid))
{
_userConsole.UpdateUser(userGuid);
}
else
{
Console.WriteLine("Ошибка: Введите корректный GUID пользователя.");
}
break;
case "7":
Console.WriteLine("Введите юзер GUID:");
if (Guid.TryParse(Console.ReadLine(), out userGuid))
{
_userConsole.DeleteUser(userGuid);
}
else
{
Console.WriteLine("Ошибка: Введите корректный GUID пользователя.");
}
break;
case "8":
Console.WriteLine("Введите юзер GUID:");
if (Guid.TryParse(Console.ReadLine(), out userGuid))
{
_userConsole.FindUser(userGuid);
}
else
{
Console.WriteLine("Ошибка: Введите корректный GUID пользователя.");
}
break;
case "9":
return;
default:
Console.WriteLine("Ошибка: Выберите корректный пункт меню.");
break;
}
}
}
}
}