FlowAPI / FlowAPI.Infrastructure /Repositories /UserAchievementRepository.cs
danylokhodus's picture
init
b9c7f0e
Raw
History Blame Contribute Delete
1.09 kB
using FlowAPI.Application.Interfaces;
using FlowAPI.Domain.Entities;
using FlowAPI.Infrastructure.Data;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace FlowAPI.Infrastructure.Repositories
{
public class UserAchievementRepository : GenericRepository<UserAchievement>, IUserAchievementRepository
{
public UserAchievementRepository(AppDbContext context) : base(context)
{
}
public async Task<IEnumerable<UserAchievement>> GetByUserIdAsync(Guid userId)
{
return await _dbSet
.Include(ua => ua.Achievement)
.Where(ua => ua.UserId == userId)
.ToListAsync();
}
public async Task<IEnumerable<UserAchievement>> GetByUserAndAchievementIdsAsync(Guid userId, IEnumerable<Guid> achievementIds)
{
return await _dbSet
.Where(ua => ua.UserId == userId && achievementIds.Contains(ua.AchievementId))
.ToListAsync();
}
}
}