open_payments_iso20022_reda/
reda_009_001_01.rsuse serde::{Deserialize, Serialize};
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct ExternalFinancialInstrumentIdentificationType1Code {
#[serde(rename = "$value")]
pub external_financial_instrument_identification_type1_code: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct ISIN2021Identifier {
#[serde(rename = "$value")]
pub isin2021_identifier: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct ISODate {
#[serde(rename = "$value")]
pub iso_date: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct ISODateTime {
#[serde(rename = "$value")]
pub iso_date_time: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct IdentificationSource3Choice {
#[serde(rename = "Cd", skip_serializing_if = "Option::is_none")]
pub cd: Option<ExternalFinancialInstrumentIdentificationType1Code>,
#[serde(rename = "Prtry", skip_serializing_if = "Option::is_none")]
pub prtry: Option<Max35Text>,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct Max140Text {
#[serde(rename = "$value")]
pub max140_text: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct Max16Text {
#[serde(rename = "$value")]
pub max16_text: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct Max350Text {
#[serde(rename = "$value")]
pub max350_text: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct Max35Text {
#[serde(rename = "$value")]
pub max35_text: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct Max5NumericText {
#[serde(rename = "$value")]
pub max5_numeric_text: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct MessageHeader1 {
#[serde(rename = "MsgId")]
pub msg_id: Max35Text,
#[serde(rename = "CreDtTm", skip_serializing_if = "Option::is_none")]
pub cre_dt_tm: Option<String>,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct OtherIdentification1 {
#[serde(rename = "Id")]
pub id: Max35Text,
#[serde(rename = "Sfx", skip_serializing_if = "Option::is_none")]
pub sfx: Option<Max16Text>,
#[serde(rename = "Tp")]
pub tp: IdentificationSource3Choice,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct Pagination1 {
#[serde(rename = "PgNb")]
pub pg_nb: Max5NumericText,
#[serde(rename = "LastPgInd")]
pub last_pg_ind: bool,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct SecuritiesReferenceDataChange3 {
#[serde(rename = "FinInstrmId")]
pub fin_instrm_id: SecurityIdentification39,
#[serde(rename = "FldNm")]
pub fld_nm: Max35Text,
#[serde(rename = "OdFldVal")]
pub od_fld_val: Max350Text,
#[serde(rename = "NewFldVal")]
pub new_fld_val: Max350Text,
#[serde(rename = "OprTmStmp")]
pub opr_tm_stmp: String,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct SecurityActivityAdviceV01 {
#[serde(rename = "MsgHdr", skip_serializing_if = "Option::is_none")]
pub msg_hdr: Option<MessageHeader1>,
#[serde(rename = "Pgntn")]
pub pgntn: Pagination1,
#[serde(rename = "SctyActvty")]
pub scty_actvty: SecurityStatement3,
#[serde(rename = "SplmtryData", skip_serializing_if = "Option::is_none")]
pub splmtry_data: Option<Vec<SupplementaryData1>>,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct SecurityIdentification39 {
#[serde(rename = "ISIN", skip_serializing_if = "Option::is_none")]
pub isin: Option<ISIN2021Identifier>,
#[serde(rename = "OthrId", skip_serializing_if = "Option::is_none")]
pub othr_id: Option<Vec<OtherIdentification1>>,
#[serde(rename = "Desc", skip_serializing_if = "Option::is_none")]
pub desc: Option<Max140Text>,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct SecurityStatement3 {
#[serde(rename = "SysDt")]
pub sys_dt: String,
#[serde(rename = "Chng", skip_serializing_if = "Option::is_none")]
pub chng: Option<Vec<SecuritiesReferenceDataChange3>>,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct SupplementaryData1 {
#[serde(rename = "PlcAndNm", skip_serializing_if = "Option::is_none")]
pub plc_and_nm: Option<Max350Text>,
#[serde(rename = "Envlp")]
pub envlp: SupplementaryDataEnvelope1,
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
pub struct SupplementaryDataEnvelope1 {
}
#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
#[serde(transparent)]
pub struct YesNoIndicator {
#[serde(rename = "$value")]
pub yes_no_indicator: bool,
}