Skip to main content
O PromotionalLowDemandTimeRule representa a regra de validação para uma promoção do tipo LOW_DEMAND_TIME. Ela define janela de dia/horário, rota opcional e limite de ocupação para aplicar o desconto.

Campos

CampoTipoDescrição
promotionalLowDemandTimeRuleIdUUIDIdentificador único
promotionalIdUUIDPromoção dona da regra
organizationIdUUIDOrganização da Company responsável pela promoção
companyIdUUIDCompany dona da promoção
routeIdUUID?Rota exigida, quando a regra é restrita a uma rota
weekdaysInt[]Dias da semana aceitos, de 0 a 6
startTimeStringHorário inicial aceito no formato HH:mm
endTimeStringHorário final aceito no formato HH:mm
maxOccupancyRateBpsInt?Ocupação máxima permitida em basis points
applyToPromotionalLowDemandTimeApplyTargetNível em que o desconto é aplicado
createdByUUID?Usuário que criou o registro, quando aplicável
createdAtDateTimeData de criação
updatedByUUID?Usuário que fez a última atualização, quando aplicável
updatedAtDateTimeData da última atualização
deletedByUUID?Usuário que removeu o registro, quando aplicável
deletedAtDateTime?Data de remoção lógica

Relacionamentos

  • Relaciona-se com Promotional por promotionalId.
  • Relaciona-se com Company por companyId.
  • Relaciona-se com Route por routeId, quando preenchido.

Regras de Negócio

  • Deve existir apenas para Promotional com type = LOW_DEMAND_TIME.
  • Cada Promotional LOW_DEMAND_TIME deve ter exatamente uma PromotionalLowDemandTimeRule ativa.
  • Quando routeId estiver preenchido, a Trip do ticket deve pertencer à Route informada.
  • weekdays valida o dia da semana da partida da Trip.
  • startTime e endTime validam o horário de partida da Trip.
  • maxOccupancyRateBps, quando preenchido, valida a ocupação da Trip antes da aplicação do desconto.
  • applyTo = TICKET aplica o desconto somente nos tickets elegíveis.
  • applyTo = ORDER aplica o desconto no Order quando todos os critérios forem atendidos.
  • O front pode usar a janela de horário e rota para exibir a promoção em buscas elegíveis.
  • createdBy, updatedBy e deletedBy seguem o padrão de auditoria do DEVMOB e registram o usuário responsável pela mutação, quando aplicável.

Enums

PromotionalLowDemandTimeApplyTarget

ValorDescrição
ORDERAplica o desconto no pedido
TICKETAplica o desconto nos tickets elegíveis

Example

{
  "promotionalLowDemandTimeRuleId": "0197f7c5-1fae-7212-b9c9-a86f07afe78c",
  "promotionalId": "0197f7c0-55de-7b18-9073-c7d7c8c9a441",
  "organizationId": "0197a801-1690-7590-b3cf-19599b9be3e4",
  "companyId": "0197a801-6a42-79aa-9e56-d3c85148c0fa",
  "routeId": "0197a80c-4204-7b77-9005-48cc23677587",
  "weekdays": [1, 2, 3, 4],
  "startTime": "10:00",
  "endTime": "15:00",
  "maxOccupancyRateBps": 6000,
  "applyTo": "TICKET",
  "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "createdAt": "2026-07-04T15:08:00.000Z",
  "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "updatedAt": "2026-07-04T15:08:00.000Z",
  "deletedBy": null,
  "deletedAt": null
}