<?php

require_once "../controladores/productos.controlador.php";
require_once "../modelos/productos.modelo.php";
require_once "../controladores/stock.controlador.php";
require_once "../modelos/stock.modelo.php";

class TablaProductosMovimientos {

    /*=============================================
    MOSTRAR LA TABLA DE PRODUCTOS PARA MOVIMIENTOS
    =============================================*/ 
    public function mostrarTablaProductosMovimientos() {

        $item = null;
        $valor = null;
        $orden = "id";
        $tabla = "productos";

        // Obtener todos los productos
        $productos = ControladorProductos::ctrMostrarProductos($item, $valor, $orden);

        if (count($productos) == 0) {
            echo '{"data": []}';
            return;
        }

        $datos = [];

        foreach ($productos as $i => $producto) {

            // Traer el stock actual del producto de la tabla stock_actual
            $itemStock = "id_producto";
            $valorStock = $producto["id"];
            $tablaStock = "productos";
            $stockActual = ControladorStock::ctrMostrarStockActual($tablaStock, $itemStock, $valorStock);

            $stock = ($stockActual) ? $stockActual["cantidad"] : 0;

            // Traemos la imagen
            $imagen = "<img src='" . $producto["imagen"] . "' width='40px'>";

            // Botón para agregar producto
            $botones = "<div class='btn-group'><button class='btn btn-primary agregarProducto recuperarBoton' idProducto='" . $producto["id"] . "'>Agregar</button></div>";

            // Se arma el array para la respuesta JSON
            $datos[] = [
                ($i + 1),
                $imagen,
                $producto["codigo"],
                $producto["descripcion"],
                $stock,
                $botones
            ];
        }

        // Se codifica el array a formato JSON y se imprime
        echo json_encode(["data" => $datos]);
    }
}

/*=============================================
ACTIVAR TABLA DE PRODUCTOS PARA MOVIMIENTOS
=============================================*/ 
$activarProductosMovimientos = new TablaProductosMovimientos();
$activarProductosMovimientos->mostrarTablaProductosMovimientos();