<?php
// dashboard.php
$pageActive = 'dashboard';
$pageTitle  = 'Dashboard';
require_once __DIR__ . '/functions.php';
require_once __DIR__ . '/auth.php';
requireLogin();

$stats   = getEstatisticas();
$ordens  = getOrdens([]);   // últimas OS
$ordens  = array_slice($ordens, 0, 8);
$clientes_recentes = getClientes(['ativo' => 1]);
$clientes_recentes = array_slice(array_reverse($clientes_recentes), 0, 6);

require_once __DIR__ . '/includes/header.php';
?>

<!-- TOPBAR -->
<div class="topbar"><button class="btn-hamburger" onclick="abrirDrawer()" aria-label="Menu">&#9776;</button>
  <div>
    <div class="page-title">Dashboard</div>
    <div class="page-sub">Visão geral operacional · <?= date('d/m/Y H:i') ?></div>
  </div>
  <div class="topbar-actions">
    <a href="os_form.php" class="btn btn-primary">+ Nova OS</a>
    <a href="cliente_form.php" class="btn btn-ghost">+ Cliente</a>
  </div>
</div>

<div class="content">

  <!-- STATS -->
  <div class="stats-grid">
    <div class="stat-card">
      <div class="stat-accent" style="background:var(--cyan)"></div>
      <div class="stat-label">CLIENTES ATIVOS</div>
      <div class="stat-val"><?= $stats['clientes_ativos'] ?></div>
      <div class="stat-sub">Total cadastrado</div>
    </div>
    <div class="stat-card">
      <div class="stat-accent" style="background:var(--amber)"></div>
      <div class="stat-label">OS ABERTAS</div>
      <div class="stat-val"><?= $stats['os_abertas'] ?></div>
      <div class="stat-sub">Aguardando execução</div>
    </div>
    <div class="stat-card">
      <div class="stat-accent" style="background:var(--green)"></div>
      <div class="stat-label">OS CONCLUÍDAS</div>
      <div class="stat-val"><?= $stats['os_concluidas'] ?></div>
      <div class="stat-sub">Este mês</div>
    </div>
    <div class="stat-card">
      <div class="stat-accent" style="background:var(--red)"></div>
      <div class="stat-label">BLOQUEADOS</div>
      <div class="stat-val"><?= $stats['bloqueados'] ?></div>
      <div class="stat-sub">Inadimplência</div>
    </div>
    <div class="stat-card">
      <div class="stat-accent" style="background:var(--purple)"></div>
      <div class="stat-label">ALERTAS ESTOQUE</div>
      <div class="stat-val <?= $stats['estoque_alertas']>0?'text-amber':'' ?>"><?= $stats['estoque_alertas'] ?></div>
      <div class="stat-sub">Itens abaixo do mínimo</div>
    </div>
  </div>

  <div class="dash-grid">

    <!-- OS RECENTES -->
    <div>
      <div class="section-head">
        <span class="section-title">◈ Ordens de Serviço Recentes</span>
        <a href="ordens.php" class="btn btn-ghost btn-sm">Ver todas</a>
      </div>
      <div class="table-wrap"><div class="table-scroll">
        <table>
          <thead><tr>
            <th>NÚMERO</th><th>CLIENTE</th><th>TIPO</th><th>STATUS</th><th>ABERTURA</th>
          </tr></thead>
          <tbody>
          <?php if (empty($ordens)): ?>
            <tr class="empty-row"><td colspan="5">Nenhuma OS encontrada.</td></tr>
          <?php else: foreach ($ordens as $os): ?>
            <tr class="clickable" onclick="location.href='os_detalhe.php?id=<?= $os['id'] ?>'">
              <td class="mono text-cyan"><?= e($os['numero_os']) ?></td>
              <td class="td-nome">
                <b><?= e($os['cliente_nome']) ?></b>
                <small><?= e($os['endereco_cidade']) ?></small>
              </td>
              <td><?= labelTipoOS($os['tipo_os']) ?></td>
              <td><?= badgeStatus($os['status']) ?></td>
              <td class="mono"><?= fmtData($os['data_abertura']) ?></td>
            </tr>
          <?php endforeach; endif; ?>
          </tbody>
        </table>
      </div>
    </div>

    <!-- CLIENTES RECENTES -->
    <div>
      <div class="section-head">
        <span class="section-title">◎ Clientes Recentes</span>
        <a href="clientes.php" class="btn btn-ghost btn-sm">Ver todos</a>
      </div>
      <div class="table-wrap"><div class="table-scroll">
        <table>
          <thead><tr><th>NOME</th><th>CIDADE</th><th>PLANO</th></tr></thead>
          <tbody>
          <?php if (empty($clientes_recentes)): ?>
            <tr class="empty-row"><td colspan="3">Nenhum cliente.</td></tr>
          <?php else: foreach ($clientes_recentes as $c): ?>
            <tr class="clickable" onclick="location.href='cliente_detalhe.php?id=<?= $c['id'] ?>'">
              <td><b><?= e($c['nome']) ?></b></td>
              <td class="mono"><?= e($c['endereco_cidade']) ?></td>
              <td class="mono"><?= e($c['plano']) ?></td>
            </tr>
          <?php endforeach; endif; ?>
          </tbody>
        </table>
      </div>

      <!-- Estoque alertas -->
      <?php
      $alertas = [];
      try {
          $alertas = pdo()->query("SELECT nome, quantidade_estoque, alerta_minimo FROM materiais WHERE quantidade_estoque <= alerta_minimo ORDER BY quantidade_estoque LIMIT 5")->fetchAll();
      } catch (Throwable $e) { $alertas = []; }
      if ($alertas):
      ?>
      ?>
      <div style="margin-top:18px">
        <div class="section-head">
          <span class="section-title text-amber">▣ Alertas de Estoque</span>
          <a href="materiais.php" class="btn btn-ghost btn-sm">Ver estoque</a>
        </div>
        <?php foreach ($alertas as $a): ?>
          <div style="display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--card);border:1px solid rgba(245,158,11,.2);border-radius:7px;margin-bottom:6px;">
            <span style="font-size:12px"><?= e($a['nome']) ?></span>
            <span class="badge <?= $a['quantidade_estoque']==0?'badge-red':'badge-amber' ?>">
              <?= $a['quantidade_estoque'] ?> / <?= $a['alerta_minimo'] ?>
            </span>
          </div>
        <?php endforeach; ?>
      </div>
      <?php endif; ?>
    </div>

  </div><!-- /dash-grid -->
</div><!-- /content -->

<?php require_once __DIR__ . '/includes/footer.php'; ?>
