using Demo.Data.Exceptions; using Demo.Data.LocalData; using Demo.Data.RemoteData.RemoteDataBase.DAO; using Demo.Data.Repository; using Demo.domain.Models; using System.Collections.Generic; using System.Linq; public class GroupRepositoryImpl : IGroupRepository { private List _groups = LocalStaticData.groups; public GroupLocalEntity? GetGroupById(int groupId) { return _groups.FirstOrDefault(g => g.Id == groupId); } // Метод для получения всех групп public List GetAllGroup() => _groups; // Метод для добавления новой группы public bool AddGroup(GroupLocalEntity group) { if (_groups.Any(g => g.Id == group.Id)) return false; group.Id = _groups.Any() ? _groups.Max(g => g.Id) + 1 : 1; _groups.Add(group); return true; } // Метод для обновления существующей группы public bool UpdateGroupById(int groupID, GroupLocalEntity updatedGroup) { var existingGroup = GetGroupById(groupID); if (existingGroup == null) return false; existingGroup.Name = updatedGroup.Name; return true; } public bool RemoveGroupById(int groupID) { var existingGroup = GetGroupById(groupID); if (existingGroup == null) return false; _groups.Remove(existingGroup); return true; } }