use crate::healthcare::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum DelayReasonCode {
#[serde(rename = "1")]
Variant1,
#[serde(rename = "2")]
Variant2,
#[serde(rename = "3")]
Variant3,
#[serde(rename = "4")]
Variant4,
#[serde(rename = "5")]
Variant5,
#[serde(rename = "6")]
Variant6,
#[serde(rename = "7")]
Variant7,
#[serde(rename = "8")]
Variant8,
#[serde(rename = "9")]
Variant9,
#[serde(rename = "10")]
Variant10,
#[serde(rename = "11")]
Variant11,
#[serde(rename = "15")]
Variant15,
#[serde(untagged)]
UnknownValue(String),
}
impl std::fmt::Display for DelayReasonCode {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Variant1 => write!(f, "1"),
Self::Variant2 => write!(f, "2"),
Self::Variant3 => write!(f, "3"),
Self::Variant4 => write!(f, "4"),
Self::Variant5 => write!(f, "5"),
Self::Variant6 => write!(f, "6"),
Self::Variant7 => write!(f, "7"),
Self::Variant8 => write!(f, "8"),
Self::Variant9 => write!(f, "9"),
Self::Variant10 => write!(f, "10"),
Self::Variant11 => write!(f, "11"),
Self::Variant15 => write!(f, "15"),
Self::UnknownValue(s) => write!(f, "{s}"),
}
}
}
impl Default for DelayReasonCode {
fn default() -> DelayReasonCode {
Self::Variant1
}
}