use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
#[cfg_attr(feature = "specta", derive(specta::Type))]
pub struct StatusSeasonRewardSchema {
#[serde(rename = "code")]
pub code: String,
#[serde(rename = "type")]
pub r#type: models::RewardType,
#[serde(rename = "description")]
pub description: String,
#[serde(rename = "required_points")]
pub required_points: i32,
#[serde(rename = "quantity", skip_serializing_if = "Option::is_none")]
pub quantity: Option<i32>,
#[serde(rename = "member_required", skip_serializing_if = "Option::is_none")]
pub member_required: Option<bool>,
#[serde(rename = "first_only", skip_serializing_if = "Option::is_none")]
pub first_only: Option<bool>,
}
impl StatusSeasonRewardSchema {
pub fn new(
code: String,
r#type: models::RewardType,
description: String,
required_points: i32,
) -> StatusSeasonRewardSchema {
StatusSeasonRewardSchema {
code,
r#type,
description,
required_points,
quantity: None,
member_required: None,
first_only: None,
}
}
}