use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct OrderItem {
#[serde(rename = "itemSequenceNumber")]
pub item_sequence_number: String,
#[serde(rename = "amazonProductIdentifier", skip_serializing_if = "Option::is_none")]
pub amazon_product_identifier: Option<String>,
#[serde(rename = "vendorProductIdentifier", skip_serializing_if = "Option::is_none")]
pub vendor_product_identifier: Option<String>,
#[serde(rename = "orderedQuantity")]
pub ordered_quantity: Box<models::vendor_orders::ItemQuantity>,
#[serde(rename = "isBackOrderAllowed")]
pub is_back_order_allowed: bool,
#[serde(rename = "netCost", skip_serializing_if = "Option::is_none")]
pub net_cost: Option<Box<models::vendor_orders::Money>>,
#[serde(rename = "listPrice", skip_serializing_if = "Option::is_none")]
pub list_price: Option<Box<models::vendor_orders::Money>>,
}
impl OrderItem {
pub fn new(item_sequence_number: String, ordered_quantity: models::vendor_orders::ItemQuantity, is_back_order_allowed: bool) -> OrderItem {
OrderItem {
item_sequence_number,
amazon_product_identifier: None,
vendor_product_identifier: None,
ordered_quantity: Box::new(ordered_quantity),
is_back_order_allowed,
net_cost: None,
list_price: None,
}
}
}