Repo integration #15
No files matched your search
@@ -203,6 +203,11 @@ impl CardState {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub struct CustomField{
|
||||||
|
pub id: Id,
|
||||||
|
pub name: String,
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Copy)]
|
#[derive(Copy)]
|
||||||
pub struct EntityHandle<E> {
|
pub struct EntityHandle<E> {
|
||||||
pub(crate) id: Id,
|
pub(crate) id: Id,
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
use crate::data::entities::{CardState, DeckSettings};
|
use crate::data::entities::{CardState, DeckSettings};
|
||||||
use crate::data_provider::TableAccessQuerySet;
|
use crate::data_provider::{SqliteDbLayer, TableAccessQuerySet};
|
||||||
use crate::notification::NotificationData::{DbLoadError, DbSaveError};
|
use crate::notification::NotificationData::{DbLoadError, DbSaveError};
|
||||||
use crate::notification::{MaybeError, NotificationData};
|
use crate::notification::{MaybeError, NotificationData};
|
||||||
use chrono::NaiveDate;
|
use chrono::NaiveDate;
|
||||||
@@ -7,7 +7,9 @@ use fsrs::MemoryState;
|
|||||||
use log::info;
|
use log::info;
|
||||||
use rusqlite::{Connection, Error, Params, Row, params};
|
use rusqlite::{Connection, Error, Params, Row, params};
|
||||||
use std::time::Instant;
|
use std::time::Instant;
|
||||||
|
use crate::data::repositories::DataRepository;
|
||||||
|
|
||||||
|
type CardStateRepository = DataRepository<CardState, SqliteDbLayer<CardState, CardStatesQuerySet>>;
|
||||||
pub struct CardStatesQuerySet;
|
pub struct CardStatesQuerySet;
|
||||||
impl TableAccessQuerySet<CardState> for CardStatesQuerySet {
|
impl TableAccessQuerySet<CardState> for CardStatesQuerySet {
|
||||||
fn load() -> &'static str {
|
fn load() -> &'static str {
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
use crate::data::entities::WordGroup;
|
use crate::data::entities::{CustomField, WordGroup};
|
||||||
use crate::data_provider::TableAccessQuerySet;
|
use crate::data::repositories::DataRepository;
|
||||||
|
use crate::data_provider::{SqliteDbLayer, TableAccessQuerySet};
|
||||||
use rusqlite::{Error, Params, Row};
|
use rusqlite::{Error, Params, Row};
|
||||||
|
|
||||||
|
type CustomFieldRepository = DataRepository<CustomField, SqliteDbLayer<CustomField, CustomFieldsQuerySet>>;
|
||||||
|
|
||||||
pub struct CustomFieldsQuerySet;
|
pub struct CustomFieldsQuerySet;
|
||||||
impl TableAccessQuerySet<WordGroup> for CustomFieldsQuerySet {
|
impl TableAccessQuerySet<WordGroup> for CustomFieldsQuerySet {
|
||||||
fn load() -> &'static str {
|
fn load() -> &'static str {
|
||||||
|
|||||||
@@ -1,10 +1,14 @@
|
|||||||
use crate::core::srs::OrderMode;
|
use crate::core::srs::OrderMode;
|
||||||
use crate::data::entities::{CardState, DeckSettings};
|
use crate::data::entities::{CardState, DeckSettings};
|
||||||
use crate::data_provider::TableAccessQuerySet;
|
use crate::data_provider::{SqliteDbLayer, TableAccessQuerySet};
|
||||||
use crate::notification::NotificationData::{DbLoadError, DbSaveError};
|
use crate::notification::NotificationData::{DbLoadError, DbSaveError};
|
||||||
use crate::notification::{MaybeError, NotificationData};
|
use crate::notification::{MaybeError, NotificationData};
|
||||||
use chrono::NaiveDate;
|
use chrono::NaiveDate;
|
||||||
use rusqlite::{Connection, Error, Params, Row};
|
use rusqlite::{Connection, Error, Params, Row};
|
||||||
|
use crate::data::repositories::DataRepository;
|
||||||
|
use crate::data_provider::card_states::CardStatesQuerySet;
|
||||||
|
|
||||||
|
type DeckRepository = DataRepository<DeckSettings, SqliteDbLayer<DeckSettings, DeckQuerySet>>;
|
||||||
|
|
||||||
pub struct DeckQuerySet;
|
pub struct DeckQuerySet;
|
||||||
impl TableAccessQuerySet<DeckSettings> for DeckQuerySet {
|
impl TableAccessQuerySet<DeckSettings> for DeckQuerySet {
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
use crate::data::entities::WordGroup;
|
use crate::data::entities::{DeckSettings, WordGroup};
|
||||||
use crate::data_provider::TableAccessQuerySet;
|
use crate::data_provider::{SqliteDbLayer, TableAccessQuerySet};
|
||||||
use rusqlite::{Error, Params, Row};
|
use rusqlite::{Error, Params, Row};
|
||||||
|
use crate::data::repositories::DataRepository;
|
||||||
|
use crate::data_provider::decks::DeckQuerySet;
|
||||||
|
|
||||||
|
type WordGroupRepository = DataRepository<WordGroup, SqliteDbLayer<WordGroup, WordGroupQuerySet>>;
|
||||||
|
|
||||||
pub struct WordGroupQuerySet;
|
pub struct WordGroupQuerySet;
|
||||||
impl TableAccessQuerySet<WordGroup> for WordGroupQuerySet {
|
impl TableAccessQuerySet<WordGroup> for WordGroupQuerySet {
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
use crate::data::entities::{WordData, WordGroup};
|
use crate::data::entities::{WordData, WordGroup};
|
||||||
use crate::data_provider::TableAccessQuerySet;
|
use crate::data_provider::{SqliteDbLayer, TableAccessQuerySet};
|
||||||
use crate::notification::NotificationData::{DbLoadError, DbSaveError};
|
use crate::notification::NotificationData::{DbLoadError, DbSaveError};
|
||||||
use crate::notification::{MaybeError, NotificationData};
|
use crate::notification::{MaybeError, NotificationData};
|
||||||
use litemap::LiteMap;
|
use litemap::LiteMap;
|
||||||
use rusqlite::{Connection, Error, Params, Row, params};
|
use rusqlite::{Connection, Error, Params, Row, params};
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
use crate::data::repositories::DataRepository;
|
||||||
|
|
||||||
|
type DeckRepository = DataRepository<WordData, SqliteDbLayer<WordData, WordQuerySet>>;
|
||||||
|
|
||||||
pub struct WordQuerySet;
|
pub struct WordQuerySet;
|
||||||
impl TableAccessQuerySet<WordData> for WordQuerySet {
|
impl TableAccessQuerySet<WordData> for WordQuerySet {
|
||||||
|
|||||||
Reference in new issue
Block a user