bluefin_api 1.8.0

Bluefin API
Documentation
/*
 * Bluefin API
 *
 * Bluefin API
 *
 * The version of the OpenAPI document: 1.0.0
 * 
 * Generated by: https://openapi-generator.tech
 */

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

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AffiliateLeaderDashboard {
    /// The user's wallet address
    #[serde(rename = "userAddress")]
    pub user_address: String,
    /// Name of the affiliate
    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    /// The parent affiliate's wallet address
    #[serde(rename = "parentAddress")]
    pub parent_address: String,
    /// Name of the parent affiliate
    #[serde(rename = "parentName", skip_serializing_if = "Option::is_none")]
    pub parent_name: Option<String>,
    /// Ranking in perps trading category
    #[serde(rename = "perpsRank")]
    pub perps_rank: i32,
    /// Ranking in spot trading category
    #[serde(rename = "spotRank")]
    pub spot_rank: i32,
    /// Ranking in lending category
    #[serde(rename = "lendingRank")]
    pub lending_rank: i32,
    /// Ranking in ember category
    #[serde(rename = "emberRank")]
    pub ember_rank: i32,
    /// Total earnings from perps trading (e9 format)
    #[serde(rename = "perpsTotalEarningsE9")]
    pub perps_total_earnings_e9: String,
    /// Total earnings from spot trading (e9 format)
    #[serde(rename = "spotTotalEarningsE9")]
    pub spot_total_earnings_e9: String,
    /// Total earnings from lending (e9 format)
    #[serde(rename = "lendingTotalEarningsE9")]
    pub lending_total_earnings_e9: String,
}

impl AffiliateLeaderDashboard {
    pub fn new(user_address: String, parent_address: String, perps_rank: i32, spot_rank: i32, lending_rank: i32, ember_rank: i32, perps_total_earnings_e9: String, spot_total_earnings_e9: String, lending_total_earnings_e9: String) -> AffiliateLeaderDashboard {
        AffiliateLeaderDashboard {
            user_address,
            name: None,
            parent_address,
            parent_name: None,
            perps_rank,
            spot_rank,
            lending_rank,
            ember_rank,
            perps_total_earnings_e9,
            spot_total_earnings_e9,
            lending_total_earnings_e9,
        }
    }
}