#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct PayoutData {
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "revision", skip_serializing_if = "Option::is_none")]
pub revision: Option<i32>,
#[serde(rename = "pullPaymentId", skip_serializing_if = "Option::is_none")]
pub pull_payment_id: Option<String>,
#[serde(rename = "date", skip_serializing_if = "Option::is_none")]
pub date: Option<String>,
#[serde(rename = "destination", skip_serializing_if = "Option::is_none")]
pub destination: Option<String>,
#[serde(rename = "amount", skip_serializing_if = "Option::is_none")]
pub amount: Option<String>,
#[serde(rename = "paymentMethod", skip_serializing_if = "Option::is_none")]
pub payment_method: Option<String>,
#[serde(rename = "cryptoCode", skip_serializing_if = "Option::is_none")]
pub crypto_code: Option<String>,
#[serde(rename = "paymentMethodAmount", skip_serializing_if = "Option::is_none")]
pub payment_method_amount: Option<String>,
#[serde(rename = "state", skip_serializing_if = "Option::is_none")]
pub state: Option<State>,
}
impl PayoutData {
pub fn new() -> PayoutData {
PayoutData {
id: None,
revision: None,
pull_payment_id: None,
date: None,
destination: None,
amount: None,
payment_method: None,
crypto_code: None,
payment_method_amount: None,
state: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum State {
#[serde(rename = "AwaitingApproval")]
AwaitingApproval,
#[serde(rename = "AwaitingPayment")]
AwaitingPayment,
#[serde(rename = "InProgress")]
InProgress,
#[serde(rename = "Completed")]
Completed,
#[serde(rename = "Cancelled")]
Cancelled,
}
impl Default for State {
fn default() -> State {
Self::AwaitingApproval
}
}