presenceNikita/Demo/UI/UserConsole.cs

52 lines
1.6 KiB
C#

using Demo.Domain.UseCase;
using Demo.domain.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Demo.UI
{
public class UserConsoleUI
{
UserUseCase _userUseCase;
public UserConsoleUI(UserUseCase userUseCase) {
_userUseCase = userUseCase;
}
public void RemoveUserByGuid(Guid guidUser)
{
string output = _userUseCase.RemoveUserByGuid(guidUser) ? "Пользователь удален" : "Пользователь не удален";
Console.WriteLine(output);
}
public void DisplayAllUsers()
{
StringBuilder userOutput = new StringBuilder();
foreach (var user in _userUseCase.GetAllUsers())
{
userOutput.AppendLine($"{user.Guid}\t{user.FIO}\t{user.Group.Name}");
}
Console.WriteLine(userOutput);
}
public void UpdateUserGuid(Guid guidUser)
{
var user = _userUseCase.FindUserByGuid(guidUser);
Console.WriteLine($"Текущие данные: {user.FIO}, {user.Group.Name}");
Console.Write("Введите новое ФИО: ");
string newFIO = Console.ReadLine();
user.FIO = newFIO;
_userUseCase.UpdateUser(user);
}
public void GetUserByGuid(Guid guidUser)
{
var user = _userUseCase.FindUserByGuid(guidUser);
Console.WriteLine($"Пользователь найден: {user.Guid}, {user.FIO}, {user.Group.Name}");
}
}
}