amazon_spapi/models/finances_2024_06_19/
context.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct Context {
17 #[serde(rename = "storeName", skip_serializing_if = "Option::is_none")]
19 pub store_name: Option<StoreName>,
20 #[serde(rename = "orderType", skip_serializing_if = "Option::is_none")]
22 pub order_type: Option<String>,
23 #[serde(rename = "channel", skip_serializing_if = "Option::is_none")]
25 pub channel: Option<String>,
26 #[serde(rename = "asin", skip_serializing_if = "Option::is_none")]
28 pub asin: Option<String>,
29 #[serde(rename = "sku", skip_serializing_if = "Option::is_none")]
31 pub sku: Option<String>,
32 #[serde(rename = "quantityShipped", skip_serializing_if = "Option::is_none")]
34 pub quantity_shipped: Option<i32>,
35 #[serde(rename = "fulfillmentNetwork", skip_serializing_if = "Option::is_none")]
37 pub fulfillment_network: Option<String>,
38 #[serde(rename = "paymentType", skip_serializing_if = "Option::is_none")]
40 pub payment_type: Option<String>,
41 #[serde(rename = "paymentMethod", skip_serializing_if = "Option::is_none")]
43 pub payment_method: Option<String>,
44 #[serde(rename = "paymentReference", skip_serializing_if = "Option::is_none")]
46 pub payment_reference: Option<String>,
47 #[serde(rename = "paymentDate", skip_serializing_if = "Option::is_none")]
49 pub payment_date: Option<String>,
50 #[serde(rename = "deferralReason", skip_serializing_if = "Option::is_none")]
52 pub deferral_reason: Option<String>,
53 #[serde(rename = "maturityDate", skip_serializing_if = "Option::is_none")]
55 pub maturity_date: Option<String>,
56 #[serde(rename = "startTime", skip_serializing_if = "Option::is_none")]
58 pub start_time: Option<String>,
59 #[serde(rename = "endTime", skip_serializing_if = "Option::is_none")]
61 pub end_time: Option<String>,
62 #[serde(rename = "contextType")]
63 pub context_type: String,
64}
65
66impl Context {
67 pub fn new(context_type: String) -> Context {
69 Context {
70 store_name: None,
71 order_type: None,
72 channel: None,
73 asin: None,
74 sku: None,
75 quantity_shipped: None,
76 fulfillment_network: None,
77 payment_type: None,
78 payment_method: None,
79 payment_reference: None,
80 payment_date: None,
81 deferral_reason: None,
82 maturity_date: None,
83 start_time: None,
84 end_time: None,
85 context_type,
86 }
87 }
88}
89#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
91pub enum StoreName {
92 #[serde(rename = "AMAZON_HAUL")]
93 AmazonHaul,
94}
95
96impl Default for StoreName {
97 fn default() -> StoreName {
98 Self::AmazonHaul
99 }
100}
101