# Script para enviar dados do veiculos.json para a API
# Use este script para testar o envio de dados

$apiUrl = "http://localhost:3000/api/veiculos"
# Em produção, use: $apiUrl = "https://seudominio.com/api/veiculos"

$jsonFile = "veiculos.json"

Write-Host "========================================" -ForegroundColor Cyan
Write-Host " Enviar Dados para API de Rastreamento" -ForegroundColor Cyan
Write-Host "========================================" -ForegroundColor Cyan
Write-Host ""
Write-Host "API: $apiUrl" -ForegroundColor Yellow
Write-Host "Arquivo: $jsonFile" -ForegroundColor Yellow
Write-Host ""

try {
    # Verificar se arquivo existe
    if (-not (Test-Path $jsonFile)) {
        throw "Arquivo $jsonFile não encontrado!"
    }
    
    # Ler arquivo JSON
    Write-Host "Lendo arquivo..." -ForegroundColor Gray
    $json = Get-Content $jsonFile -Raw
    $dados = $json | ConvertFrom-Json
    
    Write-Host "Total de veículos no arquivo: $($dados.total_veiculos)" -ForegroundColor Cyan
    Write-Host ""
    Write-Host "Enviando dados..." -ForegroundColor Yellow
    
    # Enviar para API
    $response = Invoke-RestMethod -Uri $apiUrl -Method Post -Body $json -ContentType "application/json"
    
    # Exibir resultado
    Write-Host ""
    if ($response.sucesso) {
        Write-Host "✓ SUCESSO!" -ForegroundColor Green
        Write-Host "  Mensagem: $($response.mensagem)" -ForegroundColor White
        Write-Host "  Total processados: $($response.total)" -ForegroundColor White
    } else {
        Write-Host "✗ ERRO!" -ForegroundColor Red
        Write-Host "  Mensagem: $($response.mensagem)" -ForegroundColor White
    }
}
catch {
    Write-Host ""
    Write-Host "✗ ERRO AO ENVIAR DADOS!" -ForegroundColor Red
    Write-Host "  $($_.Exception.Message)" -ForegroundColor White
    Write-Host ""
    Write-Host "Verifique:" -ForegroundColor Yellow
    Write-Host "  1. O servidor está rodando? (npm start)" -ForegroundColor Gray
    Write-Host "  2. A URL da API está correta?" -ForegroundColor Gray
    Write-Host "  3. O arquivo veiculos.json existe?" -ForegroundColor Gray
}

Write-Host ""
Write-Host "Pressione qualquer tecla para sair..."
$null = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown')
