using FlowAPI.Application.Interfaces; using FlowAPI.Domain.Entities; using FlowAPI.Infrastructure.Data; using Microsoft.EntityFrameworkCore; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace FlowAPI.Infrastructure.Repositories { public class AchievementRepository : GenericRepository, IAchievementRepository { public AchievementRepository(AppDbContext context) : base(context) { } public async Task> GetByTriggerEventAsync(string eventName) { return await _dbSet.Where(a => a.TriggerEventName == eventName).ToListAsync(); } public async Task> GetByTitlesAsync(IEnumerable titles) { return await _dbSet.Where(a => titles.Contains(a.Title)).ToListAsync(); } public async Task AddRangeAsync(IEnumerable achievements) { await _dbSet.AddRangeAsync(achievements); await _context.SaveChangesAsync(); } } }