diff --git a/src/data_provider/card_states.rs b/src/data_provider/card_states.rs index 7db49eb..effeef5 100644 --- a/src/data_provider/card_states.rs +++ b/src/data_provider/card_states.rs @@ -11,7 +11,7 @@ use std::time::Instant; pub struct CardStatesQuerySet; impl TableAccessQuerySet for CardStatesQuerySet { fn load() -> &'static str { - "INSERT INTO states (word_id, set_id, score, last_opened, fsrs_opened, fsrs_memory, fsrs_open_day) VALUES (?1, ?2, ?3, ?4)" + "SELECT id, word_id, set_id, score, last_opened, fsrs_opened, fsrs_memory, fsrs_open_day FROM states" } fn save() -> &'static str { @@ -19,7 +19,7 @@ impl TableAccessQuerySet for CardStatesQuerySet { } fn add() -> &'static str { - todo!() + "INSERT INTO states (word_id, set_id, score, last_opened, fsrs_opened, fsrs_memory, fsrs_open_day) VALUES (?1, ?2, ?3, ?4)" } fn name() -> &'static str { @@ -30,13 +30,13 @@ impl TableAccessQuerySet for CardStatesQuerySet { Ok(CardState { id: row.get(0)?, word_id: row.get(1)?, - set_id: set.id, - score: row.get(2)?, - fsrs_opened: NaiveDate::from_epoch_days(row.get::(4)?) + set_id: row.get(2)?, + score: row.get(3)?, + fsrs_opened: NaiveDate::from_epoch_days(row.get::(5)?) .expect("Incorrect date encoding"), - fsrs_memory: get_memory(row.get(5)?), - last_open: row.get(3)?, - fsrs_open_day: NaiveDate::from_epoch_days(row.get::(6)?) + fsrs_memory: get_memory(row.get(6)?), + last_open: row.get(4)?, + fsrs_open_day: NaiveDate::from_epoch_days(row.get::(7)?) .expect("Incorrect date encoding"), }) } diff --git a/src/data_provider/mod.rs b/src/data_provider/mod.rs index 1c54a7a..874eae0 100644 --- a/src/data_provider/mod.rs +++ b/src/data_provider/mod.rs @@ -70,7 +70,7 @@ impl> DbLayer for SqliteDbLayer