| 
									
										
										
										
											2025-05-27 11:21:00 -03:00
										 |  |  | using GestionIntegral.Api.Dtos.Reportes; | 
					
						
							|  |  |  | using System; | 
					
						
							|  |  |  | using System.Collections.Generic; | 
					
						
							|  |  |  | using System.Threading.Tasks; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace GestionIntegral.Api.Services.Reportes | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     public interface IReportesService | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         Task<(IEnumerable<ExistenciaPapelDto> Data, string? Error)> ObtenerExistenciaPapelAsync(DateTime fechaDesde, DateTime fechaHasta, int? idPlanta, bool consolidado); | 
					
						
							| 
									
										
										
										
											2025-05-27 18:17:56 -03:00
										 |  |  |         Task<(IEnumerable<MovimientoBobinasDto> Data, string? Error)> ObtenerMovimientoBobinasAsync(DateTime fechaDesde, DateTime fechaHasta, int idPlanta); | 
					
						
							|  |  |  |         Task<(IEnumerable<MovimientoBobinaEstadoDetalleDto> Detalle, IEnumerable<MovimientoBobinaEstadoTotalDto> Totales, string? Error)> ObtenerMovimientoBobinasPorEstadoAsync(DateTime fechaDesde, DateTime fechaHasta, int idPlanta); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Reporte Listado Distribucion General (RR002) | 
					
						
							|  |  |  |         Task<(IEnumerable<ListadoDistribucionGeneralResumenDto> Resumen, IEnumerable<ListadoDistribucionGeneralPromedioDiaDto> Promedios, string? Error)> ObtenerListadoDistribucionGeneralAsync(int idPublicacion, DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Reporte Listado Distribucion Canillas (RR002) | 
					
						
							|  |  |  |         Task<(IEnumerable<ListadoDistribucionCanillasSimpleDto> Simple, IEnumerable<ListadoDistribucionCanillasPromedioDiaDto> Promedios, string? Error)> ObtenerListadoDistribucionCanillasAsync(int idPublicacion, DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Reporte Listado Distribucion Canillas con Importes (RR002) | 
					
						
							|  |  |  |         Task<(IEnumerable<ListadoDistribucionCanillasImporteDto> Data, string? Error)> ObtenerListadoDistribucionCanillasConImporteAsync(int idPublicacion, DateTime fechaDesde, DateTime fechaHasta, bool esAccionista); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Reportes Venta Mensual Secretaria | 
					
						
							|  |  |  |         Task<(IEnumerable<VentaMensualSecretariaElDiaDto> Data, string? Error)> ObtenerVentaMensualSecretariaElDiaAsync(DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							|  |  |  |         Task<(IEnumerable<VentaMensualSecretariaElPlataDto> Data, string? Error)> ObtenerVentaMensualSecretariaElPlataAsync(DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							|  |  |  |         Task<(IEnumerable<VentaMensualSecretariaTirDevoDto> Data, string? Error)> ObtenerVentaMensualSecretariaTirDevoAsync(DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Reporte Distribucion Canillas (MC005) - Este es un reporte más complejo | 
					
						
							|  |  |  |         Task<( | 
					
						
							|  |  |  |             IEnumerable<DetalleDistribucionCanillaDto> Canillas, | 
					
						
							|  |  |  |             IEnumerable<DetalleDistribucionCanillaDto> CanillasAcc, | 
					
						
							|  |  |  |             IEnumerable<DetalleDistribucionCanillaAllDto> CanillasAll, | 
					
						
							|  |  |  |             IEnumerable<DetalleDistribucionCanillaDto> CanillasFechaLiq, | 
					
						
							|  |  |  |             IEnumerable<DetalleDistribucionCanillaDto> CanillasAccFechaLiq, | 
					
						
							| 
									
										
										
										
											2025-05-28 16:01:59 -03:00
										 |  |  |             IEnumerable<ObtenerCtrlDevolucionesDto> CtrlDevolucionesRemitos, // Para SP_ObtenerCtrlDevoluciones | 
					
						
							|  |  |  |             IEnumerable<ControlDevolucionesReporteDto> CtrlDevolucionesParaDistCan, // Para SP_DistCanillasCantidadEntradaSalida | 
					
						
							|  |  |  |             IEnumerable<DevueltosOtrosDiasDto> CtrlDevolucionesOtrosDias, // <--- NUEVO para SP_DistCanillasCantidadEntradaSalidaOtrosDias | 
					
						
							| 
									
										
										
										
											2025-05-27 18:17:56 -03:00
										 |  |  |             string? Error | 
					
						
							| 
									
										
										
										
											2025-05-28 16:01:59 -03:00
										 |  |  |         )> ObtenerReporteDistribucionCanillasAsync(DateTime fecha, int idEmpresa); | 
					
						
							| 
									
										
										
										
											2025-05-27 18:17:56 -03:00
										 |  |  | 
 | 
					
						
							|  |  |  |         // Reporte Tiradas por Publicación y Secciones (RR008) | 
					
						
							|  |  |  |         Task<(IEnumerable<TiradasPublicacionesSeccionesDto> Data, string? Error)> ObtenerTiradasPublicacionesSeccionesAsync(int idPublicacion, DateTime fechaDesde, DateTime fechaHasta, int idPlanta); | 
					
						
							|  |  |  |         Task<(IEnumerable<TiradasPublicacionesSeccionesDto> Data, string? Error)> ObtenerTiradasPublicacionesSeccionesConsolidadoAsync(int idPublicacion, DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Reporte Consumo Bobinas por Seccion (RR007) | 
					
						
							|  |  |  |         Task<(IEnumerable<ConsumoBobinasSeccionDto> Data, string? Error)> ObtenerConsumoBobinasPorSeccionAsync(DateTime fechaDesde, DateTime fechaHasta, int idPlanta); | 
					
						
							|  |  |  |         Task<(IEnumerable<ConsumoBobinasSeccionDto> Data, string? Error)> ObtenerConsumoBobinasPorSeccionConsolidadoAsync(DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Reporte Consumo Bobinas por Publicacion (RR007) - Consolidado | 
					
						
							|  |  |  |         Task<(IEnumerable<ConsumoBobinasPublicacionDto> Data, string? Error)> ObtenerConsumoBobinasPorPublicacionAsync(DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Reporte Comparativa Consumo Bobinas (RR007) | 
					
						
							|  |  |  |         Task<(IEnumerable<ComparativaConsumoBobinasDto> Data, string? Error)> ObtenerComparativaConsumoBobinasAsync(DateTime fechaInicioMesA, DateTime fechaFinMesA, DateTime fechaInicioMesB, DateTime fechaFinMesB, int idPlanta); | 
					
						
							|  |  |  |         Task<(IEnumerable<ComparativaConsumoBobinasDto> Data, string? Error)> ObtenerComparativaConsumoBobinasConsolidadoAsync(DateTime fechaInicioMesA, DateTime fechaFinMesA, DateTime fechaInicioMesB, DateTime fechaFinMesB); | 
					
						
							| 
									
										
										
										
											2025-05-28 16:01:59 -03:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-27 18:17:56 -03:00
										 |  |  |         // DTOs para ReporteCuentasDistribuidores | 
					
						
							|  |  |  |         Task<( | 
					
						
							|  |  |  |             IEnumerable<BalanceCuentaDistDto> EntradasSalidas, | 
					
						
							|  |  |  |             IEnumerable<BalanceCuentaDebCredDto> DebitosCreditos, | 
					
						
							|  |  |  |             IEnumerable<BalanceCuentaPagosDto> Pagos, | 
					
						
							|  |  |  |             IEnumerable<SaldoDto> Saldos, | 
					
						
							|  |  |  |             string? Error | 
					
						
							|  |  |  |         )> ObtenerReporteCuentasDistribuidorAsync(int idDistribuidor, int idEmpresa, DateTime fechaDesde, DateTime fechaHasta); | 
					
						
							| 
									
										
										
										
											2025-05-27 11:21:00 -03:00
										 |  |  |     } | 
					
						
							|  |  |  | } |