/*
 * Binance VIP Loan REST API
 *
 * OpenAPI Specification for the Binance VIP Loan REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

#![allow(unused_imports)]
use crate::vip_loan::rest_api::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GetVipLoanOngoingOrdersResponseRowsInner {
    #[serde(rename = "orderId", skip_serializing_if = "Option::is_none")]
    pub order_id: Option<i64>,
    #[serde(rename = "loanCoin", skip_serializing_if = "Option::is_none")]
    pub loan_coin: Option<String>,
    #[serde(rename = "totalDebt", skip_serializing_if = "Option::is_none")]
    pub total_debt: Option<String>,
    #[serde(rename = "loanRate", skip_serializing_if = "Option::is_none")]
    pub loan_rate: Option<String>,
    #[serde(rename = "residualInterest", skip_serializing_if = "Option::is_none")]
    pub residual_interest: Option<String>,
    #[serde(
        rename = "collateralAccountId",
        skip_serializing_if = "Option::is_none"
    )]
    pub collateral_account_id: Option<String>,
    #[serde(rename = "collateralCoin", skip_serializing_if = "Option::is_none")]
    pub collateral_coin: Option<String>,
    #[serde(
        rename = "totalCollateralValueAfterHaircut",
        skip_serializing_if = "Option::is_none"
    )]
    pub total_collateral_value_after_haircut: Option<String>,
    #[serde(
        rename = "lockedCollateralValue",
        skip_serializing_if = "Option::is_none"
    )]
    pub locked_collateral_value: Option<String>,
    #[serde(rename = "currentLTV", skip_serializing_if = "Option::is_none")]
    pub current_ltv: Option<String>,
    #[serde(rename = "expirationTime", skip_serializing_if = "Option::is_none")]
    pub expiration_time: Option<i64>,
    #[serde(rename = "loanDate", skip_serializing_if = "Option::is_none")]
    pub loan_date: Option<String>,
    #[serde(rename = "loanTerm", skip_serializing_if = "Option::is_none")]
    pub loan_term: Option<String>,
}

impl GetVipLoanOngoingOrdersResponseRowsInner {
    #[must_use]
    pub fn new() -> GetVipLoanOngoingOrdersResponseRowsInner {
        GetVipLoanOngoingOrdersResponseRowsInner {
            order_id: None,
            loan_coin: None,
            total_debt: None,
            loan_rate: None,
            residual_interest: None,
            collateral_account_id: None,
            collateral_coin: None,
            total_collateral_value_after_haircut: None,
            locked_collateral_value: None,
            current_ltv: None,
            expiration_time: None,
            loan_date: None,
            loan_term: None,
        }
    }
}
