6 Commits
7 changed files with 66 additions and 0 deletions

No files matched your search

+9
View File
@@ -0,0 +1,9 @@
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ClassBookLessonPast {
pub lesson_id: String,
pub last_theme: Option<String>,
pub next_label: Option<String>,
}
+10
View File
@@ -0,0 +1,10 @@
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ClassBookLessonTag {
pub id: String,
pub notice: String,
pub abbreviation: Option<String>,
pub title: Option<String>,
}
@@ -0,0 +1,3 @@
pub struct ClassBookSaveAbsenceRequest {
//TODO
}
@@ -0,0 +1,7 @@
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ClassBookSaveRecordRequest{
//TODO
}
+24
View File
@@ -0,0 +1,24 @@
use crate::{
ClassBookLessonPast, ClassBookLessonTag, ClassBookSaveRecordRequest, ContentType, Endpoint,
};
use std::marker::PhantomData;
pub const EDIT_CLASSBOOK_ENDPOINT: Endpoint<(), ClassBookSaveRecordRequest> = Endpoint::Post {
url: "/api/3/classbook/{recordId}",
auth: true,
content_type: ContentType::Json,
_types: PhantomData,
};
pub const PREVIOUS_LESSON_INFO_CLASSBOOK_ENDPOINT: Endpoint<ClassBookLessonPast, ()> =
Endpoint::Get {
url: "/api/3/lesson/{lessonId}/past",
auth: true,
_types: PhantomData,
};
pub const LESSON_TAGS_CLASSBOOK_ENDPOINT: Endpoint<ClassBookLessonTag, ()> = Endpoint::Get {
url: "/api/3/classbook/lessonTags",
auth: true,
_types: PhantomData,
};
+11
View File
@@ -0,0 +1,11 @@
mod class_book_lesson_past;
mod class_book_lesson_tag;
mod class_book_save_absence_request;
mod endpoints;
mod class_book_save_record_request;
pub use class_book_lesson_past::*;
pub use class_book_lesson_tag::*;
pub use class_book_save_absence_request::*;
pub use endpoints::*;
pub use class_book_save_record_request::*;
+2
View File
@@ -1,5 +1,6 @@
mod absence;
mod auth;
mod class_book;
mod endpoints;
mod events;
mod gdpr;
@@ -22,6 +23,7 @@ mod webmodules;
pub use absence::*;
pub use auth::*;
pub use class_book::*;
pub use endpoints::*;
pub use events::*;
pub use gdpr::*;