diff options
author | Ilion Beyst <ilion.beyst@gmail.com> | 2021-12-30 11:45:59 +0100 |
---|---|---|
committer | Ilion Beyst <ilion.beyst@gmail.com> | 2021-12-30 11:45:59 +0100 |
commit | 3edf5d60f54bfd0cd2c818e5fb1ca133e324325d (patch) | |
tree | 9b8bd057e3e27c9e2488957f02ffc8de4ed4c438 /planetwars-server/src/db/bots.rs | |
parent | 71ee6c99e963d96286cae8d0bfc2f20a9c9c920b (diff) | |
download | planetwars.dev-3edf5d60f54bfd0cd2c818e5fb1ca133e324325d.tar.xz planetwars.dev-3edf5d60f54bfd0cd2c818e5fb1ca133e324325d.zip |
rename to planetwars-server
Diffstat (limited to 'planetwars-server/src/db/bots.rs')
-rw-r--r-- | planetwars-server/src/db/bots.rs | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/planetwars-server/src/db/bots.rs b/planetwars-server/src/db/bots.rs new file mode 100644 index 0000000..bc9cb11 --- /dev/null +++ b/planetwars-server/src/db/bots.rs @@ -0,0 +1,53 @@ +use diesel::prelude::*; +use serde::{Deserialize, Serialize}; + +use crate::schema::{bots, code_bundles}; +use chrono; + +#[derive(Insertable)] +#[table_name = "bots"] +pub struct NewBot<'a> { + pub owner_id: i32, + pub name: &'a str, +} + +#[derive(Queryable, Debug, PartialEq, Serialize, Deserialize)] +pub struct Bot { + pub id: i32, + pub owner_id: i32, + pub name: String, +} + +pub fn create_bot(new_bot: &NewBot, conn: &PgConnection) -> QueryResult<Bot> { + diesel::insert_into(bots::table) + .values(new_bot) + .get_result(conn) +} + +pub fn find_bot(id: i32, conn: &PgConnection) -> QueryResult<Bot> { + bots::table.find(id).first(conn) +} + +#[derive(Insertable)] +#[table_name = "code_bundles"] +pub struct NewCodeBundle<'a> { + pub bot_id: i32, + pub path: &'a str, +} + +#[derive(Queryable, Serialize, Deserialize, Debug)] +pub struct CodeBundle { + pub id: i32, + pub bot_id: i32, + pub path: String, + pub created_at: chrono::NaiveDateTime, +} + +pub fn create_code_bundle( + new_code_bundle: &NewCodeBundle, + conn: &PgConnection, +) -> QueryResult<CodeBundle> { + diesel::insert_into(code_bundles::table) + .values(new_code_bundle) + .get_result(conn) +} |