Ocorrências

A ocorrência é a data de visita de uma atração. Ela manda no status do dia e na capacidade — é o que decide se aquela data pode ou não ser vendida.

O que é e para que serve

Sem ocorrência aberta, uma data simplesmente não existe para o cliente. É aqui que se abre e fecha dia, se define a lotação máxima e se registra o motivo de um fechamento.

Quem pode acessar

  • occurrences.view — ver a listagem e o calendário.
  • occurrences.manage — criar, editar, cancelar e gerar por regra.

Como acessar

Menu lateral → Ocorrências. Dentro do módulo há três telas: a listagem, o calendário (navegação mensal por atração) e as regras de recorrência.

Visão geral da tela

A listagem tem busca, filtros avançados, seletor de colunas e um conjunto rico de listas salvas de sistema: Todas, Hoje, Abertas, Fechadas, Bloqueadas, Esgotadas, Canceladas, Próximos 7 dias, Próximos 30 dias, Alteradas manualmente e Arquivadas.

Listagem de ocorrências do TrackTickets, com os botões Calendário, Regras e Nova no topo, o seletor de lista salva, o botão Filtros e a chave Arquivadas; a tabela mostra as colunas Atração, Data, Status, Capacidade, Venda e Atualizada em, com selos verdes Aberta e vermelhos Esgotada.
Listagem de ocorrências. No topo ficam os três acessos do módulo — Calendário, Regras e Nova — além do seletor de lista salva, dos filtros avançados e da chave Arquivadas. Na tabela, o selo de status é o que mais importa no dia a dia: Aberta vende, Esgotada não. A coluna Capacidade em branco (—) significa sem limite; a coluna Venda é o interruptor “disponível para venda”, independente do status.

Colunas principais

ColunaO que mostra
AtraçãoA qual atração a data pertence.
DataO dia da visita.
StatusAberta, Fechada, Bloqueada, Esgotada ou Cancelada.
Capacidade máximaLimite de pessoas do dia. Em branco = sem limite.
Disponível para vendaInterruptor independente do status.
OrigemManual, gerada por regra ou importada.
Alterada manualmenteMarca que protege a data de ser sobrescrita pela regeração.
Motivo do fechamento / NotasJustificativas internas.

Status possíveis

StatusVende?Uso típico
AbertasimOperação normal.
FechadanãoDia sem operação.
BloqueadanãoData reservada para evento particular.
EsgotadanãoDefinida automaticamente quando a capacidade acaba.
CanceladanãoData cancelada; bloqueada se houver venda futura.

Regras de recorrência

Em vez de criar data por data, defina uma regra: atração, período (data inicial e final), dias da semana, status padrão e capacidade padrão. Ao aplicar, o sistema gera as ocorrências do período.

O que acontece ao aplicar uma regra

Situação da dataAçãoResultado
Sem ocorrência ativaCriaCriada
Ocorrência desta regra, não alterada manualmenteAtualiza status, capacidade e disponibilidadeAtualizada
Ocorrência marcada como alterada manualmentePreservaIgnorada (manual)
Ocorrência de outra regra ou criada manualmentePreservaIgnorada (de terceiro)
Data que saiu do período/dias da regra, sem alteração manualArquivaRemovida
Data que saiu do período, mas foi alterada manualmentePreservaTravada
Prévia antes de aplicar

Existe um modo de simulação que apenas conta o que aconteceria (criadas, atualizadas, ignoradas, removidas, travadas), sem gravar nada. Use sempre antes de aplicar em um período grande.

Excluir uma regra

Ao excluir, a regra é arquivada. Opcionalmente é possível remover também as ocorrências futuras que não tenham nenhum voucher e que não tenham sido alteradas manualmente. O sistema informa antes quantas datas se enquadram.

Regras de negócio

  • Uma ocorrência ativa por atração e data. Não existem duas datas iguais concorrendo.
  • A capacidade se autogerencia. O sistema alterna entre Aberta e Esgotada conforme as vendas.
  • Não é possível reduzir a capacidade abaixo do já vendido (erro capacity_below_sold).
  • Não é possível criar ocorrência manual com data no passado. Regras e importações podem preencher retroativamente.
  • Cancelar ou arquivar com venda futura é bloqueado.
  • “Alterada manualmente” é soberana. Assim que alguém edita status, capacidade, disponibilidade, motivo ou notas de uma data gerada por regra, a regeração nunca mais a sobrescreve.
  • Regras de recorrência não podem se sobrepor: duas regras ativas da mesma atração com períodos e dias da semana que se cruzam são recusadas (rule_overlap).
  • A atração precisa estar com gera ocorrências ligada.
Por que cancelar e excluir têm travas diferentes

O bloqueio de cancelar uma data considera vouchers ativos e pendentes, mas não os já utilizados — quem já visitou não precisa mais ser protegido. Já a remoção de datas ao excluir uma regra considera qualquer vínculo, inclusive os usados, porque ali se está removendo a linha da ocorrência. A assimetria é intencional.

Passo a passo: abrir um período de temporada

  1. Confirme a atração e verifique se ela está com gera ocorrências ligada.
  2. Vá em Ocorrências → Regras e crie uma regra nova.
  3. Defina atração, nome, data inicial e final. Todos são obrigatórios.
  4. Marque os dias da semana que abrem (por exemplo, sexta a domingo).
  5. Informe status e capacidade padrão das datas geradas.
  6. Rode a prévia e confira os números antes de confirmar.
  7. Aplique. As datas passam a existir e a loja começa a exibi-las.
  8. Ajuste exceções manualmente (um feriado fechado, uma data com capacidade maior). Elas ficam protegidas de regerações futuras.

Dependências com outros módulos

  • Atrações — a flag “gera ocorrências” é o portão de criação.
  • Passaportes — passaportes do tipo pacote vinculam ocorrências específicas.
  • Regras de preço — o tipo “ocorrência específica” aponta para uma data.
  • Loja e PDV — a data só aparece se estiver aberta, disponível para venda e com capacidade.
  • Check-in — o voucher de acesso só vale no dia da ocorrência.

Erros e dúvidas comuns

SituaçãoMotivoSolução
“Já existe uma ocorrência ativa para esta atração nesta data.”Duplicidade de dataEditar a existente em vez de criar outra
capacity_below_soldCapacidade menor que o vendidoCancelar/remarcar vendas ou manter a capacidade
rule_overlapRegras concorrentesAjustar período ou dias da semana de uma das regras
attraction_no_occurrenceFlag da atração desligadaLigar “gera ocorrências” na atração
A regeração não atualizou uma dataEla está marcada como alterada manualmenteEditar a data diretamente, se quiser mudá-la
A data está aberta mas não aparece na loja“Disponível para venda” desligada ou capacidade zeradaLigar a disponibilidade ou aumentar a capacidade

Boas práticas

  • Use regras para o padrão e edição manual só para exceções.
  • Sempre rode a prévia antes de aplicar uma regra em um período longo.
  • Preencha o motivo do fechamento: ele explica ao time por que aquele dia não vende.
  • Evite deixar a capacidade em branco em atrações com limite físico real.

Páginas relacionadas