1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
/*
 * Selling Partner API for Fulfillment Inbound
 *
 * The Selling Partner API for Fulfillment Inbound lets you create applications that create and update inbound shipments of inventory to Amazon's fulfillment network.
 *
 * The version of the OpenAPI document: v0
 * 
 * Generated by: https://openapi-generator.tech
 */

/// PartneredLtlDataOutput : Information returned by Amazon about a Less Than Truckload/Full Truckload (LTL/FTL) shipment by an Amazon-partnered carrier.



#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct PartneredLtlDataOutput {
    #[serde(default, rename = "Contact")]
    pub contact: Box<crate::models::Contact>,
    #[serde(default, rename = "BoxCount")]
    pub box_count: i64,
    #[serde(default, rename = "SellerFreightClass", skip_serializing_if = "Option::is_none")]
    pub seller_freight_class: Option<crate::models::SellerFreightClass>,
    #[serde(default, rename = "FreightReadyDate")]
    pub freight_ready_date: String,
    /// A list of pallet information.
    #[serde(default, rename = "PalletList")]
    pub pallet_list: Vec<crate::models::Pallet>,
    #[serde(default, rename = "TotalWeight")]
    pub total_weight: Box<crate::models::Weight>,
    #[serde(default, rename = "SellerDeclaredValue", skip_serializing_if = "Option::is_none")]
    pub seller_declared_value: Option<Box<crate::models::Amount>>,
    #[serde(default, rename = "AmazonCalculatedValue", skip_serializing_if = "Option::is_none")]
    pub amazon_calculated_value: Option<Box<crate::models::Amount>>,
    #[serde(default, rename = "PreviewPickupDate")]
    pub preview_pickup_date: String,
    #[serde(default, rename = "PreviewDeliveryDate")]
    pub preview_delivery_date: String,
    #[serde(default, rename = "PreviewFreightClass")]
    pub preview_freight_class: crate::models::SellerFreightClass,
    /// A unique identifier created by Amazon that identifies this Amazon-partnered, Less Than Truckload/Full Truckload (LTL/FTL) shipment.
    #[serde(default, rename = "AmazonReferenceId")]
    pub amazon_reference_id: String,
    /// Indicates whether the bill of lading for the shipment is available.
    #[serde(default, rename = "IsBillOfLadingAvailable")]
    pub is_bill_of_lading_available: bool,
    #[serde(default, rename = "PartneredEstimate", skip_serializing_if = "Option::is_none")]
    pub partnered_estimate: Option<Box<crate::models::PartneredEstimate>>,
    /// The carrier for the inbound shipment.
    #[serde(default, rename = "CarrierName")]
    pub carrier_name: String,
}

impl PartneredLtlDataOutput {
    /// Information returned by Amazon about a Less Than Truckload/Full Truckload (LTL/FTL) shipment by an Amazon-partnered carrier.
    pub fn new(contact: crate::models::Contact, box_count: i64, freight_ready_date: String, pallet_list: Vec<crate::models::Pallet>, total_weight: crate::models::Weight, preview_pickup_date: String, preview_delivery_date: String, preview_freight_class: crate::models::SellerFreightClass, amazon_reference_id: String, is_bill_of_lading_available: bool, carrier_name: String) -> PartneredLtlDataOutput {
        PartneredLtlDataOutput {
            contact: Box::new(contact),
            box_count,
            seller_freight_class: None,
            freight_ready_date,
            pallet_list,
            total_weight: Box::new(total_weight),
            seller_declared_value: None,
            amazon_calculated_value: None,
            preview_pickup_date,
            preview_delivery_date,
            preview_freight_class,
            amazon_reference_id,
            is_bill_of_lading_available,
            partnered_estimate: None,
            carrier_name,
        }
    }
}