Skip to content

Terminal Filial

Visão Geral

Interface principal do terminal de filial para atendimento. O terminal adapta seu comportamento de acordo com o serviceMode da filial (mesa, balcao, auto_atendimento).

Localização

frontend-react/src/views/pdv/PdvTerminalView.tsx

Sub-componentes de Modo

ComponenteModoLocalização
MesaModePanelmesafrontend-react/src/views/pdv/modes/MesaModePanel.tsx
BalcaoModePanelbalcao / auto_atendimentofrontend-react/src/views/pdv/modes/BalcaoModePanel.tsx

Modo Mesa (MesaModePanel)

Voltado para atendimento no local com abertura de comanda por mesa.

Fluxo de nova comanda

  1. Atendente seleciona a mesa no grid
  2. O sistema verifica automaticamente se há pedido aberto (GET /orders/open-tab/:tableId)
  3. Se há comanda aberta: exibe banner com número do pedido e total atual
    • Botão "Adicionar à Comanda"handleAddToTab() — envia PATCH /orders/:id/add-items
    • Botão "Novo Pedido"handleCreateMesaOrder() — cria pedido separado
  4. Se não há comanda: cria novo pedido associado à mesa

Add-to-Tab

Quando o cliente pede mais itens:

  • O painel detecta a comanda aberta automaticamente
  • Os itens do carrinho atual são mesclados na comanda existente (incrementa quantidade se o item já existe, adiciona se é novo)
  • O total é recalculado
  • O WebSocket emite atualização para a cozinha

Fechar Mesa

Para fechar a conta e registrar o pagamento, use a tela Fechar Mesa. Consulte Fechar Mesa.


Modo Balcão (BalcaoModePanel)

Voltado para atendimento rápido sem associação de mesa.

Fluxo

  1. Atendente (opcionalmente) informa nome e telefone do cliente
  2. Pode opcionalmente associar a uma mesa
  3. Adiciona itens ao carrinho
  4. Finaliza — o pedido é criado e vai para a cozinha

As informações de cliente são opcionais no modo balcão.


Layout

┌─────────────────┬─────────────────┐
│                 │                 │
│  Cardápio      │  Carrinho       │
│  (Grid de      │  - Itens        │
│   itens)       │  - Quantidade   │
│                 │  - Total        │
│                 │  - Finalizar    │
└─────────────────┴─────────────────┘

Modo Offline

O terminal suporta operação sem internet. Consulte Modo Offline (PWA) para detalhes completos.

Indicadores visuais

EstadoBanner exibido
Offline⚠ Modo offline — X pedidos pendentes
Reconectando / sincronizando↑ Sincronizando X pedido(s)...
Online (normal)Nenhum banner

Comportamento

  • Cardápio, categorias e configurações do tenant são servidos do cache (disponíveis offline)
  • Pedidos feitos offline entram na fila IndexedDB (offlineQueue)
  • Ao reconectar, a fila é processada automaticamente via useNetworkStatus

PIX QR Code

Quando o método de pagamento selecionado for PIX e o tenant tiver pixKey configurada, o terminal exibe o QR code após confirmar o pagamento. Consulte Modal de Pagamento.

Componentes Relacionados

Store Relacionado

Usa pdvStore para gerenciar estado.

Relacionados

Lançado sob a licença MIT.