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

/// ClaimDateInformation : You must provide at least one date related to the claim. For example, the date on which the patient was admitted to the hospital.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ClaimDateInformation {
    /// The date of the accident related to this claim. Required when `relatedCausesCode` is set to `AA` - Auto Accident or `OA` - Other Accident. Also required when `relatedCausesCode` is set to `EM` - Employment and this claim is the result of an accident.
    #[serde(rename = "accidentDate", skip_serializing_if = "Option::is_none")]
    pub accident_date: Option<String>,
    /// The date the patient first experienced acute symptoms for a chronic condition. Required when the `patientConditionCode` = `A` (Acute Condition) or `M` (Acute Manifestation of a Chronic Condition), the claim involves spinal manipulation, and the payer is Medicare.
    #[serde(rename = "acuteManifestationDate", skip_serializing_if = "Option::is_none")]
    pub acute_manifestation_date: Option<String>,
    /// The date the patient was admitted to the hospital. Required on ambulance claims when the patient was known to be admitted to the hospital. Also required on inpatient claims.
    #[serde(rename = "admissionDate", skip_serializing_if = "Option::is_none")]
    pub admission_date: Option<String>,
    /// The date the provider filing this claim assumed care from another provider during post-operative care. Required when providers share post-operative care (global surgery claims).
    #[serde(rename = "assumedAndRelinquishedCareBeginDate", skip_serializing_if = "Option::is_none")]
    pub assumed_and_relinquished_care_begin_date: Option<String>,
    /// The date the provider filing this claim relinquished post-operative care to another provider. Required when providers share post-operative care (global surgery claims).
    #[serde(rename = "assumedAndRelinquishedCareEndDate", skip_serializing_if = "Option::is_none")]
    pub assumed_and_relinquished_care_end_date: Option<String>,
    /// The date the provider has authorized the patient to return to work. Required on claims where this information is necessary for adjudication, such as workers compensation claims.
    #[serde(rename = "authorizedReturnToWorkDate", skip_serializing_if = "Option::is_none")]
    pub authorized_return_to_work_date: Option<String>,
    /// The start date of the patient's disability period. You can include this date without providing a `disabilityEndDate` if the patient is currently disabled and the end date is unknown. Used for claims involving disability where the provider judges that the patient was or will be unable to perform the duties normally associated with their work.
    #[serde(rename = "disabilityBeginDate", skip_serializing_if = "Option::is_none")]
    pub disability_begin_date: Option<String>,
    /// The end date of the patient's disability period. You can include this date without including a `disabilityStartDate` if the patient is no longer disabled and the start date is unknown. Used for claims involving disability where the provider judges that the patient was or will be unable to perform the duties normally associated with their work.
    #[serde(rename = "disabilityEndDate", skip_serializing_if = "Option::is_none")]
    pub disability_end_date: Option<String>,
    /// The date the patient was discharged from the hospital. Required for inpatient claims when the patient was discharged from the facility and the discharge date is known
    #[serde(rename = "dischargeDate", skip_serializing_if = "Option::is_none")]
    pub discharge_date: Option<String>,
    /// Date the patient first consulted the provider for their condition by any means. This is not necessarily the same as the initial treatment date. Required for Property and Casualty claims when state mandated.
    #[serde(rename = "firstContactDate", skip_serializing_if = "Option::is_none")]
    pub first_contact_date: Option<String>,
    /// The date of the patient's hearing and vision prescription. Required on claims where a prescription has been written for hearing devices or vision frames and lenses and it is being billed on this claim.
    #[serde(rename = "hearingAndVisionPrescriptionDate", skip_serializing_if = "Option::is_none")]
    pub hearing_and_vision_prescription_date: Option<String>,
    /// The date the patient first received treatment for the current illness or condition. Required when the Initial Treatment Date is known to impact adjudication for claims involving spinal manipulation, physical therapy, occupational therapy, speech language pathology, dialysis, optical refractions, or pregnancy.
    #[serde(rename = "initialTreatmentDate", skip_serializing_if = "Option::is_none")]
    pub initial_treatment_date: Option<String>,
    /// The date of the patient's last menstrual period. Required when the provider believes the services on this claim are related to the patient's pregnancy.
    #[serde(rename = "lastMenstrualPeriodDate", skip_serializing_if = "Option::is_none")]
    pub last_menstrual_period_date: Option<String>,
    /// The date that the patient was seen by the attending or supervising physician for the qualifying medical condition related to the services performed. Required when claims involve services for routine foot care and this date is known to impact the payer's adjudication process.
    #[serde(rename = "lastSeenDate", skip_serializing_if = "Option::is_none")]
    pub last_seen_date: Option<String>,
    /// The date the patient last worked, related to disability claims. Required on claims where this information is necessary for adjudication, such as workers compensation claims.
    #[serde(rename = "lastWorkedDate", skip_serializing_if = "Option::is_none")]
    pub last_worked_date: Option<String>,
    /// The date of the patient's last x-ray. Required when claim involves spinal manipulation and an x-ray was taken.
    #[serde(rename = "lastXRayDate", skip_serializing_if = "Option::is_none")]
    pub last_x_ray_date: Option<String>,
    /// The date the repricing entity received the initial claim. Required when a repricer is passing the claim onto the payer.
    #[serde(rename = "repricerReceivedDate", skip_serializing_if = "Option::is_none")]
    pub repricer_received_date: Option<String>,
    /// The date the patient began experiencing acute symptoms for the current illness or condition. Required for the initial medical service or visit performed in response to a medical emergency when the date is available and is different than the date of service.
    #[serde(rename = "symptomDate", skip_serializing_if = "Option::is_none")]
    pub symptom_date: Option<String>,
}

impl ClaimDateInformation {
    /// You must provide at least one date related to the claim. For example, the date on which the patient was admitted to the hospital.
    pub fn new() -> ClaimDateInformation {
        ClaimDateInformation {
            accident_date: None,
            acute_manifestation_date: None,
            admission_date: None,
            assumed_and_relinquished_care_begin_date: None,
            assumed_and_relinquished_care_end_date: None,
            authorized_return_to_work_date: None,
            disability_begin_date: None,
            disability_end_date: None,
            discharge_date: None,
            first_contact_date: None,
            hearing_and_vision_prescription_date: None,
            initial_treatment_date: None,
            last_menstrual_period_date: None,
            last_seen_date: None,
            last_worked_date: None,
            last_x_ray_date: None,
            repricer_received_date: None,
            symptom_date: None,
        }
    }
}