<?php
header('Content-Type: text/html; charset=utf-8');
?>
<!DOCTYPE html>
<html>
<head>
    <title>🔧 Executar Scripts de Diagnóstico</title>
    <style>
        body { font-family: Arial, sans-serif; margin: 20px; }
        .container { max-width: 1200px; margin: 0 auto; }
        .script-button { 
            display: inline-block; 
            padding: 15px 25px; 
            margin: 10px; 
            background: #007cba; 
            color: white; 
            text-decoration: none; 
            border-radius: 5px; 
            font-weight: bold;
        }
        .script-button:hover { background: #005a87; }
        .sql-section { 
            background: #f5f5f5; 
            padding: 20px; 
            border-radius: 5px; 
            margin: 20px 0; 
        }
        .warning { 
            background: #fff3cd; 
            padding: 15px; 
            border-radius: 5px; 
            border-left: 5px solid #ffc107; 
            margin: 15px 0; 
        }
        .success { 
            background: #d4edda; 
            padding: 15px; 
            border-radius: 5px; 
            border-left: 5px solid #28a745; 
            margin: 15px 0; 
        }
        pre { background: #f8f9fa; padding: 15px; border-radius: 5px; overflow-x: auto; }
    </style>
</head>
<body>
    <div class="container">
        <h1>🔧 Scripts de Diagnóstico - Controle de Frotas</h1>
        
        <div class="warning">
            <h3>⚠️ Como usar:</h3>
            <p><strong>1.</strong> Execute os scripts de diagnóstico primeiro</p>
            <p><strong>2.</strong> Execute o SQL de correção se necessário</p>
            <p><strong>3.</strong> Teste no app após as correções</p>
        </div>
        
        <h2>📊 Scripts de Diagnóstico</h2>
        
        <p>Execute estes scripts <strong>clicando nos botões</strong> para abrir em nova aba:</p>
        
        <a href="debug-viagem-atual.php" target="_blank" class="script-button">
            🔍 DEBUG: Viagem Atual (ID 151)
        </a>
        
        <a href="debug-fotos-completo.php" target="_blank" class="script-button">
            📸 DEBUG: Sistema de Fotos
        </a>
        
        <a href="debug-fotos-checklist.php" target="_blank" class="script-button">
            📋 DEBUG: Fotos Checklist
        </a>
        
        <a href="testar-endpoint-finalizar.php" target="_blank" class="script-button">
            🌐 TESTE: Endpoint Finalizar
        </a>
        
        <a href="verificar-viagem-151-status.php" target="_blank" class="script-button">
            🚗 STATUS: Viagem 151 e Ativas
        </a>
        
        <a href="testar-fotos-checklist.php" target="_blank" class="script-button">
            🧪 TESTE: Fotos Checklist (Completo)
        </a>
        
        <h2>⚡ Correções SQL - KM GPS</h2>
        
        <div class="sql-section">
            <h3>📝 SQL ABRANGENTE - Corrigir TODAS as viagens com problema:</h3>
            
            <p><strong>📄 Arquivo:</strong> <code>corrigir-todas-viagens-km-gps.sql</code></p>
            <p><strong>Execute este SQL no seu cliente MySQL para corrigir:</strong></p>
            <ul>
                <li>✅ Viagem 151 especificamente</li>
                <li>✅ Todas as viagens com coordenadas mas KM GPS = NULL</li>
                <li>✅ Estatísticas antes e depois da correção</li>
                <li>✅ Relatório completo dos resultados</li>
            </ul>
            
            <pre>-- 1. VERIFICAR DADOS ATUAIS
SELECT 
    id, cliente, 
    latitude_inicial, longitude_inicial,
    latitude_final, longitude_final,
    km_gps_final,
    ROUND(
        6371 * acos(
            cos(radians(latitude_inicial)) * 
            cos(radians(latitude_final)) * 
            cos(radians(longitude_final) - radians(longitude_inicial)) + 
            sin(radians(latitude_inicial)) * 
            sin(radians(latitude_final))
        ), 3
    ) AS km_calculado
FROM viagens WHERE id = 151;

-- 2. APLICAR CORREÇÃO
UPDATE viagens 
SET 
    km_gps_final = ROUND(
        6371 * acos(
            cos(radians(latitude_inicial)) * 
            cos(radians(latitude_final)) * 
            cos(radians(longitude_final) - radians(longitude_inicial)) + 
            sin(radians(latitude_inicial)) * 
            sin(radians(latitude_final))
        ), 3
    ),
    observacoes = CONCAT(
        COALESCE(observacoes, ''), 
        ' | KM GPS corrigido em ', NOW(), ': ~0.005 km'
    )
WHERE id = 151 
AND latitude_final IS NOT NULL;

-- 3. VERIFICAR RESULTADO
SELECT id, cliente, km_gps_final, observacoes 
FROM viagens WHERE id = 151;</pre>
            
            <div class="success">
                <h4>✅ Resultado esperado:</h4>
                <ul>
                    <li><strong>km_gps_final:</strong> 0.005 (aproximadamente)</li>
                    <li><strong>observacoes:</strong> Conterá registro da correção automática</li>
                </ul>
            </div>
        </div>
        
        <h2>🧪 Teste Definitivo - Sistema de Fotos</h2>
        
        <div class="sql-section">
            <h3>📸 Script de Teste Completo de Fotos:</h3>
            
            <p><strong>📄 Arquivo:</strong> <code>testar-fotos-checklist.php</code></p>
            <p><strong>O que este teste faz:</strong></p>
            <ul>
                <li>✅ Simula EXATAMENTE o que o app Android deveria enviar</li>
                <li>✅ Inclui array 'fotos' com dados Base64 reais</li>
                <li>✅ Testa a API com logs de debug ativados</li>
                <li>✅ Verifica se fotos são salvas na tabela checklist_fotos</li>
                <li>✅ Mostra logs de debug para diagnóstico completo</li>
            </ul>
            
            <div class="success">
                <h4>📊 Resultado do teste:</h4>
                <ul>
                    <li><strong>Se fotos forem processadas:</strong> ✅ Sistema funciona, problema é no app Android</li>
                    <li><strong>Se fotos NÃO forem processadas:</strong> ❌ Problema na API (identificado pelos logs)</li>
                </ul>
            </div>
        </div>
        
        <h2>🎯 Após executar os diagnósticos:</h2>
        
        <div class="warning">
            <h3>📋 Checklist de verificação:</h3>
            <ol>
                <li>✅ <strong>Diagnósticos executados:</strong> Problemas identificados</li>
                <li>🔍 <strong>Fotos:</strong> ❌ App não envia array 'fotos' - Logs adicionados na API</li>
                <li>🚗 <strong>Viagem 151:</strong> ⚠️ Já finalizada - verificar viagem ativa atual</li>
                <li>📊 <strong>KM GPS:</strong> Correção SQL pronta para aplicar</li>
                <li>🧪 <strong>Teste:</strong> Fazer checklist com foto e verificar logs</li>
            </ol>
        </div>
        
        <h2>🚀 Plano de Execução Completo</h2>
        
        <p><strong>1. DIAGNÓSTICOS (Completos):</strong></p>
        <ol>
            <li>✅ Execute todos os scripts de diagnóstico acima</li>
            <li>✅ Verifique status da viagem 151 e viagens ativas</li>
            <li>✅ Execute teste completo de fotos com logs</li>
        </ol>
        
        <p><strong>2. CORREÇÕES SQL:</strong></p>
        <ol>
            <li>📄 Execute o SQL abrangente (<code>corrigir-todas-viagens-km-gps.sql</code>)</li>
            <li>📊 Verifique estatísticas antes e depois</li>
            <li>✅ Confirme correção da viagem 151 e outras</li>
        </ol>
        
        <p><strong>3. TESTE FINAL NO APP:</strong></p>
        <ol>
            <li>📱 Inicie uma nova viagem (pelo menos 1 km)</li>
            <li>📋 Faça checklist com foto de algum problema</li>
            <li>🔍 Verifique logs da API (debug ativado)</li>
            <li>🏁 Finalize a viagem</li>
            <li>✅ Confirme se todos os dados foram salvos</li>
        </ol>
        
        <div class="success">
            <h3>🎉 Se tudo funcionou:</h3>
            <p>Todos os problemas identificados foram resolvidos!</p>
            <ul>
                <li>✅ KM GPS sendo calculado e salvo</li>
                <li>✅ Fotos de checklist sendo enviadas</li>
                <li>✅ Tipos de veículo corretos</li>
                <li>✅ API recebendo dados do app</li>
            </ul>
        </div>
        
        <hr>
        <p><small>🔧 <strong>Dica:</strong> Se alguns scripts não abrirem, copie os nomes dos arquivos e acesse diretamente via URL do seu servidor.</small></p>
        
    </div>
</body>
</html> 
