use serde::{Deserialize, Serialize}; use serde_json::Value; use std::collections::HashMap; use crate::StdType; #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(rename_all = "PascalCase")] pub struct User { #[serde(rename = "UserUID")] pub user_uid: String, pub campaign_category_code: String, pub class: StdType, // TeacherClasses: Option TODO pub full_name: String, pub school_organization_name: String, pub school_type: Option, pub user_type: String, pub user_type_text: String, pub study_year: u8, pub enabled_modules: Vec, pub setting_modules: HashMap, pub full_user_name: String, pub students: Vec, } #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(rename_all = "PascalCase")] pub struct Module { pub module: String, pub rights: Vec, } #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(rename_all = "PascalCase")] pub struct Student { pub full_name: String, pub class: Vec, pub school_type: String, pub study_year: u8, }