Demo/Data/Repository/GroupRepositoryImpl.cs
2024-10-21 12:07:49 +03:00

59 lines
1.7 KiB
C#

using Demo.Data.LocalData;
using Demo.domain.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Demo.Data.Repository
{
public class GroupRepositoryImpl:IGroupRepository
{
public GroupRepositoryImpl() {
GetAllGroups = LocalStaticData.groups;
}
public List<GroupLocalEntity> GetAllGroups
{ get; set; }
public List<GroupLocalEntity> GetAllGroup()
{
return GetAllGroups;
}
public GroupLocalEntity? UpdateGroupName(GroupLocalEntity groupUpdateLocalEntity) {
int index = GetAllGroups.FindIndex(x => x.Id == groupUpdateLocalEntity.Id);
if (index == -1) return null;
GetAllGroups[index].Name = groupUpdateLocalEntity.Name;
return GetAllGroups[index];
}
public GroupLocalEntity? CreateGroup(GroupLocalEntity groupCreateLocalEntity) {
if (GetAllGroups.Any(x => x.Id == groupCreateLocalEntity.Id)) return null;
GetAllGroups.Add(groupCreateLocalEntity);
return groupCreateLocalEntity;
}
public bool RemoveGroupById(int groupID)
{
GroupLocalEntity? groupLocal = GetAllGroups
.Where(x => x.Id == groupID).FirstOrDefault();
if (groupLocal == null) return false;
return GetAllGroups.Remove(groupLocal);
}
public GroupLocalEntity? GetGroupById(int groupID) {
GroupLocalEntity? groupLocal = GetAllGroups
.Where(x => x.Id == groupID).FirstOrDefault();
if (groupLocal == null) return null;
return groupLocal;
}
}
}