zsgf-client 1.0.24

zsgf 客户端库。
Documentation
/*
 * 全部  API 文档
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: v1
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AlipayTradeRefundResponse {
    #[serde(rename = "code", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub code: Option<Option<String>>,
    #[serde(rename = "msg", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub msg: Option<Option<String>>,
    #[serde(rename = "subCode", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub sub_code: Option<Option<String>>,
    #[serde(rename = "subMsg", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub sub_msg: Option<Option<String>>,
    #[serde(rename = "body", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub body: Option<Option<String>>,
    #[serde(rename = "isError", skip_serializing_if = "Option::is_none")]
    pub is_error: Option<bool>,
    #[serde(rename = "buyerLogonId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub buyer_logon_id: Option<Option<String>>,
    #[serde(rename = "buyerOpenId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub buyer_open_id: Option<Option<String>>,
    #[serde(rename = "buyerUserId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub buyer_user_id: Option<Option<String>>,
    #[serde(rename = "fundChange", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub fund_change: Option<Option<String>>,
    #[serde(rename = "gmtRefundPay", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub gmt_refund_pay: Option<Option<String>>,
    #[serde(rename = "hasDepositBack", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub has_deposit_back: Option<Option<String>>,
    #[serde(rename = "openId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub open_id: Option<Option<String>>,
    #[serde(rename = "outTradeNo", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub out_trade_no: Option<Option<String>>,
    #[serde(rename = "preAuthCancelFee", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub pre_auth_cancel_fee: Option<Option<String>>,
    #[serde(rename = "presentRefundBuyerAmount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub present_refund_buyer_amount: Option<Option<String>>,
    #[serde(rename = "presentRefundDiscountAmount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub present_refund_discount_amount: Option<Option<String>>,
    #[serde(rename = "presentRefundMdiscountAmount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub present_refund_mdiscount_amount: Option<Option<String>>,
    #[serde(rename = "refundChargeAmount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub refund_charge_amount: Option<Option<String>>,
    #[serde(rename = "refundChargeInfoList", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub refund_charge_info_list: Option<Option<Vec<models::RefundChargeInfo>>>,
    #[serde(rename = "refundCurrency", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub refund_currency: Option<Option<String>>,
    #[serde(rename = "refundDetailItemList", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub refund_detail_item_list: Option<Option<Vec<models::TradeFundBill>>>,
    #[serde(rename = "refundFee", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub refund_fee: Option<Option<String>>,
    #[serde(rename = "refundHybAmount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub refund_hyb_amount: Option<Option<String>>,
    #[serde(rename = "refundPresetPaytoolList", skip_serializing_if = "Option::is_none")]
    pub refund_preset_paytool_list: Option<Box<models::PresetPayToolInfo>>,
    #[serde(rename = "refundSettlementId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub refund_settlement_id: Option<Option<String>>,
    #[serde(rename = "refundVoucherDetailList", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub refund_voucher_detail_list: Option<Option<Vec<models::VoucherDetail>>>,
    #[serde(rename = "sendBackFee", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub send_back_fee: Option<Option<String>>,
    #[serde(rename = "storeName", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub store_name: Option<Option<String>>,
    #[serde(rename = "tradeNo", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub trade_no: Option<Option<String>>,
}

impl AlipayTradeRefundResponse {
    pub fn new() -> AlipayTradeRefundResponse {
        AlipayTradeRefundResponse {
            code: None,
            msg: None,
            sub_code: None,
            sub_msg: None,
            body: None,
            is_error: None,
            buyer_logon_id: None,
            buyer_open_id: None,
            buyer_user_id: None,
            fund_change: None,
            gmt_refund_pay: None,
            has_deposit_back: None,
            open_id: None,
            out_trade_no: None,
            pre_auth_cancel_fee: None,
            present_refund_buyer_amount: None,
            present_refund_discount_amount: None,
            present_refund_mdiscount_amount: None,
            refund_charge_amount: None,
            refund_charge_info_list: None,
            refund_currency: None,
            refund_detail_item_list: None,
            refund_fee: None,
            refund_hyb_amount: None,
            refund_preset_paytool_list: None,
            refund_settlement_id: None,
            refund_voucher_detail_list: None,
            send_back_fee: None,
            store_name: None,
            trade_no: None,
        }
    }
}