16 lines
653 B
C#
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);
|
|
} |