File "inventario_disponibles.php"

Full Path: C:/wamp64/www/RegistroEquipos2/backend/envios/inventario_disponibles.php
File size: 1.87 KB
MIME-type: text/x-php
Charset: utf-8

<?php
header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST, OPTIONS');
header('Access-Control-Allow-Headers: Content-Type');

// Si es una petición OPTIONS (preflight), responder OK
if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
    http_response_code(200);
    exit;
}

// Configuración de la base de datos
$host = '192.200.100.40';
$db = 'sistemas';
$user = 'SANMARINO';
$pass = 'sanmarino2021*';

try {
    // Conectar a la base de datos
    $pdo = new PDO("mysql:host=$host;dbname=$db;charset=utf8mb4", $user, $pass, [
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
        PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
    ]);

    // Consultar equipos disponibles
    $sql = "SELECT 
                id,
                marca,
                tipo_equipo,
                referencia,
                serial
            FROM inventario_computadores 
            WHERE estado_inventario = 'disponible'
            ORDER BY marca, referencia";
    $stmt = $pdo->query($sql);
    $equipos = $stmt->fetchAll();

    $data = array_map(function($eq) {
        return [
            'id' => $eq['id'],
            'text' => $eq['marca'] . ' ' . $eq['referencia'] . ' (' . $eq['tipo_equipo'] . ') - ' . $eq['serial'],
            'marca' => $eq['marca'],
            'tipo_equipo' => $eq['tipo_equipo'],
            'referencia' => $eq['referencia'],
            'serial' => $eq['serial']
        ];
    }, $equipos);

    echo json_encode(['status' => 'success', 'data' => $data]);

} catch (PDOException $e) {
    // Devolver error en JSON
    echo json_encode(['status' => 'error', 'mensaje' => 'Error de base de datos: ' . $e->getMessage()]);
} catch (Exception $e) {
    echo json_encode(['status' => 'error', 'mensaje' => 'Error general: ' . $e->getMessage()]);
}
?>