added Events
This commit is contained in:
1 parent
ee0bc20e15
commit
f8db5881a6
4 files changed
+67
No files matched your search
@@ -4,4 +4,22 @@ use serde::{Deserialize, Serialize};
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
pub struct Error {
|
||||
message: String,
|
||||
model_state: ModelState,
|
||||
}
|
||||
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
struct ModelState {
|
||||
#[serde(rename = "$type")]
|
||||
type_name: String,
|
||||
#[serde(rename = "from")]
|
||||
from: StringArray,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
struct StringArray {
|
||||
#[serde(rename = "$type")]
|
||||
type_name: String,
|
||||
#[serde(rename = "$values")]
|
||||
values: Vec<String>,
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
use chrono::{DateTime, Utc};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use crate::StdType;
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
pub struct Events {
|
||||
events: Vec<Event>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
pub struct Event {
|
||||
id: String,
|
||||
title: String,
|
||||
description: String,
|
||||
times: Vec<Time>,
|
||||
event_type: StdType,
|
||||
classes: Vec<StdType>,
|
||||
//class_sets: unknown
|
||||
teachers: Vec<StdType>,
|
||||
//teacher_sets: unknown
|
||||
rooms: Vec<StdType>,
|
||||
//room_sets: unknown
|
||||
students: Vec<StdType>,
|
||||
note: Option<String>,
|
||||
date_changed: DateTime<Utc>
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
pub struct Time {
|
||||
whole_day: bool,
|
||||
start_time: DateTime<Utc>,
|
||||
end_time: DateTime<Utc>,
|
||||
}
|
||||
@@ -1,7 +1,11 @@
|
||||
mod absence;
|
||||
mod api_info;
|
||||
mod error;
|
||||
mod events;
|
||||
mod stdtype;
|
||||
|
||||
pub use absence::{Absence, AbsenceListItem, SubjectAbsence};
|
||||
pub use api_info::ApiInfo;
|
||||
pub use error::Error;
|
||||
pub use events::Events;
|
||||
pub use stdtype::StdType;
|
||||
@@ -0,0 +1,9 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
pub struct StdType {
|
||||
id: String,
|
||||
abbrev: String,
|
||||
name: String,
|
||||
}
|
||||
Reference in new issue
Block a user