<?php
// Teste que simula exatamente o que o app Android está enviando
require_once 'config.php';

echo "<h1>🧪 Teste Simulando App Android - Checklist Real</h1>";

// Dados que o app está enviando (baseado nos logs)
$dadosChecklist = [
    'viagemId' => 1,  // ID da rota
    'veiculoId' => 6, // Veículo Cerato
    'tipoVeiculo' => 'CARRO',
    'dataHora' => '2025-08-28 20:09:49',
    'observacoesGerais' => '',
    'itens' => [
        'doc_documentos' => [
            'nome' => 'DOCUMENTOS',
            'categoria' => 'DOCUMENTOS E CARTÕES',
            'status' => 'OK',
            'observacao' => ''
        ],
        'acessorios_chave_roda' => [
            'nome' => 'CHAVE DE RODA',
            'categoria' => 'ACESSÓRIOS',
            'status' => 'PROBLEMA',
            'observacao' => 'Problema detectado'
        ]
        // ... outros itens
    ],
    'fotos' => [
        [
            'itemId' => 'acessorios_chave_roda',
            'descricao' => 'Problema detectado',
            'base64' => 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAABAAEDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAv/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFQEBAQAAAAAAAAAAAAAAAAAAAAX/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCdABmX/9k=',
            'tipoMime' => 'image/jpeg'
        ]
    ]
];

// Simular requisição POST
$url = 'https://sistemas.pinheiroempresas.com.br/controlefrotaV1.1/backend-php/api-simples-v2.php';

$postData = [
    'acao' => 'checklist_veiculo',
    'dados' => json_encode($dadosChecklist)
];

echo "<h2>📤 Enviando dados para API:</h2>";
echo "<pre>" . json_encode($dadosChecklist, JSON_PRETTY_PRINT) . "</pre>";

// Fazer requisição cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);

$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;'>❌ Erro cURL: $error</p>";
} else {
    echo "<p><strong>Resposta:</strong></p>";
    echo "<pre>$response</pre>";
    
    // Decodificar resposta JSON
    $data = json_decode($response, true);
    if ($data) {
        echo "<h3>📋 Resposta Decodificada:</h3>";
        echo "<pre>" . json_encode($data, JSON_PRETTY_PRINT) . "</pre>";
        
        if (isset($data['success']) && $data['success']) {
            echo "<p style='color: green; font-size: 18px;'>✅ Checklist enviado com sucesso!</p>";
            if (isset($data['data']['id'])) {
                echo "<p><strong>ID do Checklist:</strong> {$data['data']['id']}</p>";
            }
            if (isset($data['data']['clienteInfo'])) {
                echo "<p><strong>Tipo:</strong> {$data['data']['clienteInfo']}</p>";
            }
            if (isset($data['data']['message'])) {
                echo "<p><strong>Detalhes:</strong> {$data['data']['message']}</p>";
            }
        } else {
            echo "<p style='color: red; font-size: 18px;'>❌ Falha no envio do checklist</p>";
            if (isset($data['message'])) {
                echo "<p><strong>Erro:</strong> {$data['message']}</p>";
            }
        }
    }
}

// Verificar se foi salvo no banco
echo "<h2>🔍 Verificação no Banco de Dados:</h2>";

try {
    $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    // Verificar checklists de hoje
    $hoje = date('Y-m-d');
    $stmt = $pdo->prepare("SELECT COUNT(*) as total FROM checklist_veiculo WHERE DATE(data_hora) = ?");
    $stmt->execute([$hoje]);
    $totalHoje = $stmt->fetch(PDO::FETCH_ASSOC)['total'];
    echo "<p><strong>Checklists salvos hoje ($hoje):</strong> $totalHoje</p>";
    
    // Verificar último checklist
    $stmt = $pdo->query("SELECT * FROM checklist_veiculo ORDER BY id DESC LIMIT 1");
    $ultimoChecklist = $stmt->fetch(PDO::FETCH_ASSOC);
    
    if ($ultimoChecklist) {
        echo "<p><strong>Último checklist salvo:</strong></p>";
        echo "<ul>";
        echo "<li><strong>ID:</strong> {$ultimoChecklist['id']}</li>";
        echo "<li><strong>Viagem ID:</strong> {$ultimoChecklist['viagem_id']}</li>";
        echo "<li><strong>Veículo ID:</strong> {$ultimoChecklist['veiculo_id']}</li>";
        echo "<li><strong>Tipo:</strong> {$ultimoChecklist['tipo_veiculo']}</li>";
        echo "<li><strong>Data/Hora:</strong> {$ultimoChecklist['data_hora']}</li>";
        echo "<li><strong>Sincronizado:</strong> " . ($ultimoChecklist['sincronizado'] ? 'Sim' : 'Não') . "</li>";
        echo "</ul>";
    }
    
    // Verificar fotos
    $stmt = $pdo->query("SHOW TABLES LIKE 'checklist_fotos'");
    if ($stmt->rowCount() > 0) {
        $stmt = $pdo->query("SELECT COUNT(*) as total FROM checklist_fotos");
        $totalFotos = $stmt->fetch(PDO::FETCH_ASSOC)['total'];
        echo "<p><strong>Total de fotos salvas:</strong> $totalFotos</p>";
        
        // Última foto
        $stmt = $pdo->query("SELECT * FROM checklist_fotos ORDER BY id DESC LIMIT 1");
        $ultimaFoto = $stmt->fetch(PDO::FETCH_ASSOC);
        if ($ultimaFoto) {
            echo "<p><strong>Última foto salva:</strong></p>";
            echo "<ul>";
            echo "<li><strong>ID:</strong> {$ultimaFoto['id']}</li>";
            echo "<li><strong>Checklist ID:</strong> {$ultimaFoto['checklist_id']}</li>";
            echo "<li><strong>Item ID:</strong> {$ultimaFoto['item_id']}</li>";
            echo "<li><strong>Arquivo:</strong> {$ultimaFoto['nome_arquivo']}</li>";
            echo "<li><strong>Data:</strong> {$ultimaFoto['created_at']}</li>";
            echo "</ul>";
        }
    } else {
        echo "<p>❌ Tabela 'checklist_fotos' não existe!</p>";
    }
    
} catch (PDOException $e) {
    echo "<p style='color: red;'>❌ Erro de conexão: " . $e->getMessage() . "</p>";
}
?>
