/*
* UIC 90918-10 - OSDM
*
* 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/)
*
* The version of the OpenAPI document: 3.7.0
* Contact: osdm@uic.org
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
/// AccountingRef : reference to accounting data in case the accounting is not provided by the API provider
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
#[cfg_attr(feature = "utoipa", derive(utoipa::ToSchema))]
pub struct AccountingRef {
/// Identifies a company. For rail, a RICS company code or compatible ERA company code are used. E.g.: 'urn:uic:rics:1185:000011'
#[serde(rename = "accountingCompany")]
pub accounting_company: String,
/// ids of accounting data used to link the booking part with accounting data in the billing send by the accounting company
#[serde(rename = "accountingIds", skip_serializing_if = "Option::is_none")]
pub accounting_ids: Option<Vec<String>>,
}
impl AccountingRef {
/// reference to accounting data in case the accounting is not provided by the API provider
pub fn new(accounting_company: String) -> AccountingRef {
AccountingRef {
accounting_company,
accounting_ids: None,
}
}
}