using Distribution.Data; using Microsoft.EntityFrameworkCore; namespace Distribution.Features.SupplierClaims; public class SupplierClaimRepository(AppDBContext context) : ISupplierClaimRepository { public async Task GetByIdAsync(Guid id) => await context.SupplierClaims .Include(c => c.Items).ThenInclude(i => i.Item) .FirstOrDefaultAsync(c => c.Id == id); public async Task> GetAllAsync() => await context.SupplierClaims .Include(c => c.Items).ThenInclude(i => i.Item) .Where(c => c.IsActive) .OrderByDescending(c => c.CreatedAt) .ToListAsync(); public async Task> GetByPurchaseOrderIdAsync(Guid purchaseOrderId) => await context.SupplierClaims .Include(c => c.Items).ThenInclude(i => i.Item) .Where(c => c.FK_PurchaseOrderId == purchaseOrderId && c.IsActive) .OrderByDescending(c => c.CreatedAt) .ToListAsync(); public async Task AddAsync(Models.SupplierClaim entity) => await context.SupplierClaims.AddAsync(entity); public void Update(Models.SupplierClaim entity) => context.SupplierClaims.Update(entity); }