prefix . ‘pdv_waiter_calls’;
echo ‘
‘;
echo ‘
🔍 Diagnóstico Completo – PDV Waiter Call
‘;
// ============================================
// 1. VERIFICAR SE A TABELA EXISTE
// ============================================
echo ‘
echo ‘
1. Tabela no Banco de Dados
‘;
$table_exists = $wpdb->get_var(“SHOW TABLES LIKE ‘$table_name'”) == $table_name;
if ($table_exists) {
echo ‘✅ Tabela existe: ‘ . $table_name . ‘
‘;
// Mostrar estrutura da tabela
echo ‘
Estrutura da tabela:
‘;
$columns = $wpdb->get_results(“DESCRIBE $table_name”);
echo ‘
| Campo | Tipo | Null | Key | Default |
|---|---|---|---|---|
| ‘ . $col->Field . ‘ | ‘ . $col->Type . ‘ | ‘ . $col->Null . ‘ | ‘ . $col->Key . ‘ | ‘ . $col->Default . ‘ |
‘;
} else {
echo ‘❌ ERRO: Tabela não existe!
‘;
echo ‘Nome esperado: ‘ . $table_name . ‘
‘;
echo ‘
Solução: Desative e reative o plugin para criar a tabela.’;
}
echo ‘
‘;
// ============================================
// 2. CONTAR REGISTROS
// ============================================
if ($table_exists) {
echo ‘
echo ‘
2. Contagem de Registros
‘;
$total = $wpdb->get_var(“SELECT COUNT(*) FROM $table_name”);
$pending = $wpdb->get_var(“SELECT COUNT(*) FROM $table_name WHERE status = ‘pending'”);
$attended = $wpdb->get_var(“SELECT COUNT(*) FROM $table_name WHERE status = ‘attended'”);
echo ‘
| Status | Quantidade |
|---|---|
| TOTAL | ‘ . $total . ‘ |
| PENDENTES | ‘ . $pending . ‘ |
| ATENDIDAS | ‘ . $attended . ‘ |
‘;
echo ‘
‘;
// ============================================
// 3. MOSTRAR TODAS AS CHAMADAS
// ============================================
echo ‘
echo ‘
3. Todas as Chamadas no Banco
‘;
$all_calls = $wpdb->get_results(“SELECT * FROM $table_name ORDER BY id DESC LIMIT 50”);
if ($all_calls) {
echo ‘
| ID | Mesa | Timestamp | Status | Atendido Por | Atendido Em | Observação | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ‘ . $call->id . ‘ | ‘ . esc_html($call->mesa_numero) . ‘ | ‘ . $call->timestamp . ‘ | ‘; echo ‘ 4. Ações de Limpeza‘; // Processar ações ✅ Tabela truncada! Todos os registros foram deletados.
‘; if ($_POST[‘action’] === ‘delete_pending’ && isset($_POST[‘confirm’])) { ✅ Chamadas pendentes deletadas!
‘; if ($_POST[‘action’] === ‘update_pending’ && isset($_POST[‘confirm’])) { ✅ Todas pendentes marcadas como atendidas!
‘; if ($pending > 0) { ‘; echo ‘ ‘; if ($total > 0) { ‘; ‘; ‘; // ============================================ ‘;
echo ‘ 5. Teste da Query de Busca (usada pelo painel)‘; echo ‘ Query executada pelo painel: ‘; ' . $query . ' ‘; $test_calls = $wpdb->get_results($query); Resultado: ‘ . count($test_calls) . ‘ chamada(s) encontrada(s) ‘; if ($test_calls) {
‘; ‘; // ============================================ ‘;
echo ‘ 6. Teste de Handler AJAX‘; ‘; ‘; // ============================================ ‘;
echo ‘ 7. Informações do Sistema‘;
‘; ‘; echo ‘ ‘;
echo ‘ ⚠️ IMPORTANTE‘; DELETE ESTA PÁGINA APÓS O DIAGNÓSTICO! ‘; Esta página expõe informações do banco de dados e só deve ser usada para diagnóstico. ‘; ‘; |