use crate::models;
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GroupScoreChunk {
#[serde(rename = "file_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub file_id: Option<Option<uuid::Uuid>>,
#[serde(rename = "group_created_at")]
pub group_created_at: String,
#[serde(rename = "group_dataset_id")]
pub group_dataset_id: uuid::Uuid,
#[serde(rename = "group_description", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub group_description: Option<Option<String>>,
#[serde(rename = "group_id")]
pub group_id: uuid::Uuid,
#[serde(rename = "group_metadata", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub group_metadata: Option<Option<serde_json::Value>>,
#[serde(rename = "group_name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub group_name: Option<Option<String>>,
#[serde(rename = "group_tag_set", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub group_tag_set: Option<Option<Vec<String>>>,
#[serde(rename = "group_tracking_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub group_tracking_id: Option<Option<String>>,
#[serde(rename = "group_updated_at")]
pub group_updated_at: String,
#[serde(rename = "metadata")]
pub metadata: Vec<models::ScoreChunkDto>,
}
impl GroupScoreChunk {
pub fn new(group_created_at: String, group_dataset_id: uuid::Uuid, group_id: uuid::Uuid, group_updated_at: String, metadata: Vec<models::ScoreChunkDto>) -> GroupScoreChunk {
GroupScoreChunk {
file_id: None,
group_created_at,
group_dataset_id,
group_description: None,
group_id,
group_metadata: None,
group_name: None,
group_tag_set: None,
group_tracking_id: None,
group_updated_at,
metadata,
}
}
}