use crate::manager::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum BenefitRelatedEntityIdentification {
#[serde(rename = "24")]
Variant24,
#[serde(rename = "34")]
Variant34,
#[serde(rename = "46")]
Variant46,
#[serde(rename = "FA")]
Fa,
#[serde(rename = "FI")]
Fi,
#[serde(rename = "II")]
Ii,
#[serde(rename = "MI")]
Mi,
#[serde(rename = "NI")]
Ni,
#[serde(rename = "PI")]
Pi,
#[serde(rename = "PP")]
Pp,
#[serde(rename = "SV")]
Sv,
#[serde(rename = "XV")]
Xv,
#[serde(rename = "XX")]
Xx,
#[serde(untagged)]
UnknownValue(String),
}
impl std::fmt::Display for BenefitRelatedEntityIdentification {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Variant24 => write!(f, "24"),
Self::Variant34 => write!(f, "34"),
Self::Variant46 => write!(f, "46"),
Self::Fa => write!(f, "FA"),
Self::Fi => write!(f, "FI"),
Self::Ii => write!(f, "II"),
Self::Mi => write!(f, "MI"),
Self::Ni => write!(f, "NI"),
Self::Pi => write!(f, "PI"),
Self::Pp => write!(f, "PP"),
Self::Sv => write!(f, "SV"),
Self::Xv => write!(f, "XV"),
Self::Xx => write!(f, "XX"),
Self::UnknownValue(s) => write!(f, "{s}"),
}
}
}
impl Default for BenefitRelatedEntityIdentification {
fn default() -> BenefitRelatedEntityIdentification {
Self::Variant24
}
}