Files
SIG-CM/src/SIGCM.Domain/Interfaces/IProductRepository.cs
2026-01-07 11:34:25 -03:00

16 lines
653 B
C#

using SIGCM.Domain.Entities;
namespace SIGCM.Domain.Interfaces;
public interface IProductRepository
{
Task<IEnumerable<Product>> GetAllAsync();
Task<IEnumerable<Product>> GetByCompanyIdAsync(int companyId);
Task<Product?> GetByIdAsync(int id);
Task<int> CreateAsync(Product product);
Task UpdateAsync(Product product);
Task<IEnumerable<Company>> GetAllCompaniesAsync(); // Helper para no crear un repo solo para esto por ahora
Task<IEnumerable<ProductBundle>> GetBundleComponentsAsync(int parentProductId);
Task AddComponentToBundleAsync(ProductBundle bundle);
Task RemoveComponentFromBundleAsync(int bundleId, int childProductId);
}