<?php
/**
 * Script para testar o envio de checklist para a API
 */

header('Content-Type: text/html; charset=utf-8');

echo "<h1>🧪 Teste de Envio de Checklist</h1>";
echo "<p><strong>Data/Hora:</strong> " . date('Y-m-d H:i:s') . "</p>";

// Dados de teste baseados no que o app está enviando
$dadosTeste = [
    'viagemId' => 1,
    'veiculoId' => 6,
    'tipoVeiculo' => 'CARRO',
    'dataHora' => '2025-08-28 19:17:21',
    'itens' => [
        'doc_documentos' => [
            'nome' => 'DOCUMENTOS',
            'categoria' => 'DOCUMENTOS E CARTÕES',
            'status' => 'OK',
            'observacao' => ''
        ],
        'doc_cartao_vale_card' => [
            'nome' => 'CARTÃO VALE CARD',
            'categoria' => 'DOCUMENTOS E CARTÕES',
            'status' => 'OK',
            'observacao' => ''
        ]
    ],
    'observacoesGerais' => ''
];

echo "<h2>📤 Dados que serão enviados:</h2>";
echo "<pre style='background: #f8f9fa; padding: 10px; border-radius: 5px;'>";
echo json_encode($dadosTeste, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
echo "</pre>";

// URL da API
$url = "https://sistemas.pinheiroempresas.com.br/controlefrotaV1.1/backend-php/api-simples-v2.php?acao=checklist_veiculo";

echo "<h2>🌐 Enviando para: $url</h2>";

// Configurar cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($dadosTeste));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'Content-Length: ' . strlen(json_encode($dadosTeste))
]);

// Executar requisição
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$error = curl_error($ch);
curl_close($ch);

echo "<h2>📊 Resultado:</h2>";
echo "<p><strong>Código HTTP:</strong> $httpCode</p>";

if ($error) {
    echo "<p style='color: red;'><strong>❌ Erro cURL:</strong> $error</p>";
}

if ($response) {
    $data = json_decode($response, true);
    if ($data) {
        echo "<p><strong>✅ Resposta da API:</strong></p>";
        echo "<pre style='background: #f8f9fa; padding: 10px; border-radius: 5px;'>";
        echo json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
        echo "</pre>";
        
        if (isset($data['success']) && $data['success']) {
            echo "<p style='color: green;'>✅ Checklist enviado com sucesso!</p>";
        } else {
            echo "<p style='color: red;'>❌ Falha no envio: " . ($data['message'] ?? 'Erro desconhecido') . "</p>";
        }
    } else {
        echo "<p style='color: red;'>❌ Resposta não é JSON válido:</p>";
        echo "<pre>$response</pre>";
    }
} else {
    echo "<p style='color: red;'>❌ Nenhuma resposta recebida</p>";
}

// Verificar se foi inserido no banco
echo "<h2>🔍 Verificando inserção no banco:</h2>";

try {
    $host = 'localhost';
    $dbname = 'pinheir3_controle_frotasV1.1';
    $username = 'pinheir3_admin';
    $password = '080880Gelboy';
    
    $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $username, $password);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    // Verificar se foi inserido
    $stmt = $pdo->query("SELECT COUNT(*) as total FROM checklist_veiculo WHERE veiculo_id = 6 AND DATE(data_hora) = '2025-08-28'");
    $total = $stmt->fetch(PDO::FETCH_ASSOC)['total'];
    
    echo "<p><strong>Total de checklists para veículo 6 hoje:</strong> $total</p>";
    
    if ($total > 0) {
        $stmt = $pdo->query("
            SELECT id, viagem_id, veiculo_id, tipo_veiculo, data_hora, 
                   JSON_LENGTH(itens_json) as total_itens
            FROM checklist_veiculo 
            WHERE veiculo_id = 6 AND DATE(data_hora) = '2025-08-28'
            ORDER BY data_hora DESC
        ");
        
        echo "<h3>📋 Registros encontrados:</h3>";
        echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
        echo "<tr style='background: #f0f0f0;'>";
        echo "<th>ID</th><th>Viagem ID</th><th>Veículo ID</th><th>Tipo</th><th>Data/Hora</th><th>Itens</th>";
        echo "</tr>";
        
        while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
            echo "<tr>";
            echo "<td>{$row['id']}</td>";
            echo "<td>{$row['viagem_id']}</td>";
            echo "<td>{$row['veiculo_id']}</td>";
            echo "<td>{$row['tipo_veiculo']}</td>";
            echo "<td>{$row['data_hora']}</td>";
            echo "<td>{$row['total_itens']}</td>";
            echo "</tr>";
        }
        echo "</table>";
    } else {
        echo "<p style='color: red;'>❌ Nenhum checklist encontrado no banco</p>";
    }
    
} catch (Exception $e) {
    echo "<p style='color: red;'><strong>❌ Erro ao verificar banco:</strong> " . $e->getMessage() . "</p>";
}
?>
