Spaces:
Running
Running
| 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(); | |
| } | |
| } | |
| } | |