use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GroupDetailResponse {
#[serde(rename = "created_at")]
pub created_at: String,
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(rename = "id")]
pub id: uuid::Uuid,
#[serde(rename = "member_count")]
pub member_count: i64,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "updated_at")]
pub updated_at: String,
#[serde(rename = "members")]
pub members: Vec<models::GroupMemberResponse>,
#[serde(rename = "members_total")]
pub members_total: i64,
}
impl GroupDetailResponse {
pub fn new(created_at: String, id: uuid::Uuid, member_count: i64, name: String, updated_at: String, members: Vec<models::GroupMemberResponse>, members_total: i64) -> GroupDetailResponse {
GroupDetailResponse {
created_at,
description: None,
id,
member_count,
name,
updated_at,
members,
members_total,
}
}
}