<?php  session_start();
if (!isset($_SESSION['id'])) { header("Location: ../index/index.php"); exit(); }
?>


<!DOCTYPE html>
<html lang="pt-br">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Gerenciador de Orçamentos</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <style>
        body { background-color: #f4f7f6; }
        .card { border-radius: 15px; border: none; box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
        .btn-action { border-radius: 20px; transition: 0.3s; }
        .btn-action:hover { transform: scale(1.05); }
    </style>
</head>
<body>

<div class="container py-5">
    <div class="d-flex justify-content-between align-items-center mb-4">
        <h2 class="text-primary fw-bold">Orçamentos em Aberto</h2>
        <button onclick="processarLote()" class="btn btn-outline-primary btn-sm rounded-pill">
            <i class="fa-solid fa-layer-group"></i> Converter Todos
        </button>
    </div>

    <div class="card">
        <div class="card-body p-0">
            <table class="table table-hover align-middle mb-0">
                <thead class="table-light">
                    <tr>
                        <th class="ps-4">Cód.</th>
                        <th>Cliente</th>
                        <th>Data</th>
                        <th>Total</th>
                        <th class="text-center">Ações</th>
                    </tr>
                </thead>
                <tbody>
                    <?php
                    include "../configuracao/conexao.php";
                    
                    // Seleciona apenas os abertos (Status 'A')
                    $query = "SELECT * FROM orc_cab WHERE orc_cab_status = 'P' ORDER BY codigo DESC";
                    $result = $mysqli->query($query);
                    
                    if ($result->num_rows > 0) {
                        while ($row = $result->fetch_assoc()) {
                            $data = date('d/m/Y', strtotime($row['data']));
                            echo "<tr>
                                    <td class='ps-4'>#{$row['codigo']}</td>
                                    <td class='fw-bold'>{$row['orc_cab_nome']}</td>
                                    <td>{$data}</td>
                                    <td>R$ {$row['orc_cab_tot_orc']}</td>
                                    <td class='text-center'>
                                        <button onclick='converterUm({$row['codigo']})' class='btn btn-success btn-sm btn-action'>
                                            <i class='fa-solid fa-check me-1'></i> Converter
                                        </button>
                                    </td>
                                  </tr>";
                        }
                    } else {
                        echo "<tr><td colspan='5' class='text-center py-5 text-muted'>Nenhum orçamento pendente.</td></tr>";
                    }
                    ?>
                </tbody>
            </table>
        </div>
    </div>
</div>

<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script>
// Função para converter UM orçamento específico
function converterUm(id) {
    Swal.fire({
        title: 'Converter Orçamento #' + id + '?',
        text: "Este orçamento será transformado em um pedido imediatamente.",
        icon: 'question',
        showCancelButton: true,
        confirmButtonText: 'Sim, converter!',
        cancelButtonText: 'Agora não'
    }).then((result) => {
        if (result.isConfirmed) {
            executarProcesso(id);
        }
    });
}

// Função para converter TODOS (Lote)
function processarLote() {
    Swal.fire({
        title: 'Converter TODOS?',
        text: "Deseja processar todos os orçamentos da lista de uma vez?",
        icon: 'warning',
        showCancelButton: true,
        confirmButtonText: 'Sim, todos!',
    }).then((result) => {
        if (result.isConfirmed) {
            executarProcesso('todos');
        }
    });
}

function executarProcesso(target) {
    Swal.fire({ title: 'Processando...', didOpen: () => { Swal.showLoading() } });

    const formData = new FormData();
    formData.append('id', target);

    fetch('converter.php', { method: 'POST', body: formData })
        .then(r => r.json())
        .then(data => {
            if(data.success) {
                Swal.fire('Sucesso!', data.message, 'success').then(() => location.reload());
            } else {
                Swal.fire('Erro', data.message, 'error');
            }
        });
}
</script>
</body>
</html>