use crate::healthcare::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum PayerEntityIdentifier {
#[serde(rename = "Third-Party Administrator")]
ThirdPartyAdministrator,
#[serde(rename = "Employer")]
Employer,
#[serde(rename = "Gateway Provider")]
GatewayProvider,
#[serde(rename = "Plan Sponsor")]
PlanSponsor,
#[serde(rename = "Payer")]
Payer,
#[serde(untagged)]
UnknownValue(String),
}
impl std::fmt::Display for PayerEntityIdentifier {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::ThirdPartyAdministrator => write!(f, "Third-Party Administrator"),
Self::Employer => write!(f, "Employer"),
Self::GatewayProvider => write!(f, "Gateway Provider"),
Self::PlanSponsor => write!(f, "Plan Sponsor"),
Self::Payer => write!(f, "Payer"),
Self::UnknownValue(s) => write!(f, "{s}"),
}
}
}
impl Default for PayerEntityIdentifier {
fn default() -> PayerEntityIdentifier {
Self::ThirdPartyAdministrator
}
}