<?php
// Incluir el archivo de sesión para verificar que el usuario esté autenticado
include 'sesion_user.php';

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

// Variables para la paginación por día
$diaActual = isset($_GET['day']) ? intval($_GET['day']) : 1; // Si no se selecciona un día, se muestra el primero
$itemsPorPagina = 1; // Una página = un día

if ($_SERVER["REQUEST_METHOD"] == "POST" || isset($_GET['day'])) {
    $year = isset($_POST["year"]) ? $_POST["year"] : $_GET["year"];
    $month = isset($_POST["month"]) ? $_POST["month"] : $_GET["month"];

    // Generar el rango de fechas para el día seleccionado
    $inicioDia = $year . $month . str_pad($diaActual, 2, "0", STR_PAD_LEFT) . "0000"; // Día a las 00:00
    $finDia = $year . $month . str_pad($diaActual, 2, "0", STR_PAD_LEFT) . "2359"; // Día a las 23:59

    include 'concha.php';

    mysql_connect("$host", "$usuario", "$contra");
    mysql_select_db("$basedatos");

    // Consulta de las ventas para el día seleccionado
    $sqlVentas = "SELECT ID, fecha FROM ventas WHERE fecha BETWEEN '$inicioDia' AND '$finDia'";
    $consultaVentas = mysql_query($sqlVentas);

    // Estructura para almacenar las ventas del día
    $ventasDelDia = [];

    // Clasificación de las ventas del día
    while ($venta = mysql_fetch_assoc($consultaVentas)) {
        $idVenta = $venta['ID'];
        $fechaVenta = $venta['fecha'];

        // Extraer partes de la fecha en formato AAAAMMDDHHMM
        $anio = substr($fechaVenta, 0, 4);
        $mes = substr($fechaVenta, 4, 2);
        $dia = substr($fechaVenta, 6, 2);
        $hora = substr($fechaVenta, 8, 2);
        $minuto = substr($fechaVenta, 10, 2);
        $fechaVentaFormateada = "$anio-$mes-$dia $hora:$minuto";

        // Consulta para contar la cantidad de cada artículo vendido en esta venta
        $sqlMovimientos = "SELECT m.ID_articulo, a.barcode, a.titulo, a.precio, SUM(m.cantidad) as cantidad_vendida 
                           FROM movimientos m 
                           INNER JOIN articulos a ON m.ID_articulo = a.ID 
                           WHERE m.ID_venta = $idVenta 
                           GROUP BY m.ID_articulo";
        
        $consultaMovimientos = mysql_query($sqlMovimientos);
        
        while ($articulo = mysql_fetch_assoc($consultaMovimientos)) {
            $barcode = $articulo["barcode"];
            $titulo = $articulo["titulo"];
            $precio = floatval($articulo["precio"]); // Convertir el precio a número
            $cantidadVendida = intval($articulo["cantidad_vendida"]);
            $facturacionNeta = $precio * $cantidadVendida; // Calcular facturación neta

            // Guardar los datos de la venta en el array del día
            $ventasDelDia[] = [
                'fecha' => $fechaVentaFormateada,
                'barcode' => $barcode,
                'titulo' => $titulo,
                'cantidad' => $cantidadVendida,
                'facturacion' => $facturacionNeta,
                'precio' => $precio
            ];
        }
    }

    mysql_free_result($consultaVentas);

    // Mostrar los resultados del día en formato tabla
    echo "<h2>Informe de Ventas para el Día: $year-$month-$diaActual</h2>";
    echo "<table border='1'>";
    echo "<tr>
            <th>Fecha</th>
            <th>Cod. Sucursal</th>
            <th>Tipo de Vta</th>
            <th>EAN</th>
            <th>EAN Descripción</th>
            <th>Unidades Vendidas</th>
            <th>Facturación Neta</th>
            <th>Localidad/Provincia</th>
          </tr>";

    if (count($ventasDelDia) > 0) {
        foreach ($ventasDelDia as $venta) {
            echo "<tr>";
            echo "<td>{$venta['fecha']}</td>"; // Fecha
            echo "<td>101</td>"; // Código Sucursal
            echo "<td>piso</td>"; // Tipo de Venta
            echo "<td>{$venta['barcode']}</td>"; // EAN (Barcode)
            echo "<td>{$venta['titulo']}</td>"; // EAN Descripción
            echo "<td>{$venta['cantidad']}</td>"; // Unidades Vendidas
            echo "<td>".number_format($venta['facturacion'], 2)."</td>"; // Facturación Neta
            echo "<td>Rosario/Santa Fe</td>"; // Localidad/Provincia
            echo "</tr>";
        }
    } else {
        echo "<tr><td colspan='8'>No hay ventas registradas para este día.</td></tr>";
    }

    echo "</table>";

    // Paginación: Mostrar controles de paginación
    $totalDias = date("t", strtotime("$year-$month-01")); // Obtener el número total de días del mes
    echo "<div style='text-align:center; margin-top: 20px;'>";
    for ($i = 1; $i <= $totalDias; $i++) {
        echo "<a href='?year=$year&month=$month&day=$i' style='margin-right: 10px;'>Día $i</a>";
    }
    echo "</div>";

    mysql_close();
}
?>
