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};

/// ClaimStatusCode : Indicates the status of the claim after adjudication by the payer. These codes determine whether the claim was processed as primary, secondary, tertiary, denied, forwarded to other payers, or represents special processing situations like reversals or predeterminations.
/// Indicates the status of the claim after adjudication by the payer. These codes determine whether the claim was processed as primary, secondary, tertiary, denied, forwarded to other payers, or represents special processing situations like reversals or predeterminations.
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ClaimStatusCode {
    #[serde(rename = "1")]
    Variant1,
    #[serde(rename = "2")]
    Variant2,
    #[serde(rename = "3")]
    Variant3,
    #[serde(rename = "4")]
    Variant4,
    #[serde(rename = "19")]
    Variant19,
    #[serde(rename = "20")]
    Variant20,
    #[serde(rename = "21")]
    Variant21,
    #[serde(rename = "22")]
    Variant22,
    #[serde(rename = "23")]
    Variant23,
    #[serde(rename = "25")]
    Variant25,
    /// Any value not defined in the spec (payers may return non-compliant values).
    #[serde(untagged)]
    UnknownValue(String),

}

impl std::fmt::Display for ClaimStatusCode {
    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::Variant19 => write!(f, "19"),
            Self::Variant20 => write!(f, "20"),
            Self::Variant21 => write!(f, "21"),
            Self::Variant22 => write!(f, "22"),
            Self::Variant23 => write!(f, "23"),
            Self::Variant25 => write!(f, "25"),
            Self::UnknownValue(s) => write!(f, "{s}"),
        }
    }
}

impl Default for ClaimStatusCode {
    fn default() -> ClaimStatusCode {
        Self::Variant1
    }
}