From fc296356c4e1b269fd55196e72791ea3fbf03b08 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Mon, 17 Oct 2022 22:33:26 +0200 Subject: Undo warning resolve --- src/warning/models.rs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/warning/models.rs') diff --git a/src/warning/models.rs b/src/warning/models.rs index c420dd0..9e79e6c 100644 --- a/src/warning/models.rs +++ b/src/warning/models.rs @@ -59,6 +59,7 @@ pub struct WarningCreate { #[derive(Deserialize)] pub struct WarningEdit { pub admin_note: String, + pub resolved_by: Option, } /// Payload used for warning filtering @@ -355,8 +356,12 @@ impl Warning { Ok(count) } - /// Edit a warning - pub async fn edit(&mut self, resolver: i32, payload: WarningEdit) -> Result<(), AppError> { + /// Edit a warning. When `resolver` is None, it means a warning is no more resolved + pub async fn edit( + &mut self, + resolver: Option, + payload: WarningEdit, + ) -> Result<(), AppError> { let pool = unsafe { get_client() }; let now = Local::now().naive_utc(); @@ -374,7 +379,7 @@ impl Warning { .await?; self.admin_note = payload.admin_note; - self.resolved_by = Some(resolver); + self.resolved_by = resolver; self.updated = now; Ok(()) -- cgit v1.2.3-71-g8e6c