Skip to main content
O PromotionalRoundTripRule representa a regra de validação para uma promoção do tipo ROUND_TRIP. Ela define como o sistema reconhece ida e volta e onde o desconto deve ser aplicado.

Campos

CampoTipoDescrição
promotionalRoundTripRuleIdUUIDIdentificador único
promotionalIdUUIDPromoção dona da regra
organizationIdUUIDOrganização da Company responsável pela promoção
companyIdUUIDCompany dona da promoção
outboundRouteIdUUID?Rota de ida exigida, quando a regra é restrita a uma rota
returnRouteIdUUID?Rota de volta exigida, quando a regra é restrita a uma rota
sameRouteBooleanIndica se ida e volta devem pertencer ao mesmo par de rota
minHoursBetweenTripsInt?Intervalo mínimo entre ida e volta
maxDaysBetweenTripsInt?Janela máxima entre ida e volta
applyToPromotionalRoundTripApplyTargetOnde 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 outboundRouteId, quando preenchido.
  • Relaciona-se com Route por returnRouteId, quando preenchido.

Regras de Negócio

  • Deve existir apenas para Promotional com type = ROUND_TRIP.
  • Cada Promotional ROUND_TRIP deve ter exatamente uma PromotionalRoundTripRule ativa.
  • Quando outboundRouteId estiver preenchido, a ida deve pertencer à Route informada.
  • Quando returnRouteId estiver preenchido, a volta deve pertencer à Route informada.
  • Quando sameRoute = true, ida e volta devem formar o mesmo par operacional definido pela Company.
  • minHoursBetweenTrips e maxDaysBetweenTrips validam a janela entre a partida da ida e a partida da volta.
  • applyTo = RETURN_TICKET aplica o desconto somente na passagem de volta.
  • applyTo = CHEAPEST_TICKET aplica o desconto na passagem de menor valor.
  • applyTo = ORDER aplica o desconto no Order após validar ida e volta.
  • O front pode usar a regra para sugerir a compra de volta quando o cliente escolhe uma ida elegível.
  • 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

PromotionalRoundTripApplyTarget

ValorDescrição
RETURN_TICKETAplica o desconto na passagem de volta
CHEAPEST_TICKETAplica o desconto na passagem de menor valor
ORDERAplica o desconto no pedido

Example

{
  "promotionalRoundTripRuleId": "0197f7c3-0c3a-7354-a437-496ab4279987",
  "promotionalId": "0197f7c0-55de-7b18-9073-c7d7c8c9a441",
  "organizationId": "0197a801-1690-7590-b3cf-19599b9be3e4",
  "companyId": "0197a801-6a42-79aa-9e56-d3c85148c0fa",
  "outboundRouteId": "0197a80c-4204-7b77-9005-48cc23677587",
  "returnRouteId": "0197a80d-04b3-78fc-a5c5-b31e607df585",
  "sameRoute": false,
  "minHoursBetweenTrips": 2,
  "maxDaysBetweenTrips": 30,
  "applyTo": "RETURN_TICKET",
  "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "createdAt": "2026-07-04T15:06:00.000Z",
  "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "updatedAt": "2026-07-04T15:06:00.000Z",
  "deletedBy": null,
  "deletedAt": null
}