use crate::core::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GenerateEdiRequestContent {
#[serde(rename = "characterSet", skip_serializing_if = "Option::is_none")]
pub character_set: Option<models::CoreCharacterSet>,
#[serde(rename = "repairOptions", skip_serializing_if = "Option::is_none")]
pub repair_options: Option<Box<models::RepairOptions>>,
#[serde(rename = "transactionGroups")]
pub transaction_groups: Vec<models::TransactionGroup>,
#[serde(rename = "filename", skip_serializing_if = "Option::is_none")]
pub filename: Option<String>,
#[serde(rename = "overrides", skip_serializing_if = "Option::is_none")]
pub overrides: Option<Box<models::InterchangeOverrides>>,
#[serde(rename = "interchangeUsageIndicatorOverride", skip_serializing_if = "Option::is_none")]
pub interchange_usage_indicator_override: Option<models::X12UsageIndicator>,
#[serde(rename = "interchangeAuthorization", skip_serializing_if = "Option::is_none")]
pub interchange_authorization: Option<Box<models::X12InterchangeAuthorization>>,
}
impl GenerateEdiRequestContent {
pub fn new(transaction_groups: Vec<models::TransactionGroup>) -> GenerateEdiRequestContent {
GenerateEdiRequestContent {
character_set: None,
repair_options: None,
transaction_groups,
filename: None,
overrides: None,
interchange_usage_indicator_override: None,
interchange_authorization: None,
}
}
}