osdm_sys/models/place_position.rs
1/*
2 * UIC 90918-10 - OSDM
3 *
4 * Specifications for the OSDM API standard. The OSDM specification supports two modes of operation: Retailer Mode and Distributor Mode. The API works identically in both modes, except that in distributor mode the API also returns fare information. The following resources are key to get started: - [Processes](https://osdm.io/spec/processes/) - [Models](https://osdm.io/spec/models/) - [Getting started](https://osdm.io/spec/getting-started/)
5 *
6 * The version of the OpenAPI document: 3.7.0
7 * Contact: osdm@uic.org
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// PlacePosition : description of a place
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct PlacePosition {
17 /// place number as indicated at the place in the coach
18 #[serde(rename = "number")]
19 pub number: String,
20 #[serde(rename = "status")]
21 pub status: models::AvailabilityStatus,
22 /// references to the reservations for which this place can be selected. The reservation ids must be part of the list of reservation ids for which the consumer has requested the available places and the consumer must accept a list by setting singleSelectionMapsRequired to false
23 #[serde(rename = "reservationRefs", skip_serializing_if = "Option::is_none")]
24 pub reservation_refs: Option<Vec<String>>,
25 #[serde(rename = "placeProperties", skip_serializing_if = "Option::is_none")]
26 pub place_properties: Option<Vec<String>>,
27 #[serde(rename = "selectionFee", skip_serializing_if = "Option::is_none")]
28 pub selection_fee: Option<Box<models::SelectionFee>>,
29}
30
31impl PlacePosition {
32 /// description of a place
33 pub fn new(number: String, status: models::AvailabilityStatus) -> PlacePosition {
34 PlacePosition {
35 number,
36 status,
37 reservation_refs: None,
38 place_properties: None,
39 selection_fee: None,
40 }
41 }
42}
43