DELIMITER $

CREATE PROCEDURE sp_reporte_ventas_periodo(
    IN p_empresa_id INT,
    IN p_fecha_inicio DATE,
    IN p_fecha_fin DATE
)
BEGIN
    SELECT 
        DATE(t.fecha_emision) as fecha,
        COUNT(*) as num_ventas,
        SUM(t.total) as total_ventas
    FROM transacciones t
    WHERE t.empresa_id = p_empresa_id
        AND t.tipo_transaccion = 'VENTA'
        AND t.estado = 'COMPLETADA'
        AND DATE(t.fecha_emision) BETWEEN p_fecha_inicio AND p_fecha_fin
    GROUP BY DATE(t.fecha_emision)
    ORDER BY fecha;
END$

DELIMITER ;
