using GestionIntegral.Api.Dtos.Empresas; // DTOs de Empresas using GestionIntegral.Api.Dtos.Auditoria; using System.Collections.Generic; using System.Threading.Tasks; namespace GestionIntegral.Api.Services.Distribucion { public interface IEmpresaService { Task> ObtenerTodasAsync(string? nombreFilter, string? detalleFilter); Task ObtenerPorIdAsync(int id); Task<(EmpresaDto? Empresa, string? Error)> CrearAsync(CreateEmpresaDto createDto, int idUsuario); Task<(bool Exito, string? Error)> ActualizarAsync(int id, UpdateEmpresaDto updateDto, int idUsuario); Task<(bool Exito, string? Error)> EliminarAsync(int id, int idUsuario); Task> ObtenerParaDropdown(); Task ObtenerLookupPorIdAsync(int id); Task> ObtenerHistorialAsync( DateTime? fechaDesde, DateTime? fechaHasta, int? idUsuarioModifico, string? tipoModificacion, int? idEmpresaAfectada); } }