use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum EasyShipShipmentStatus {
#[serde(rename = "PendingSchedule")]
PendingSchedule,
#[serde(rename = "PendingPickUp")]
PendingPickUp,
#[serde(rename = "PendingDropOff")]
PendingDropOff,
#[serde(rename = "LabelCanceled")]
LabelCanceled,
#[serde(rename = "PickedUp")]
PickedUp,
#[serde(rename = "DroppedOff")]
DroppedOff,
#[serde(rename = "AtOriginFC")]
AtOriginFc,
#[serde(rename = "AtDestinationFC")]
AtDestinationFc,
#[serde(rename = "Delivered")]
Delivered,
#[serde(rename = "RejectedByBuyer")]
RejectedByBuyer,
#[serde(rename = "Undeliverable")]
Undeliverable,
#[serde(rename = "ReturningToSeller")]
ReturningToSeller,
#[serde(rename = "ReturnedToSeller")]
ReturnedToSeller,
#[serde(rename = "Lost")]
Lost,
#[serde(rename = "OutForDelivery")]
OutForDelivery,
#[serde(rename = "Damaged")]
Damaged,
}
impl std::fmt::Display for EasyShipShipmentStatus {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::PendingSchedule => write!(f, "PendingSchedule"),
Self::PendingPickUp => write!(f, "PendingPickUp"),
Self::PendingDropOff => write!(f, "PendingDropOff"),
Self::LabelCanceled => write!(f, "LabelCanceled"),
Self::PickedUp => write!(f, "PickedUp"),
Self::DroppedOff => write!(f, "DroppedOff"),
Self::AtOriginFc => write!(f, "AtOriginFC"),
Self::AtDestinationFc => write!(f, "AtDestinationFC"),
Self::Delivered => write!(f, "Delivered"),
Self::RejectedByBuyer => write!(f, "RejectedByBuyer"),
Self::Undeliverable => write!(f, "Undeliverable"),
Self::ReturningToSeller => write!(f, "ReturningToSeller"),
Self::ReturnedToSeller => write!(f, "ReturnedToSeller"),
Self::Lost => write!(f, "Lost"),
Self::OutForDelivery => write!(f, "OutForDelivery"),
Self::Damaged => write!(f, "Damaged"),
}
}
}
impl Default for EasyShipShipmentStatus {
fn default() -> EasyShipShipmentStatus {
Self::PendingSchedule
}
}