/*
 * Prediction Trading REST API
 *
 * Place and manage prediction market orders, query positions, and transfer funds via the Prediction Trading 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::w3w_prediction::rest_api::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct QueryOrderHistoryResponseOrdersInner {
    #[serde(rename = "orderId", skip_serializing_if = "Option::is_none")]
    pub order_id: Option<String>,
    #[serde(rename = "vendorOrderId", skip_serializing_if = "Option::is_none")]
    pub vendor_order_id: Option<String>,
    #[serde(rename = "vendor", skip_serializing_if = "Option::is_none")]
    pub vendor: Option<String>,
    #[serde(rename = "marketTopicId", skip_serializing_if = "Option::is_none")]
    pub market_topic_id: Option<i64>,
    #[serde(rename = "slug", skip_serializing_if = "Option::is_none")]
    pub slug: Option<String>,
    #[serde(rename = "marketTopicTitle", skip_serializing_if = "Option::is_none")]
    pub market_topic_title: Option<String>,
    #[serde(rename = "marketId", skip_serializing_if = "Option::is_none")]
    pub market_id: Option<i64>,
    #[serde(rename = "marketTitle", skip_serializing_if = "Option::is_none")]
    pub market_title: Option<String>,
    #[serde(rename = "outcome", skip_serializing_if = "Option::is_none")]
    pub outcome: Option<String>,
    #[serde(rename = "outcomeIndex", skip_serializing_if = "Option::is_none")]
    pub outcome_index: Option<i32>,
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<String>,
    #[serde(rename = "side", skip_serializing_if = "Option::is_none")]
    pub side: Option<String>,
    #[serde(rename = "orderType", skip_serializing_if = "Option::is_none")]
    pub order_type: Option<String>,
    #[serde(rename = "createTime", skip_serializing_if = "Option::is_none")]
    pub create_time: Option<i64>,
    #[serde(rename = "modifyTime", skip_serializing_if = "Option::is_none")]
    pub modify_time: Option<i64>,
    #[serde(rename = "terminalTime", skip_serializing_if = "Option::is_none")]
    pub terminal_time: Option<i64>,
    #[serde(rename = "makerUsdtAmount", skip_serializing_if = "Option::is_none")]
    pub maker_usdt_amount: Option<String>,
    #[serde(rename = "makerShareQty", skip_serializing_if = "Option::is_none")]
    pub maker_share_qty: Option<String>,
    #[serde(rename = "filledUsdtAmount", skip_serializing_if = "Option::is_none")]
    pub filled_usdt_amount: Option<String>,
    #[serde(rename = "filledShareQty", skip_serializing_if = "Option::is_none")]
    pub filled_share_qty: Option<String>,
    #[serde(rename = "fillPercentage", skip_serializing_if = "Option::is_none")]
    pub fill_percentage: Option<String>,
    #[serde(rename = "price", skip_serializing_if = "Option::is_none")]
    pub price: Option<String>,
    #[serde(rename = "marketProviderFee", skip_serializing_if = "Option::is_none")]
    pub market_provider_fee: Option<String>,
    #[serde(rename = "networkFee", skip_serializing_if = "Option::is_none")]
    pub network_fee: Option<String>,
}

impl QueryOrderHistoryResponseOrdersInner {
    #[must_use]
    pub fn new() -> QueryOrderHistoryResponseOrdersInner {
        QueryOrderHistoryResponseOrdersInner {
            order_id: None,
            vendor_order_id: None,
            vendor: None,
            market_topic_id: None,
            slug: None,
            market_topic_title: None,
            market_id: None,
            market_title: None,
            outcome: None,
            outcome_index: None,
            status: None,
            side: None,
            order_type: None,
            create_time: None,
            modify_time: None,
            terminal_time: None,
            maker_usdt_amount: None,
            maker_share_qty: None,
            filled_usdt_amount: None,
            filled_share_qty: None,
            fill_percentage: None,
            price: None,
            market_provider_fee: None,
            network_fee: None,
        }
    }
}
