use crate::healthcare::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct InstitutionalOtherPayerName {
#[serde(rename = "otherInsuredAdditionalIdentifier", skip_serializing_if = "Option::is_none")]
pub other_insured_additional_identifier: Option<String>,
#[serde(rename = "otherPayerAddress", skip_serializing_if = "Option::is_none")]
pub other_payer_address: Option<Box<models::InstitutionalAddress>>,
#[serde(rename = "otherPayerAdjudicationOrPaymentDate", skip_serializing_if = "Option::is_none")]
pub other_payer_adjudication_or_payment_date: Option<String>,
#[serde(rename = "otherPayerClaimAdjustmentIndicator", skip_serializing_if = "Option::is_none")]
pub other_payer_claim_adjustment_indicator: Option<bool>,
#[serde(rename = "otherPayerClaimControlNumber", skip_serializing_if = "Option::is_none")]
pub other_payer_claim_control_number: Option<String>,
#[serde(rename = "otherPayerIdentifier")]
pub other_payer_identifier: String,
#[serde(rename = "otherPayerIdentifierTypeCode")]
pub other_payer_identifier_type_code: models::InstitutionalOtherPayerIdentifierTypeCode,
#[serde(rename = "otherPayerOrganizationName")]
pub other_payer_organization_name: String,
#[serde(rename = "otherPayerPriorAuthorizationNumber", skip_serializing_if = "Option::is_none")]
pub other_payer_prior_authorization_number: Option<String>,
#[serde(rename = "otherPayerPriorAuthorizationOrReferralNumber", skip_serializing_if = "Option::is_none")]
pub other_payer_prior_authorization_or_referral_number: Option<String>,
#[serde(rename = "otherPayerSecondaryIdentifier", skip_serializing_if = "Option::is_none")]
pub other_payer_secondary_identifier: Option<Vec<models::InstitutionalReferenceIdentification>>,
}
impl InstitutionalOtherPayerName {
pub fn new(other_payer_identifier: String, other_payer_identifier_type_code: models::InstitutionalOtherPayerIdentifierTypeCode, other_payer_organization_name: String) -> InstitutionalOtherPayerName {
InstitutionalOtherPayerName {
other_insured_additional_identifier: None,
other_payer_address: None,
other_payer_adjudication_or_payment_date: None,
other_payer_claim_adjustment_indicator: None,
other_payer_claim_control_number: None,
other_payer_identifier,
other_payer_identifier_type_code,
other_payer_organization_name,
other_payer_prior_authorization_number: None,
other_payer_prior_authorization_or_referral_number: None,
other_payer_secondary_identifier: None,
}
}
}