initial commit

This commit is contained in:
vextrixes committed 2026-10-24 12:17:29 +02:00
commit b3e4a7247f
6 files changed
+68

No files matched your search

+35
View File
@@ -0,0 +1,35 @@
use chrono::Utc;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct Absence {
pub percentage_threshold: f64, //TODO: cutom type (u8)
pub absences: Vec<AbsenceListItem>,
pub absences_per_subject: Vec<SubjectAbsence>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct AbsenceListItem {
pub date: chrono::DateTime<Utc>,
pub unsolved: i8,
pub ok: i8,
pub missed: i8,
pub late: i8,
pub soon: i8,
pub school: i8,
pub distance_teaching: i8,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct SubjectAbsence {
pub subject_name: String,
pub lessons_count: u16,
pub base: u16,
pub late: u16,
pub soon: u16,
pub school: u16,
pub distance_teaching: u16,
}
+9
View File
@@ -0,0 +1,9 @@
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ApiInfo {
pub api_version: String,
pub application_version: String,
pub base_url: String,
}
+7
View File
@@ -0,0 +1,7 @@
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct Error {
message: String,
}
+7
View File
@@ -0,0 +1,7 @@
mod absence;
mod api_info;
mod error;
pub use absence::{Absence, AbsenceListItem, SubjectAbsence};
pub use api_info::ApiInfo;
pub use error::Error;