namespace TaxBaik.Infrastructure.Repositories; using Dapper; using TaxBaik.Domain.Entities; using TaxBaik.Domain.Interfaces; public class CategoryRepository(IDbConnectionFactory connectionFactory) : BaseRepository(connectionFactory), ICategoryRepository { public async Task> GetAllAsync(CancellationToken cancellationToken = default) { using var conn = Conn(); return await conn.QueryAsync( "SELECT id, name, slug, sort_order FROM categories ORDER BY sort_order"); } public async Task GetBySlugAsync(string slug, CancellationToken cancellationToken = default) { using var conn = Conn(); return await conn.QueryFirstOrDefaultAsync( "SELECT id, name, slug, sort_order FROM categories WHERE slug = @Slug", new { Slug = slug }); } }