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
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum PackageStatus {
#[serde(rename = "ReadyForPickup")]
ReadyForPickup,
#[serde(rename = "PickedUp")]
PickedUp,
#[serde(rename = "AtOriginFC")]
AtOriginFC,
#[serde(rename = "AtDestinationFC")]
AtDestinationFC,
#[serde(rename = "Delivered")]
Delivered,
#[serde(rename = "Rejected")]
Rejected,
#[serde(rename = "Undeliverable")]
Undeliverable,
#[serde(rename = "ReturnedToSeller")]
ReturnedToSeller,
#[serde(rename = "LostInTransit")]
LostInTransit,
#[serde(rename = "LabelCanceled")]
LabelCanceled,
#[serde(rename = "DamagedInTransit")]
DamagedInTransit,
#[serde(rename = "OutForDelivery")]
OutForDelivery,
}
impl ToString for PackageStatus {
fn to_string(&self) -> String {
match self {
Self::ReadyForPickup => String::from("ReadyForPickup"),
Self::PickedUp => String::from("PickedUp"),
Self::AtOriginFC => String::from("AtOriginFC"),
Self::AtDestinationFC => String::from("AtDestinationFC"),
Self::Delivered => String::from("Delivered"),
Self::Rejected => String::from("Rejected"),
Self::Undeliverable => String::from("Undeliverable"),
Self::ReturnedToSeller => String::from("ReturnedToSeller"),
Self::LostInTransit => String::from("LostInTransit"),
Self::LabelCanceled => String::from("LabelCanceled"),
Self::DamagedInTransit => String::from("DamagedInTransit"),
Self::OutForDelivery => String::from("OutForDelivery"),
}
}
}
impl Default for PackageStatus {
fn default() -> PackageStatus {
Self::ReadyForPickup
}
}