use crate::schema::{bitmagnet_processed, magnets, transmission_processed}; use chrono::NaiveDateTime; use diesel::prelude::*; #[allow(dead_code)] #[derive(Queryable, Selectable)] #[diesel(table_name = magnets)] #[diesel(check_for_backend(diesel::sqlite::Sqlite))] pub struct Magnet { pub id: Option, pub title: String, pub submitter: String, pub subreddit: String, pub link: String, pub published_at: NaiveDateTime, pub imdb_id: Option, } #[derive(Insertable)] #[diesel(table_name = magnets)] #[diesel(check_for_backend(diesel::sqlite::Sqlite))] pub struct NewMagnet<'a> { pub title: &'a str, pub submitter: &'a str, pub subreddit: &'a str, pub link: &'a str, pub published_at: &'a NaiveDateTime, pub imdb_id: Option<&'a str>, } #[allow(dead_code)] #[derive(Queryable, Selectable)] #[diesel(table_name = bitmagnet_processed)] #[diesel(check_for_backend(diesel::sqlite::Sqlite))] pub struct BitmagnetProcessed { pub id: Option, pub magnet_id: i32, pub processed_at: NaiveDateTime, } #[derive(Insertable)] #[diesel(table_name = bitmagnet_processed)] #[diesel(check_for_backend(diesel::sqlite::Sqlite))] pub struct NewBitmagnetProcessed<'a> { pub magnet_id: i32, pub processed_at: &'a NaiveDateTime, } #[allow(dead_code)] #[derive(Queryable, Selectable)] #[diesel(table_name = transmission_processed)] #[diesel(check_for_backend(diesel::sqlite::Sqlite))] pub struct TransmissionProcessed { pub id: Option, pub magnet_id: i32, pub processed_at: NaiveDateTime, } #[derive(Insertable)] #[diesel(table_name = transmission_processed)] #[diesel(check_for_backend(diesel::sqlite::Sqlite))] pub struct NewTransmissionProcessed<'a> { pub magnet_id: i32, pub processed_at: &'a NaiveDateTime, }