feat: delete analytics when webmaster updates publishing status

This commit is contained in:
Aravinth Manivannan
2023-06-30 03:16:43 +05:30
parent 68b59ade8c
commit 679a35216c
6 changed files with 130 additions and 2 deletions

View File

@@ -1057,6 +1057,39 @@ impl MCDatabase for Database {
.map_err(|e| map_row_not_found_err(e, DBError::CaptchaNotFound))?;
Ok(res.key)
}
async fn analytics_delete_all_records_for_campaign(
&self,
campaign_id: &str,
) -> DBResult<()> {
let _ = sqlx::query!(
"
DELETE FROM
mcaptcha_psuedo_campaign_id
WHERE config_id = (
SELECT config_id FROM mcaptcha_config WHERE key = ($1)
);",
campaign_id
)
.execute(&self.pool)
.await;
let _ = sqlx::query!(
"
DELETE FROM
mcaptcha_pow_analytics
WHERE
config_id = (
SELECT config_id FROM mcaptcha_config WHERE key = $1
)
",
campaign_id
)
.execute(&self.pool)
.await;
Ok(())
}
}
#[derive(Clone)]