autogen-stedi 0.3.2

Auto-generated, strongly-typed Rust client for the Stedi APIs
Documentation
/*
 * Stedi Enrollment
 *
 * The Stedi Enrollment Service manages provider enrollments with healthcare payers. It tracks enrollment status, provider details, and supports batch enrollment processing to ensure providers have the necessary credentials before processing healthcare transactions. 
 *
 * The version of the OpenAPI document: 2024-09-01
 * Contact: healthcare@stedi.com
 * Generated by: https://openapi-generator.tech
 */

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

/// EnrollmentStatus : The status of the enrollment. You can submit enrollments with either `DRAFT` or `STEDI_ACTION_REQUIRED` status - the default is `DRAFT` if not included. Set this to `STEDI_ACTION_REQUIRED` when you're ready for Stedi to begin processing the enrollment. Once an enrollment is `STEDI_ACTION_REQUIRED`, only Stedi can set or update its status.
/// The status of the enrollment. You can submit enrollments with either `DRAFT` or `STEDI_ACTION_REQUIRED` status - the default is `DRAFT` if not included. Set this to `STEDI_ACTION_REQUIRED` when you're ready for Stedi to begin processing the enrollment. Once an enrollment is `STEDI_ACTION_REQUIRED`, only Stedi can set or update its status.
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum EnrollmentStatus {
    #[serde(rename = "DRAFT")]
    Draft,
    #[serde(rename = "SUBMITTED")]
    Submitted,
    #[serde(rename = "PROVISIONING")]
    Provisioning,
    #[serde(rename = "LIVE")]
    Live,
    #[serde(rename = "REJECTED")]
    Rejected,
    #[serde(rename = "CANCELED")]
    Canceled,
    #[serde(rename = "STEDI_ACTION_REQUIRED")]
    StediActionRequired,
    #[serde(rename = "PROVIDER_ACTION_REQUIRED")]
    ProviderActionRequired,
    /// Any value not defined in the spec (payers may return non-compliant values).
    #[serde(untagged)]
    UnknownValue(String),

}

impl std::fmt::Display for EnrollmentStatus {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::Draft => write!(f, "DRAFT"),
            Self::Submitted => write!(f, "SUBMITTED"),
            Self::Provisioning => write!(f, "PROVISIONING"),
            Self::Live => write!(f, "LIVE"),
            Self::Rejected => write!(f, "REJECTED"),
            Self::Canceled => write!(f, "CANCELED"),
            Self::StediActionRequired => write!(f, "STEDI_ACTION_REQUIRED"),
            Self::ProviderActionRequired => write!(f, "PROVIDER_ACTION_REQUIRED"),
            Self::UnknownValue(s) => write!(f, "{s}"),
        }
    }
}

impl Default for EnrollmentStatus {
    fn default() -> EnrollmentStatus {
        Self::Draft
    }
}