From 308b15ed692f03b32d1ac6550296bf43b6028747 Mon Sep 17 00:00:00 2001 From: Akulij Date: Sat, 31 May 2025 10:30:39 +0500 Subject: [PATCH] create BotInstance::restart_one and restart_all --- src/db/bots.rs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/db/bots.rs b/src/db/bots.rs index 1c4f27b..c711b77 100644 --- a/src/db/bots.rs +++ b/src/db/bots.rs @@ -17,6 +17,7 @@ pub struct BotInstance { pub name: String, pub token: String, pub script: String, + pub restart_flag: bool, pub created_at: DateTime, } @@ -31,6 +32,7 @@ impl BotInstance { name, token, script, + restart_flag: false, created_at: Local::now().into(), } } @@ -54,4 +56,23 @@ impl BotInstance { Ok(bi.find_one(doc! {"name": name}).await?) } + + pub async fn restart_one(db: &mut D, name: &str, restart: bool) -> DbResult<()> { + let bi = db.get_collection::().await; + + bi.update_one( + doc! {"name": name}, + doc! { "$set": { "restart_flag": restart } }, + ) + .await?; + Ok(()) + } + + pub async fn restart_all(db: &mut D, restart: bool) -> DbResult<()> { + let bi = db.get_collection::().await; + + bi.update_many(doc! {}, doc! { "$set": { "restart_flag": restart } }) + .await?; + Ok(()) + } }