Pedidos
A aba Pedidos é o dashboard ao vivo para cada pedido da cafeteria feito pelos seus clientes. Ele consulta a nuvem a cada 3 segundos e mostra novas atividades com uma notificação de desktop, um alerta de áudio e um badge de contagem pendente no cabeçalho da aba.
Layout
A página de Pedidos possui duas áreas:
| Área | Finalidade |
|---|---|
| Abas de Status | Filtrar por estado do pedido: todos, feitos, confirmados, em preparação, prontos, servidos. Pedidos cancelados e reembolsados são filtrados por padrão. |
| Lista de Pedidos | Um cartão por pedido, agrupados do mais recente para o mais antigo. Cada cartão mostra o código da mesa, telefone do cliente se fornecido, itens, totais e botões de ação. |
Consulta ao Vivo
O dashboard de Pedidos consulta /v1/cafeteria/admin/orders/poll a cada 3 segundos. Cada novo pedido aciona:
- Uma notificação de desktop com o código da mesa e a contagem de itens.
- Um alerta de áudio nos alto-falantes do servidor se as notificações sonoras estiverem ativadas em Configurações > Cafeteria.
- Um incremento do badge de contagem pendente na aba Pedidos.
- Uma impressão automática do recibo se a impressora estiver configurada com Impressão Automática em Novo Pedido.
O badge permanece visível até que todos os pedidos com status feito ou confirmado avancem para um estado posterior ou sejam descartados. O badge é visível globalmente na seção Cafeteria da barra lateral; não é necessário manter a aba Pedidos aberta para vê-lo.
Ciclo de Vida do Pedido
Cada pedido passa por uma sequência definida de estados.
| Estado | Significado |
|---|---|
| feito | O cliente enviou o pedido. Nenhuma ação do staff ainda. |
| confirmado | O staff reconheceu o pedido. |
| em preparação | A cozinha está preparando o pedido. |
| pronto | O pedido está pronto para serviço ou retirada. |
| servido | O pedido foi entregue ao cliente. |
| cancelado | O pedido foi cancelado pelo staff. Ele é removido das visualizações ao vivo, mas mantido para histórico. |
| reembolsado | Um reembolso pós-pagamento foi emitido. |
A barra de ações em cada cartão de pedido mostra o próximo estado disponível. Avançar é um clique. A interface usa um padrão de atualização otimista: o novo status é exibido imediatamente. Se o servidor rejeitar a alteração, o status reverte e uma notificação de erro aparece.
Status por Item
Alguns pedidos têm múltiplos itens que ficam prontos em tempos diferentes. Por exemplo, um hambúrguer fica pronto antes de uma pizza. O status por item permite que você acompanhe cada linha de forma independente.
Cada item tem seu próprio menu suspenso com cinco opções: feito, em preparação, pronto, servido, cancelado. Cada item também possui três timestamps:
created_até definido quando o pedido chega.ready_até definido na primeira vez que o item entra empronto.served_até definido quando o item entra emservido.
O menu do cliente mostra um badge ao lado de cada linha para que o cliente possa ver quais itens estão prontos ou a caminho.
Cancelando um Pedido
- Abra o cartão do pedido.
- Clique em Cancelar.
- Confirme na caixa de diálogo que aparece.
- O pedido transita para
cancelado. Ele permanece no histórico, mas desaparece da visualização ao vivo padrão.
O cancelamento é uma ação para o pedido completo. Para cancelar uma única linha, altere o status por item dessa linha para cancelado.
Finalização (Fechar Conta)
A finalização fecha todos os pedidos abertos em uma mesa de uma só vez. Use isso quando o cliente estiver saindo e quiser pagar toda a conta.
- Abra a mesa na página Mesas ou no menu de ações do Mapa do Salão.
- Clique em Fechar Conta.
- O modal lista todos os pedidos na mesa que ainda não estão
servidos. - Escolha um método de pagamento. As opções são: Dinheiro, Cartão, Online, Outro.
- Confirme.
O servidor realiza as seguintes ações de forma atômica:
- Todos os pedidos abertos na mesa transitam para
servidocompayment_status=paid. - Um registro de
cafeteria_settlementsé criado com o valor total, método de pagamento e hora de criação. - Um registro de auditoria de pedidos de finalização registra quais pedidos pertencem a esta finalização.
- O código de segurança da mesa é expirado para que o QR se torne inválido.
- A mesa retorna para
livre.
Se você escolheu Online como método de pagamento, o registro de finalização é marcado como pago-online. Nenhuma cobrança Stripe é acionada por esta ação. O pagamento online do lado do cliente é tratado no momento do pedido; a ação de finalização registra o fluxo de caixa para seus registros.
Timer de Abertura
Cada mesa possui um timestamp opened_at definido quando o cliente se senta. As páginas Mapa do Salão e Mesas exibem um timer ao vivo desde esse momento. Isso ajuda o staff a identificar mesas que estão ativas há muito tempo sem fazer pedidos ou mesas que podem estar se aproximando do fim de uma sessão.
O timer é zerado ao Fechar Mesa ou Fechar Conta.
Exibição Dinâmica do Tempo de Preparação
Quando o tempo de preparação dinâmico está ativo para um produto, o cartão do pedido mostra a estimativa ao lado do nome do item. O staff vê a estimativa mesmo quando a opção Mostrar Tempo de Preparação no Menu está desativada para os clientes.
A estimativa é atualizada toda vez que um novo pedido é feito e toda vez que um pedido é concluído. O sistema aprende com o ritmo real da sua cozinha.
Comportamento de Notificação de Novo Pedido
As notificações são acionadas em todo o aplicativo, não por aba. Isso significa que você recebe alertas quando está navegando em outra parte do servidor HandyCafe, por exemplo, no Painel de Administração ou Configurações. O alerta de áudio é ativado ou desativado em Configurações > Cafeteria > Notificação Sonora.
As notificações de desktop exigem que o sistema operacional tenha concedido permissão de notificação ao HandyCafe. Se você não vir uma notificação após um novo pedido, verifique as configurações de notificação do seu sistema operacional.
Dicas
- Use as Abas de Status para dividir a carga de trabalho. Uma tela filtrada para
em preparaçãomostra a fila da cozinha. Outra tela emprontomostra o que precisa ser entregue. - Fechar Conta é a maneira mais rápida de fechar uma mesa. Use Cancelar em pedidos individuais apenas para erros explícitos.
- Treine o staff para avançar o status de forma consistente. O estimador de tempo de preparação dinâmico aprende com esses sinais, então pular estados reduz sua precisão.
- Audite pedidos cancelados e reembolsados periodicamente pelo endpoint de administração para identificar padrões de erro do staff.