use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GetDisputeResponse {
#[serde(rename = "amount")]
pub amount: String,
#[serde(rename = "business_id")]
pub business_id: String,
#[serde(rename = "created_at")]
pub created_at: String,
#[serde(rename = "currency")]
pub currency: String,
#[serde(rename = "customer")]
pub customer: Box<models::CustomerLimitedDetailsResponse>,
#[serde(rename = "dispute_id")]
pub dispute_id: String,
#[serde(rename = "dispute_stage")]
pub dispute_stage: models::DisputeStage,
#[serde(rename = "dispute_status")]
pub dispute_status: models::DisputeStatus,
#[serde(rename = "payment_id")]
pub payment_id: String,
#[serde(rename = "reason", skip_serializing_if = "Option::is_none")]
pub reason: Option<String>,
#[serde(rename = "remarks", skip_serializing_if = "Option::is_none")]
pub remarks: Option<String>,
}
impl GetDisputeResponse {
pub fn new(amount: String, business_id: String, created_at: String, currency: String, customer: models::CustomerLimitedDetailsResponse, dispute_id: String, dispute_stage: models::DisputeStage, dispute_status: models::DisputeStatus, payment_id: String) -> GetDisputeResponse {
GetDisputeResponse {
amount,
business_id,
created_at,
currency,
customer: Box::new(customer),
dispute_id,
dispute_stage,
dispute_status,
payment_id,
reason: None,
remarks: None,
}
}
}