using System.Text.RegularExpressions; using Zurnal.Data.Repository; using Zurnal.Date.Repository; using Zurnal.RemaDateBase.DateDao; namespace Zurnal.Domain.UseCase { public class GroupUseCase : IGroupRepository { private UserRepositoryImpl _repositoryUserImpl; private GroupRepositoryImpl _repositoryGroupImpl; public List AllGroup => throw new NotImplementedException(); public List GetAllGroups() => _repositoryGroupImpl.GetAllGroups() .Select(it => new GroupDao { Id = it.Id, GroupName = it.GroupName }).ToList(); public GroupUseCase(UserRepositoryImpl repositoryImpl, GroupRepositoryImpl repositoryGroupImpl) { _repositoryUserImpl = repositoryImpl; _repositoryGroupImpl = repositoryGroupImpl; } public void AddGroup(GroupDao group) { _repositoryGroupImpl.AddGroup(group: group); } public void UpdateGroupName(int groupId, string newName) { _repositoryGroupImpl.UpdateGroupName(groupId, newName); } public IEnumerable AllGroups() { throw new NotImplementedException(); } public bool RemoveGroupById(int groupID) { throw new NotImplementedException(); } public bool UpdateGroupById(int groupID, GroupDao updatedGroup) { throw new NotImplementedException(); } IEnumerable IGroupRepository.GetAllGroups() { return _repositoryGroupImpl.GetAllGroups() .Select(it => new GroupDao { Id = it.Id, GroupName = it.GroupName, Users = it.Users }) .ToList(); } public void AddGroupFromRegex(System.Text.RegularExpressions.Group group) { throw new NotImplementedException(); } public GroupDao GetGroupById(int id) { var group = _repositoryGroupImpl.GetGroupById(id); if (group == null) { throw new KeyNotFoundException($"Группа с ID {id} не найдена."); } return group; } public void UpdateGroup(GroupDao group) { throw new NotImplementedException(); } public void DeleteGroup(int id) { throw new NotImplementedException(); } IEnumerable IGroupRepository.AllGroups() { throw new NotImplementedException(); } bool IGroupRepository.AddGroup(GroupDao newGroup) { throw new NotImplementedException(); } } }