autogen-stedi 0.3.2

Auto-generated, strongly-typed Rust client for the Stedi APIs
Documentation
/*
 * Stedi Healthcare
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 2024-04-01
 * Contact: healthcare@stedi.com
 * Generated by: https://openapi-generator.tech
 */

use crate::healthcare::models;
use serde::{Deserialize, Serialize};

/// RequestSubscriberReferenceIdentificationQualifier : Use this for providers that are not requesting the eligibility check. This is the type of `providerIdentifier` you are providing. - Set to `HPI` when the National Provider ID is mandated for use. - Set to `PXC` if you're identifying a type of specialty associated with services provided to the subscriber.     Otherwise, you can set to the following: `9K` - Servicer, `D3` - National Council for Prescription Drug Programs Pharmacy Number, `EI` - Employer's Identification Number, `HPI` - Centers for Medicare and Medicaid Services National Provider Identifier, `PXC` - Health Care Provider Taxonomy Code, `SY - Social Security Number, `TJ` - Federal Taxpayer's Identification Number
/// Use this for providers that are not requesting the eligibility check. This is the type of `providerIdentifier` you are providing. - Set to `HPI` when the National Provider ID is mandated for use. - Set to `PXC` if you're identifying a type of specialty associated with services provided to the subscriber.     Otherwise, you can set to the following: `9K` - Servicer, `D3` - National Council for Prescription Drug Programs Pharmacy Number, `EI` - Employer's Identification Number, `HPI` - Centers for Medicare and Medicaid Services National Provider Identifier, `PXC` - Health Care Provider Taxonomy Code, `SY - Social Security Number, `TJ` - Federal Taxpayer's Identification Number
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum RequestSubscriberReferenceIdentificationQualifier {
    #[serde(rename = "9K")]
    Variant9K,
    #[serde(rename = "D3")]
    D3,
    #[serde(rename = "EI")]
    Ei,
    #[serde(rename = "HPI")]
    Hpi,
    #[serde(rename = "PXC")]
    Pxc,
    #[serde(rename = "SY")]
    Sy,
    #[serde(rename = "TJ")]
    Tj,
    /// Any value not defined in the spec (payers may return non-compliant values).
    #[serde(untagged)]
    UnknownValue(String),

}

impl std::fmt::Display for RequestSubscriberReferenceIdentificationQualifier {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::Variant9K => write!(f, "9K"),
            Self::D3 => write!(f, "D3"),
            Self::Ei => write!(f, "EI"),
            Self::Hpi => write!(f, "HPI"),
            Self::Pxc => write!(f, "PXC"),
            Self::Sy => write!(f, "SY"),
            Self::Tj => write!(f, "TJ"),
            Self::UnknownValue(s) => write!(f, "{s}"),
        }
    }
}

impl Default for RequestSubscriberReferenceIdentificationQualifier {
    fn default() -> RequestSubscriberReferenceIdentificationQualifier {
        Self::Variant9K
    }
}