Compare commits

...

4 Commits

Author SHA1 Message Date
021e030ded fix: Package import 2026-02-12 08:35:49 +01:00
bb0b31e84d chore: Bump version 2026-02-10 19:07:22 +01:00
549968dbf3 fix: Make teacher param in absence nullable 2026-02-10 19:06:11 +01:00
9c9fbfeede fix: Report url path 2026-02-10 19:05:11 +01:00
8 changed files with 14 additions and 12 deletions

2
Cargo.lock generated
View File

@@ -357,7 +357,7 @@ checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2"
[[package]] [[package]]
name = "jecna_supl_client" name = "jecna_supl_client"
version = "0.2.2" version = "0.2.3"
dependencies = [ dependencies = [
"minreq", "minreq",
"serde", "serde",

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "jecna_supl_client" name = "jecna_supl_client"
version = "0.2.2" version = "0.2.3"
edition = "2024" edition = "2024"
[dependencies] [dependencies]

View File

@@ -6,7 +6,7 @@ plugins {
} }
group = "cz.jzitnik" group = "cz.jzitnik"
version = "0.2.2" version = "0.2.3"
repositories { repositories {
mavenCentral() mavenCentral()

View File

@@ -6,7 +6,7 @@
<groupId>cz.jzitnik</groupId> <groupId>cz.jzitnik</groupId>
<artifactId>jecna-supl-client</artifactId> <artifactId>jecna-supl-client</artifactId>
<version>0.2.2</version> <version>0.2.3</version>
<name>Jecna Supl Client</name> <name>Jecna Supl Client</name>
<description>Kotlin bindings for the Jecna Supl Rust library</description> <description>Kotlin bindings for the Jecna Supl Rust library</description>
<url>https://gitea.jzitnik.dev/jzitnik/jecna-supl-client</url> <url>https://gitea.jzitnik.dev/jzitnik/jecna-supl-client</url>

View File

@@ -1,7 +1,8 @@
#!/bin/bash #!/bin/bash
set -e set -e
export ANDROID_NDK_HOME=/home/kuba/.Android/Sdk/ndk/29.0.14206865/ #export ANDROID_NDK_HOME=/home/kuba/.Android/Sdk/ndk/29.0.14206865/
export ANDROID_NDK_HOME=/home/kuba/.Android/Sdk/ndk/27.0.12077973/
# Configuration # Configuration
PROJECT_NAME="jecna_supl_client" PROJECT_NAME="jecna_supl_client"

View File

@@ -8,6 +8,7 @@ mod report;
use std::sync::RwLock; use std::sync::RwLock;
pub use models::*; pub use models::*;
pub use report::ReportLocation;
use crate::report::{report_impl, ReportLocation}; use crate::report::{report_impl, ReportLocation};

View File

@@ -18,33 +18,33 @@ pub enum SuplError {
pub enum AbsenceEntry { pub enum AbsenceEntry {
#[serde(rename = "wholeDay")] #[serde(rename = "wholeDay")]
WholeDay { WholeDay {
teacher: String, teacher: Option<String>,
#[serde(rename = "teacherCode")] #[serde(rename = "teacherCode")]
teacher_code: String, teacher_code: String,
}, },
#[serde(rename = "single")] #[serde(rename = "single")]
Single { Single {
teacher: String, teacher: Option<String>,
#[serde(rename = "teacherCode")] #[serde(rename = "teacherCode")]
teacher_code: String, teacher_code: String,
hours: u16, hours: u16,
}, },
#[serde(rename = "range")] #[serde(rename = "range")]
Range { Range {
teacher: String, teacher: Option<String>,
#[serde(rename = "teacherCode")] #[serde(rename = "teacherCode")]
teacher_code: String, teacher_code: String,
hours: AbsenceRange, hours: AbsenceRange,
}, },
#[serde(rename = "exkurze")] #[serde(rename = "exkurze")]
Exkurze { Exkurze {
teacher: String, teacher: Option<String>,
#[serde(rename = "teacherCode")] #[serde(rename = "teacherCode")]
teacher_code: String, teacher_code: String,
}, },
#[serde(rename = "zastoupen")] #[serde(rename = "zastoupen")]
Zastoupen { Zastoupen {
teacher: String, teacher: Option<String>,
#[serde(rename = "teacherCode")] #[serde(rename = "teacherCode")]
teacher_code: String, teacher_code: String,
zastupuje: SubstituteInfo, zastupuje: SubstituteInfo,
@@ -61,7 +61,7 @@ pub struct AbsenceRange {
#[derive(Deserialize, Debug, uniffi::Record, Clone)] #[derive(Deserialize, Debug, uniffi::Record, Clone)]
pub struct SubstituteInfo { pub struct SubstituteInfo {
pub teacher: String, pub teacher: Option<String>,
#[serde(rename = "teacherCode")] #[serde(rename = "teacherCode")]
pub teacher_code: String, pub teacher_code: String,
} }

View File

@@ -33,7 +33,7 @@ pub fn report_impl(
report_location: ReportLocation, report_location: ReportLocation,
) -> Result<(), SuplError> { ) -> Result<(), SuplError> {
let trimmed = provider.trim_end_matches('/'); let trimmed = provider.trim_end_matches('/');
let url = format!("{}/versioned/v3", trimmed); let url = format!("{}/report", trimmed);
let body = ReportRequest { let body = ReportRequest {
content, content,