Skip to main content

Campos

CampoTipoDescrição
seatIdUUIDIdentificador único
vehicleIdUUIDReferência ao veículo
seatTypeIdUUIDReferência ao tipo de assento
labelStringRótulo do assento (ex.: “01”, “02A”)
floorFloorLevelAndar do veículo onde o assento está localizado
rowIntLinha no mapa de assentos
columnStringColuna no mapa de assentos
sideSeatSideLado do veículo
statusSeatStatusStatus do assento
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

Relacionamentos

Regras de Negócio

  • A unicidade dos label por andar é responsabilidade do conteúdo do catálogo enviado no Vehicle Setup.
  • A posição do assento é definida pela combinação de floor + row + column + side.
  • Assentos com status UNAVAILABLE não contam na capacidade de venda nem aparecem como disponíveis no mapa de assentos. Quando status é omitido no conteúdo aninhado, o padrão é AVAILABLE.
  • Seat é mantido junto com o veículo, dentro do conteúdo hierárquico de Vehicle Setup.
  • A atualização do veículo substitui o catálogo enviado. Referências históricas em Ticket e TripSeatSegment são preservadas.

Enums

SeatStatus

ValorDescrição
AVAILABLEAssento disponível
UNAVAILABLEAssento não disponível

FloorLevel

ValorDescrição
FIRSTPrimeiro andar
SECONDSegundo andar

SeatSide

ValorDescrição
LEFTLado esquerdo do veículo
RIGHTLado direito do veículo

Example

{
  "seatId": "0197a80a-bc30-70c3-954f-657c74277162",
  "vehicleId": "0197a809-3eb8-7eb8-9c4f-8a6c2e7e5b1a",
  "seatTypeId": "0197a80a-56f4-71cb-93a6-6e69d1506ef7",
  "label": "01A",
  "floor": "FIRST",
  "row": 1,
  "column": "A",
  "side": "LEFT",
  "status": "AVAILABLE",
  "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "createdAt": "2026-07-03T14:25:30.000Z",
  "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "updatedAt": "2026-07-03T14:25:30.000Z",
  "deletedBy": null,
  "deletedAt": null
}