using ChapterX.Domain.Entities; using ChapterX.Domain.Repositories; using ChapterX.Infrastructure.Data.DataContext; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.EntityFrameworkCore; namespace ChapterX.Infrastructure.Repositories { public class ChapterRepository : GenericRepository, IChapterRepository { public ChapterRepository(ApplicationDbContext context) : base(context) { } public async Task> GetByStoryIdAsync(int storyId, CancellationToken cancellationToken = default) { return await _dbSet .Where(c => c.StoryId == storyId) .ToListAsync(cancellationToken); } public async Task GetByIdWithStoryAsync(int id, CancellationToken cancellationToken = default) { return await _dbSet .Include(c => c.Story) .FirstOrDefaultAsync(c => c.Id == id, cancellationToken); } } }