new global models
This commit is contained in:
8
models/entity/Cargo.toml
Normal file
8
models/entity/Cargo.toml
Normal file
@ -0,0 +1,8 @@
|
||||
[package]
|
||||
name = "entity"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
[dependencies]
|
||||
chrono-tz = "^0.6"
|
||||
sea-orm = { version = "^0.8", features = ["sqlx-postgres", "runtime-tokio-native-tls", "macros"] }
|
60
models/entity/src/channel.rs
Normal file
60
models/entity/src/channel.rs
Normal file
@ -0,0 +1,60 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "channel")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key, auto_increment = false)]
|
||||
pub id: i64,
|
||||
pub guild_id: Option<i64>,
|
||||
pub nudge: i32,
|
||||
pub webhook_id: Option<i64>,
|
||||
pub webhook_token: Option<String>,
|
||||
pub paused: bool,
|
||||
pub paused_until: Option<DateTimeUtc>,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||
pub enum Relation {
|
||||
#[sea_orm(
|
||||
belongs_to = "super::guild::Entity",
|
||||
from = "Column::GuildId",
|
||||
to = "super::guild::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Guild,
|
||||
#[sea_orm(has_many = "super::user::Entity")]
|
||||
User,
|
||||
#[sea_orm(has_many = "super::reminder::Entity")]
|
||||
Reminder,
|
||||
#[sea_orm(has_many = "super::todo::Entity")]
|
||||
Todo,
|
||||
}
|
||||
|
||||
impl Related<super::guild::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Guild.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::user::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::User.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::reminder::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Reminder.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::todo::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Todo.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
34
models/entity/src/command_macro.rs
Normal file
34
models/entity/src/command_macro.rs
Normal file
@ -0,0 +1,34 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "command_macro")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key)]
|
||||
pub id: i32,
|
||||
pub guild_id: i64,
|
||||
pub name: String,
|
||||
pub description: Option<String>,
|
||||
pub commands: Option<Json>,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||
pub enum Relation {
|
||||
#[sea_orm(
|
||||
belongs_to = "super::guild::Entity",
|
||||
from = "Column::GuildId",
|
||||
to = "super::guild::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Guild,
|
||||
}
|
||||
|
||||
impl Related<super::guild::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Guild.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
48
models/entity/src/guild.rs
Normal file
48
models/entity/src/guild.rs
Normal file
@ -0,0 +1,48 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "guild")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key, auto_increment = false)]
|
||||
pub id: i64,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||
pub enum Relation {
|
||||
#[sea_orm(has_many = "super::reminder_template::Entity")]
|
||||
ReminderTemplate,
|
||||
#[sea_orm(has_many = "super::channel::Entity")]
|
||||
Channel,
|
||||
#[sea_orm(has_many = "super::todo::Entity")]
|
||||
Todo,
|
||||
#[sea_orm(has_many = "super::command_macro::Entity")]
|
||||
CommandMacro,
|
||||
}
|
||||
|
||||
impl Related<super::reminder_template::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::ReminderTemplate.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::channel::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Channel.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::todo::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Todo.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::command_macro::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::CommandMacro.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
1
models/entity/src/lib.rs
Normal file
1
models/entity/src/lib.rs
Normal file
@ -0,0 +1 @@
|
||||
|
14
models/entity/src/mod.rs
Normal file
14
models/entity/src/mod.rs
Normal file
@ -0,0 +1,14 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
pub mod prelude;
|
||||
|
||||
pub mod channel;
|
||||
pub mod command_macro;
|
||||
pub mod guild;
|
||||
pub mod reminder;
|
||||
pub mod reminder_template;
|
||||
pub mod sea_orm_active_enums;
|
||||
pub mod seaql_migrations;
|
||||
pub mod timer;
|
||||
pub mod todo;
|
||||
pub mod user;
|
8
models/entity/src/prelude.rs
Normal file
8
models/entity/src/prelude.rs
Normal file
@ -0,0 +1,8 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
pub use super::{
|
||||
channel::Entity as Channel, command_macro::Entity as CommandMacro, guild::Entity as Guild,
|
||||
reminder::Entity as Reminder, reminder_template::Entity as ReminderTemplate,
|
||||
seaql_migrations::Entity as SeaqlMigrations, timer::Entity as Timer, todo::Entity as Todo,
|
||||
user::Entity as User,
|
||||
};
|
73
models/entity/src/reminder.rs
Normal file
73
models/entity/src/reminder.rs
Normal file
@ -0,0 +1,73 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
use super::sea_orm_active_enums::Timezone;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "reminder")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key)]
|
||||
pub id: i32,
|
||||
pub uid: String,
|
||||
pub name: String,
|
||||
pub channel_id: i64,
|
||||
pub utc_time: DateTimeUtc,
|
||||
pub timezone: Timezone,
|
||||
pub interval_seconds: Option<i32>,
|
||||
pub interval_months: Option<i32>,
|
||||
pub enabled: bool,
|
||||
pub expires: Option<DateTimeUtc>,
|
||||
pub username: Option<String>,
|
||||
pub avatar: Option<String>,
|
||||
pub content: Option<String>,
|
||||
pub tts: bool,
|
||||
pub attachment: Option<Vec<u8>>,
|
||||
pub attachment_name: Option<String>,
|
||||
pub embed_title: Option<String>,
|
||||
pub embed_description: Option<String>,
|
||||
pub embed_image_url: Option<String>,
|
||||
pub embed_thumbnail_url: Option<String>,
|
||||
pub embed_footer: Option<String>,
|
||||
pub embed_footer_url: Option<String>,
|
||||
pub embed_author: Option<String>,
|
||||
pub embed_author_url: Option<String>,
|
||||
pub embed_color: Option<i32>,
|
||||
pub embed_fields: Option<Json>,
|
||||
pub set_at: DateTimeUtc,
|
||||
pub set_by: i64,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||
pub enum Relation {
|
||||
#[sea_orm(
|
||||
belongs_to = "super::channel::Entity",
|
||||
from = "Column::ChannelId",
|
||||
to = "super::channel::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Channel,
|
||||
#[sea_orm(
|
||||
belongs_to = "super::user::Entity",
|
||||
from = "Column::SetBy",
|
||||
to = "super::user::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
User,
|
||||
}
|
||||
|
||||
impl Related<super::channel::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Channel.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::user::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::User.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
48
models/entity/src/reminder_template.rs
Normal file
48
models/entity/src/reminder_template.rs
Normal file
@ -0,0 +1,48 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "reminder_template")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key)]
|
||||
pub id: i32,
|
||||
pub guild_id: i64,
|
||||
pub name: String,
|
||||
pub username: Option<String>,
|
||||
pub avatar: Option<String>,
|
||||
pub content: Option<String>,
|
||||
pub tts: bool,
|
||||
pub attachment: Option<Vec<u8>>,
|
||||
pub attachment_name: Option<String>,
|
||||
pub embed_title: Option<String>,
|
||||
pub embed_description: Option<String>,
|
||||
pub embed_image_url: Option<String>,
|
||||
pub embed_thumbnail_url: Option<String>,
|
||||
pub embed_footer: Option<String>,
|
||||
pub embed_footer_url: Option<String>,
|
||||
pub embed_author: Option<String>,
|
||||
pub embed_author_url: Option<String>,
|
||||
pub embed_color: Option<i32>,
|
||||
pub embed_fields: Option<Json>,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||
pub enum Relation {
|
||||
#[sea_orm(
|
||||
belongs_to = "super::guild::Entity",
|
||||
from = "Column::GuildId",
|
||||
to = "super::guild::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Guild,
|
||||
}
|
||||
|
||||
impl Related<super::guild::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Guild.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
1196
models/entity/src/sea_orm_active_enums.rs
Normal file
1196
models/entity/src/sea_orm_active_enums.rs
Normal file
File diff suppressed because it is too large
Load Diff
22
models/entity/src/seaql_migrations.rs
Normal file
22
models/entity/src/seaql_migrations.rs
Normal file
@ -0,0 +1,22 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "seaql_migrations")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key, auto_increment = false)]
|
||||
pub version: String,
|
||||
pub applied_at: i64,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter)]
|
||||
pub enum Relation {}
|
||||
|
||||
impl RelationTrait for Relation {
|
||||
fn def(&self) -> RelationDef {
|
||||
panic!("No RelationDef")
|
||||
}
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
36
models/entity/src/timer.rs
Normal file
36
models/entity/src/timer.rs
Normal file
@ -0,0 +1,36 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "timer")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key)]
|
||||
pub id: i32,
|
||||
pub start_time: DateTimeUtc,
|
||||
pub name: String,
|
||||
pub user_id: Option<i64>,
|
||||
pub guild_id: Option<i64>,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||
pub enum Relation {
|
||||
#[sea_orm(
|
||||
belongs_to = "super::guild::Entity",
|
||||
from = "Column::GuildId",
|
||||
to = "super::guild::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Guild2,
|
||||
#[sea_orm(
|
||||
belongs_to = "super::guild::Entity",
|
||||
from = "Column::UserId",
|
||||
to = "super::guild::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Guild1,
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
62
models/entity/src/todo.rs
Normal file
62
models/entity/src/todo.rs
Normal file
@ -0,0 +1,62 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "todo")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key)]
|
||||
pub id: i32,
|
||||
pub user_id: Option<i64>,
|
||||
pub guild_id: Option<i64>,
|
||||
pub channel_id: Option<i64>,
|
||||
pub value: String,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||
pub enum Relation {
|
||||
#[sea_orm(
|
||||
belongs_to = "super::channel::Entity",
|
||||
from = "Column::ChannelId",
|
||||
to = "super::channel::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Channel,
|
||||
#[sea_orm(
|
||||
belongs_to = "super::guild::Entity",
|
||||
from = "Column::GuildId",
|
||||
to = "super::guild::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Guild,
|
||||
#[sea_orm(
|
||||
belongs_to = "super::user::Entity",
|
||||
from = "Column::UserId",
|
||||
to = "super::user::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
User,
|
||||
}
|
||||
|
||||
impl Related<super::channel::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Channel.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::guild::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Guild.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::user::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::User.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
50
models/entity/src/user.rs
Normal file
50
models/entity/src/user.rs
Normal file
@ -0,0 +1,50 @@
|
||||
//! SeaORM Entity. Generated by sea-orm-codegen 0.8.0
|
||||
|
||||
use sea_orm::entity::prelude::*;
|
||||
|
||||
use super::sea_orm_active_enums::Timezone;
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
|
||||
#[sea_orm(table_name = "user")]
|
||||
pub struct Model {
|
||||
#[sea_orm(primary_key, auto_increment = false)]
|
||||
pub id: i64,
|
||||
pub dm_channel: i64,
|
||||
pub timezone: Timezone,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||
pub enum Relation {
|
||||
#[sea_orm(
|
||||
belongs_to = "super::channel::Entity",
|
||||
from = "Column::DmChannel",
|
||||
to = "super::channel::Column::Id",
|
||||
on_update = "NoAction",
|
||||
on_delete = "Cascade"
|
||||
)]
|
||||
Channel,
|
||||
#[sea_orm(has_many = "super::reminder::Entity")]
|
||||
Reminder,
|
||||
#[sea_orm(has_many = "super::todo::Entity")]
|
||||
Todo,
|
||||
}
|
||||
|
||||
impl Related<super::channel::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Channel.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::reminder::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Reminder.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl Related<super::todo::Entity> for Entity {
|
||||
fn to() -> RelationDef {
|
||||
Relation::Todo.def()
|
||||
}
|
||||
}
|
||||
|
||||
impl ActiveModelBehavior for ActiveModel {}
|
Reference in New Issue
Block a user