<?php
// Teste da API de checklist simulando o app Android
header('Content-Type: text/html; charset=utf-8');
error_reporting(E_ALL);
ini_set('display_errors', 1);

echo "<h1>🧪 Teste da API de Checklist</h1>";

// Dados que o app Android envia
$dadosApp = [
    'viagemId' => 1,
    'veiculoId' => 6,
    'tipoVeiculo' => 'CARRO',
    'dataHora' => date('Y-m-d H:i:s'),
    'observacoesGerais' => 'Teste via API',
    'itens' => [
        [
            'itemId' => 'pneu_dianteiro_esquerdo',
            'status' => 'OK',
            'observacoes' => 'Teste via API'
        ],
        [
            'itemId' => 'farol_principal',
            'status' => 'OK',
            'observacoes' => 'Funcionando'
        ]
    ]
];

echo "<h2>📋 Dados que serão enviados para a API:</h2>";
echo "<div style='background-color: #f8f9fa; padding: 15px; border-radius: 5px;'>";
echo "<pre>" . json_encode($dadosApp, JSON_PRETTY_PRINT) . "</pre>";
echo "</div>";

// Simular envio para a API
$url = 'https://sistemas.pinheiroempresas.com.br/controlefrotaV1.1/backend-php/api-simples-v2.php?acao=checklist_veiculo';

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

echo "<h2>🔄 Enviando para a API...</h2>";
echo "<p><strong>URL:</strong> $url</p>";

$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$error = curl_error($ch);
curl_close($ch);

echo "<h2>📥 Resposta da API:</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) {
    echo "<div style='background-color: #f8f9fa; padding: 15px; border-radius: 5px;'>";
    echo "<pre>" . htmlspecialchars($response) . "</pre>";
    echo "</div>";
    
    // Tentar decodificar JSON
    $jsonResponse = json_decode($response, true);
    if ($jsonResponse) {
        echo "<h3>📊 Resposta Decodificada:</h3>";
        echo "<div style='background-color: #d4edda; padding: 15px; border-radius: 5px;'>";
        echo "<p><strong>Sucesso:</strong> " . ($jsonResponse['sucesso'] ? 'Sim' : 'Não') . "</p>";
        echo "<p><strong>Mensagem:</strong> " . ($jsonResponse['mensagem'] ?? 'N/A') . "</p>";
        if (isset($jsonResponse['dados'])) {
            echo "<p><strong>Dados:</strong></p>";
            echo "<pre>" . json_encode($jsonResponse['dados'], JSON_PRETTY_PRINT) . "</pre>";
        }
        echo "</div>";
    }
} else {
    echo "<p style='color: red;'>❌ Nenhuma resposta recebida</p>";
}

// Verificar se foi salvo no banco
echo "<h2>🔍 Verificando se foi salvo no banco...</h2>";

$host = 'localhost';
$dbname = 'pinheir3_controle_frotasV1.1';
$username = 'pinheir3_admin';
$password = '080880Gelboy';

try {
    $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    // Contar checklists
    $stmt = $pdo->query("SELECT COUNT(*) as total FROM checklist_veiculo");
    $total = $stmt->fetch(PDO::FETCH_ASSOC)['total'];
    echo "<p><strong>Total de checklists no banco:</strong> $total</p>";
    
    if ($total > 0) {
        // Mostrar último checklist
        $stmt = $pdo->query("SELECT * FROM checklist_veiculo ORDER BY id DESC LIMIT 1");
        $ultimo = $stmt->fetch(PDO::FETCH_ASSOC);
        
        echo "<h3>📋 Último Checklist:</h3>";
        echo "<div style='background-color: #d4edda; padding: 15px; border-radius: 5px;'>";
        echo "<p><strong>ID:</strong> {$ultimo['id']}</p>";
        echo "<p><strong>Viagem ID:</strong> {$ultimo['viagem_id']}</p>";
        echo "<p><strong>Veículo ID:</strong> {$ultimo['veiculo_id']}</p>";
        echo "<p><strong>Tipo:</strong> {$ultimo['tipo_veiculo']}</p>";
        echo "<p><strong>Data:</strong> {$ultimo['data_hora']}</p>";
        echo "<p><strong>Criado em:</strong> {$ultimo['created_at']}</p>";
        echo "</div>";
    }
    
} catch (Exception $e) {
    echo "<p style='color: red;'>❌ Erro ao verificar banco: " . $e->getMessage() . "</p>";
}

echo "<h2>🎯 Conclusão:</h2>";
echo "<p>Teste da API concluído!</p>";
echo "<p><strong>Data/Hora:</strong> " . date('Y-m-d H:i:s') . "</p>";
?>
