use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct IntactChargeInfo {
#[serde(rename = "actualAmount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub actual_amount: Option<Option<String>>,
#[serde(rename = "billType", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub bill_type: Option<Option<String>>,
#[serde(rename = "gmtPay", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub gmt_pay: Option<Option<String>>,
#[serde(rename = "isRefund", skip_serializing_if = "Option::is_none")]
pub is_refund: Option<bool>,
#[serde(rename = "outBizNo", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub out_biz_no: Option<Option<String>>,
#[serde(rename = "planAmount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub plan_amount: Option<Option<String>>,
#[serde(rename = "productName", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub product_name: Option<Option<String>>,
#[serde(rename = "serviceTarget", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub service_target: Option<Option<String>>,
#[serde(rename = "serviceType", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub service_type: Option<Option<String>>,
#[serde(rename = "status", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub status: Option<Option<String>>,
#[serde(rename = "targetAccountNo", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub target_account_no: Option<Option<String>>,
#[serde(rename = "targetUserId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub target_user_id: Option<Option<String>>,
}
impl IntactChargeInfo {
pub fn new() -> IntactChargeInfo {
IntactChargeInfo {
actual_amount: None,
bill_type: None,
gmt_pay: None,
is_refund: None,
out_biz_no: None,
plan_amount: None,
product_name: None,
service_target: None,
service_type: None,
status: None,
target_account_no: None,
target_user_id: None,
}
}
}